Provided by: debconf-doc_1.5.82_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)