Provided by: debconf-doc_1.5.91_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 graphique moderne utilisant les bibliothèques de gtk et de  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 libgtk3-perl.

       kde    Cette interface fournit un outil graphique moderne basé sur la plateforme KDE. Vous aurez bien sûr
              besoin d'une variable DISPLAY pour utiliser cette interface et  vous  devez  installer  le  paquet
              debconf-kde-helper. L'interface se rabattra sur l'interface dialog si un des prérequis est absent.

       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)