Provided by: debconf-doc_1.5.51ubuntu2_all bug

NOM

       debconf - système de configuration des paquets Debian

DESCRIPTION

       Debconf est un système de configuration pour les paquets Debian. Il existe une commande rarement utilisée
       nommée debconf, documentée dans debconf(1)

       Debconf  fournit  une  interface  cohérente pour la configuration des paquets et donne à l'utilisateur le
       choix entre plusieurs interfaces. Il peut configurer des paquets avant qu'ils ne soient installés, ce qui
       permet à des installations et des  mises  à  niveau  importantes  de  demander  toutes  les  informations
       nécessaires  au  préalable,  et  de  vous  laisser  faire  ce  que  vous  voulez  pendant que les paquets
       s'installent. Debconf vous permet, si vous êtes pressé, de sauter les questions les moins importantes  au
       moment de l'installation d'un paquet (en y revenant plus tard).

Préconfiguration des paquets

       Debconf  peut  configurer  les  paquets  avant  même qu'ils ne soient installés sur votre système. Ainsi,
       toutes les questions des paquets vous seront posées  au  début  de  l'installation  ce  qui  permettra  à
       l'installation de continuer pendant que vous êtes en train de prendre un café.

       Si  vous  utilisez  apt  (version  0.5  ou supérieure) et que vous avez installé apt-utils, chaque paquet
       installé par apt sera automatiquement préconfiguré. Ceci est contrôlé via /etc/apt/apt.conf.d/70debconf

       Quelquefois vous voudrez préconfigurer un paquet vous-même, quand vous l'installez sans apt. Vous  pouvez
       utiliser  dpkg-preconfigure(8)  pour  ce  faire.  Donnez-lui  seulement  le nom du paquet que vous voulez
       préconfigurer. Vous aurez besoin d'installer apt-utils pour que cela fonctionne.

Reconfiguration des paquets

       Supposons que vous ayez installé un paquet et que vous  ayez  répondu  aux  questions  de  debconf,  mais
       maintenant  que  vous  l'utilisez  de  temps  en  temps,  vous  réalisiez  que  vous  voulez  revenir sur
       quelques-unes de vos réponses et les changer. Autrefois, il fallait faire une réinstallation  quand  vous
       étiez  dans  cette situation ; mais quand vous réinstallez le paquet, debconf semble se souvenir que vous
       avez déjà répondu aux questions et ne vous les pose pas à nouveau (c'est voulu).

       Heureusement, debconf facilite la reconfiguration des paquets qui l'utilisent. Supposez que  vous  voulez
       reconfigurer debconf lui-même. Exécutez simplement, en tant que superutilisateur :
         dpkg-reconfigure debconf

       Il  vous  posera  toutes les questions que vous avez vues lors de la première installation de debconf. Il
       peut aussi vous poser d'autres questions, puisqu'il vous pose même les questions de  priorité  basse  qui
       ont pu être sautées quand le paquet a été installé. Vous pouvez aussi bien l'utiliser avec n'importe quel
       autre paquet utilisant debconf.

Interfaces

       Une  fonctionnalité remarquable de debconf est qu'il possède plusieurs interfaces et l'on peut en changer
       à loisir. Voici les interfaces disponibles :

       dialog Interface par défaut : elle utilise les programmes whiptail(1)  ou  dialog(1)  pour  afficher  les
              questions. Elle fonctionne en mode texte.

       readline
              C'est l'interface la plus traditionnelle. Elle ressemble à la configuration Debian classique : une
              série  de  questions,  imprimées  sur  la  console  en mode texte et des invites affichées avec la
              bibliothèque  readline.  Elle  reconnaît  même   le   complètement   avec   « tab ».   Le   paquet
              libterm-readline-gnu-perl est fortement recommandé si vous choisissez d'utiliser cette interface ;
              le  module readline par défaut ne gère pas les invites de saisie avec des valeurs par défaut. Pour
              utiliser cette interface, vous aurez besoin d'installer le paquet perl-modules.

              Cette interface a quelques commandes spéciales. « Page préc. » (ou ctrl-u) reviendra à la question
              précédente (si cela est géré par le paquet  utilisant  debconf)  et  « Page  suiv. »  (ou  ctrl-v)
              passera à la question suivante.

              C'est  la  meilleure  interface  pour les administrateurs à distance travaillant par une connexion
              lente, ou pour ceux qui sont à l'aise avec Unix.

       noninteractive
              C'est l'anti-interface. Elle n'interagit jamais avec vous et utilise les réponses par défaut  pour
              toutes  les  questions.  Elle  enverra  parfois un courriel à root avec les messages que le paquet
              voulait afficher, mais c'est tout ! À part  ça,  elle  est  silencieuse  et  discrète,  c'est  une
              interface  parfaite  pour  des  installations automatiques. Si vous utilisez cette interface et si
              vous voulez que les réponses aux questions ne soient pas celles par défaut, vous aurez  besoin  de
              renseigner  d'abord  la  base  de  données de debconf ; pour plus de détails, consultez la section
              ci-dessous sur l'installation de paquets sans surveillance.

       gnome  C'est une interface homme-machine X moderne utilisant les bibliothèques gtk et  gnome.  Bien  sûr,
              elle  nécessite  une  variable DISPLAY valable pour fonctionner ; si elle ne peut pas fonctionner,
              debconf se rabattra sur d'autres interfaces. Remarquez que cette interface nécessite que vous ayez
              installé le paquet libgnome2-perl.

       kde    L'interface homme-machine fournie est simple et écrite avec la  bibliothèque  Qt.  Elle  ressemble
              beaucoup  à l'environnement de bureau KDE. Vous aurez bien sûr besoin que la variable DISPLAY soit
              définie et que le paquet libqt-perl soit installé pour pouvoir utiliser cette interface. Notez que
              si tous les pré-requis ne sont pas présents, l'interface redeviendra dialog.

       editor C'est pour ces fanatiques qui veulent tout faire à l'aide d'un éditeur de texte. Elle lance  votre
              éditeur  sur  un  fichier  qui  ressemble  à un fichier de configuration Unix, et vous modifiez le
              fichier qui sert à communiquer avec debconf. L'auteur de debconf  préfère  ne  pas  commenter  les
              circonstances qui ont conduit à l'écriture de cette interface.

       web
              Cette  interface  agit  comme un serveur web auquel vous vous connectez avec votre navigateur web,
              pour parcourir les questions et y répondre. Elle est très prometteuse, mais un peu  rugueuse  pour
              l'instant.  Quand  cette  interface se met en route, elle indiquera le lieu où vous devrez pointer
              votre navigateur web. Pour des raisons de sécurité, vous devez exécuter votre navigateur  web  sur
              la machine que vous configurez.

              Gardez à l'esprit que ce n'est pas une interface sécurisée. Tous ceux qui ont accès à l'ordinateur
              en  cours  de  configuration  peuvent  aussi accéder au serveur web et configurer certaines choses
              alors que cette interface tourne. C'est plus une preuve de concept qu'autre chose.

       Vous pouvez changer l'interface par défaut qu'utilise debconf en le reconfigurant. D'un  autre  côté,  si
       vous   voulez   juste   changer  l'interface  pour  un  instant,  vous  pouvez  positionner  la  variable
       d'environnement DEBIAN_FRONTEND avec le nom de l'interface à utiliser. Par exemple :
         DEBIAN_FRONTEND=readline apt-get install slrn

       Les commandes dpkg-reconfigure(8) et dpkg-preconfigure(8) permettent aussi de leur passer --frontend=  en
       paramètre, suivi de l'interface que vous voulez qu'elles utilisent.

       Notez  que  toutes  les  interfaces  ne  fonctionneront  pas en toute circonstance. Si le démarrage d'une
       interface échoue pour quelque raison que ce soit, debconf affichera un message expliquant pourquoi et  se
       rabattra sur l'interface la plus proche.

Priorités

       Pouvoir donner des priorités aux questions que vous pose debconf est une fonctionnalité agréable. Si vous
       ne voulez pas être ennuyé par les questions sans importance, vous pouvez configurer debconf pour qu'il ne
       vous  pose  que  les  questions les plus importantes. D'un autre côté, si vous aimez tout contrôler, vous
       pouvez lui faire afficher toutes les questions. Chaque question  a  une  priorité.  Par  ordre  croissant
       d'importance :

       low    Questions peu importantes dont les valeurs par défaut suffisent dans la majorité des cas.

       medium Questions normales avec des valeurs par défaut raisonnables.

       high   Questions qui n'ont pas de valeurs par défaut convenables.

       critical
              Questions que vous avez vraiment besoin de voir (ou autre).

       Seules  les  questions  avec  une priorité supérieure ou égale à la priorité que vous avez choisie seront
       affichées. Vous pouvez fixer la valeur de la priorité en  reconfigurant  debconf,  ou  temporairement  en
       passant   l'option   --priority=  suivie  de  la  valeur  voulue  aux  commandes  dpkg-reconfigure(8)  et
       dpkg-preconfigure(8), ou en positionnant la variable d'environnement DEBIAN_PRIORITY.

Base de données principale

       Debconf utilise une base de données sous-jacente  plutôt  flexible  et  potentiellement  compliquée  pour
       sauvegarder  les  réponses  déjà  données  aux  questions.  Le fichier /etc/debconf.conf est utilisé pour
       configurer cette base de données. Si vous avez besoin de configurer quelque  chose  de  compliqué,  comme
       utiliser  une  base  de  données distante pour obtenir les valeurs par défaut, annulées par des variables
       locales, lisez la page de manuel debconf.conf(5) pour tous les détails croustillants. La base de  données
       principale se trouve généralement dans /var/cache/debconf/.

Installation des paquets sans surveillance

       Si  vous  avez  beaucoup de machines à gérer, vous aurez sûrement besoin de faire une installation ou une
       mise à niveau sans surveillance, alors que les réponses par défaut à certaines questions de configuration
       ne sont pas acceptables. Il y a beaucoup de manières pour faire cela ; toutes impliquent la configuration
       d'une base de données que debconf utilisera pour obtenir les réponses par défaut que vous voulez.

       Avant de lire cette section,  vous  devriez  vraiment  lire  debconf.conf(5)  car  vous  avez  besoin  de
       comprendre le fonctionnement de la base de données de debconf.

       Le  plus  simple  pour  configurer  la  base de données est d'installer les paquets sur une machine et de
       répondre aux questions. Vous pouvez aussi utiliser dpkg-preconfigure(8) pour configurer  un  ensemble  de
       paquets sans réellement les installer. Vous pouvez même décider d'écrire une base de données debconf à la
       main, comme un simple texte...

       Une  fois  que  vous  avez  la  base  de  données, vous devez trouver comment faire pour que les systèmes
       distants l'utilisent. Cela dépend bien sûr de la configuration de ces systèmes et de la base  de  données
       qu'ils doivent utiliser.

       Si  vous  utilisez  la  base  de données LDAP de debconf, un seul serveur LDAP peut répondre à toutes les
       questions d'installation des paquets d'un réseau complet de machines Debian.

       Mais peut-être utilisez-vous quelque chose d'un peu plus facile à configurer, comme par exemple, la  base
       de données de configuration de debconf par défaut, ou ne voulez-vous tout simplement pas que vos systèmes
       distants  utilisent  LDAP  continuellement.  Dans  ce  cas,  la  meilleure  approche  est  de  configurer
       temporairement les systèmes distants pour qu'ils ajoutent votre base de données sous leurs propres bases,
       de manière à ce qu'ils obtiennent les valeurs par  défaut  de  celle-ci.  Debconf  offre  deux  variables
       d'environnement, DEBCONF_DB_FALLBACK et DEBCONF_DB_OVERRIDE, pour le faire à la volée et simplement. Ici,
       un exemple d'utilisation :

          cat /var/cache/debconf/config.dat | \
          ssh root@cible "DEBIAN_FRONTEND=noninteractive \
                         DEBCONF_DB_FALLBACK=Pipe apt-get upgrade"

       Cela  fait que debconf sur l'hôte distant lit les données passées dans le tube à travers la connexion SSH
       et les interprète comme une base de données debconf en mode texte. Il n'utilise  cette  base  de  données
       qu'en  dernier  lieu  --  c'est une base de données en lecture seule, où l'on cherche les réponses que la
       base principale du système ne peut fournir.

       Une autre manière d'utiliser la variable d'environnement DEBCONF_DB_FALLBACK :

         ssh -R 389:ldap:389 root@cible \
              "DEBCONF_DB_FALLBACK='LDAP{host:localhost}' apt-get upgrade"

       ssh est utilisé ici pour configurer une connexion LDAP dans un tunnel et lancer  debconf.  On  indique  à
       debconf  d'utiliser  le  serveur  LDAP  comme  base  de  données  de  secours. Remarquez l'utilisation de
       « {host:localhost} » pour configurer l'accès de debconf à la base de données LDAP  fournissant  le  champ
       « host » avec la valeur « localhost ».

       Encore une autre méthode :

         scp config.dat root@cible:
         ssh root@cible "DEBCONF_DB_FALLBACK='File{/root/config.dat}' apt-get upgrade

       Ici,  vous  copiez  la  base  de données avec scp, puis ssh, et vous faites utiliser à debconf la base de
       données que vous avez copiée. Cela illustre un raccourci que vous pouvez utiliser dans les paramètres  de
       DEBCONF_DB_FALLBACK -- si le nom n'est pas indiqué, celui par défaut est « filename ».

       Il  y  a  un  problème  avec  l'utilisation  des paramètres de DEBCONF_DB_FALLBACK : alors que la base de
       données de secours peut fournir des réponses à des questions que les  autres  bases  de  données  debconf
       n'ont jamais vues, on ne l'interroge qu'en dernier lieu : après les autres bases de données. Si vous avez
       besoin  d'annuler temporairement une valeur existante sur l'hôte distant, vous devriez plutôt utiliser la
       variable DEBCONF_DB_OVERRIDE. Comme DEBCONF_DB_FALLBACK, elle configure une base de  données  temporaire,
       mais  cette  base  de  données  est  consultée  avant les autres et peut être utilisée pour remplacer les
       valeurs existantes.

Développer pour debconf

       Les développeurs de paquet et ceux qui veulent développer des paquets  qui  utilisent  debconf  devraient
       lire debconf-devel(7).

       Brièvement,  debconf  communique avec des scripts de maintenance ou d'autres programmes via les entrée et
       sortie standard, en utilisant un langage orienté ligne de commandes semblable à ce qui  est  utilisé  par
       les  protocoles  usuels  de  l'internet comme SMTP. Les programmes utilisent ce protocole pour demander à
       debconf d'afficher les questions et de récupérer les réponses de l'utilisateur. Les questions elles-mêmes
       sont définies dans des fichiers séparés, appelés  « questionnaires »,  dont  le  format  n'est  pas  très
       différent de celui d'un fichier de contrôle de Debian.

       Les  paquets  Debian  qui  utilisent  debconf  fournissent  généralement un questionnaire et un script de
       « configuration » (exécuté pour préconfigurer le paquet) dans la partie métadonnées du paquet.

ENVIRONNEMENT

       DEBIAN_FRONTEND
              Utilisée pour changer temporairement l'interface debconf utilisée. Voir plus haut.

       DEBIAN_PRIORITY
              Utilisée pour changer temporairement la priorité que les questions doivent avoir (au minimum) pour
              être affichées par debconf. Voir plus haut.

       DEBCONF_DEBUG
              Active l'affichage du débogage sur la sortie standard d'erreur. Elle peut être fixée  par  le  nom
              d'un  mécanisme  ou  par  une  expression  rationnelle qui correspond au nom d'un mécanisme (comme
              « .* » pour afficher toutes les informations de débogage). Les noms de mécanisme incluent :

              user   Informations de débogage intéressantes pour un utilisateur de debconf.

              developer
                     Informations de débogage intéressantes pour un développeur de paquet.

              db     Informations de débogage concernant la base de données sous-jacente.

       DEBCONF_NOWARNINGS
              Positionnez-la à « yes » pour désactiver certains avertissements que  debconf  pourrait  afficher.
              Elle ne supprime pas l'affichage des erreurs fatales.

       DEBCONF_TERSE
              Positionnez-la à « yes » pour activer le mode concis dans lequel les interfaces debconf suppriment
              autant que possible le bavardage.

       DEBCONF_DB_FALLBACK
              Ajouter  une base de données en plus de celles utilisées habituellement, elle est donc utilisée en
              secours pour obtenir les informations de configuration. Voir la section « Installation des paquets
              sans surveillance » plus haut. Si la valeur de la variable  est  le  nom  d'une  base  de  données
              existante  dans  debconf.conf,  la  base  de  données  sera alors utilisée. Néanmoins, la variable
              d'environnement peut être utilisée pour configurer une base de données à la volée, en  donnant  le
              type  de  la  base  de  données et des paramètres optionnels (champ:valeur) après le type et entre
              accolades. Les espaces sont utilisées pour séparer les champs, vous ne pourrez donc pas  spécifier
              de valeur de champ contenant des espaces.

       La ligne suivante demande l'utilisation de fallbackdb dans debconf.conf :
         DEBCONF_DB_FALLBACK=fallbackdb

       Alors  que  cette ligne configure une nouvelle base de données de type fichier, donne un nom de fichier à
       utiliser et désactive toute sauvegarde :
         DEBCONF_DB_FALLBACK=File{Filename:/root/config.dat Backup:no}

       En résumé, cette ligne configure une base de données de type Fichier avec un nom de fichier :
         DEBCONF_DB_FALLBACK=File{/root/config.dat}

       Remarquez que si la base de données de secours est configurée à la volée, elle sera utilisable en lecture
       seule par défaut.

       DEBCONF_DB_OVERRIDE
              Ajouter une base de données avant celles utilisées  normalement,  elle  peut  donc  remplacer  les
              valeurs   des  autres.  La  valeur  de  la  variable  fonctionne  de  la  même  manière  que  pour
              DEBCONF_DB_FALLBACK.

       DEBCONF_DB_REPLACE
              Utiliser une base de données particulière au lieu des bases de données utilisées normalement. Cela
              peut être utile pour des tests avec une base de données séparée sans  avoir  à  créer  de  fichier
              debconf.conf séparé, ou pour éviter de verrouiller les bases de données normales.

       DEBCONF_SYSTEMRC
              Si  cette  variable  d'environnement  est  définie,  debconf  ignorera  le fichier ~/.debconfrc de
              l'utilisateur et utilisera à la place le fichier de configuration du système.

       DEBCONF_FORCE_DIALOG
              Si cette variable d'environnement est définie, debconf utilisera de préférence dialog  à  whiptail
              pour l'interface dialog.

       DEBCONF_FORCE_XDIALOG
              Si  cette variable d'environnement est définie, debconf utilisera de préférence Xdialog à whiptail
              pour l'interface dialog.

       DEBCONF_NONINTERACTIVE_SEEN
              Positionné à  "true",  cela  positionne  le  drapeau  « seen »  pour  les  questions  posées  dans
              l'interface non interactive.

BOGUES

       Probablement beaucoup, il y a beaucoup de code ici.

       Si vous présentez un rapport de bogue, assurez-vous d'inclure les informations suivantes :

       *      l'interface debconf que vous utilisiez lorsque le problème est survenu ;

       *      ce que vous avez fait pour déclencher le problème ;

       *      le  texte  complet  des  messages  d'erreur.  Si  vous  pouvez reproduire le bogue, faites-le avec
              DEBCONF_DEBUG='.*' définie et exportée. Cela accélère beaucoup le débogage.

VOIR AUSSI

       debconf.conf(5), debconf-devel(7), dpkg-preconfigure(8), dpkg-reconfigure(8), debconf(1),

AUTEUR

       Joey Hess <joeyh@debian.org>

TRADUCTION

       Julien Louis <ptitlouis@sysif.net>, 2005
       Cyril Brulebois <kibi@debian.org>, 2006

       Veuillez signaler toute erreur de traduction en écrivant à <debian-l10n-french@lists.debian.org>  ou  par
       un rapport de bogue sur le paquet debconf.

                                                                                                      DEBCONF(7)