Provided by: debconf-doc_1.5.42ubuntu1_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)