Un dpkg-reconfigure non interactif ne tient pas compte de la base de réponses debconf
5 réponses
Francois Lafont
Bonjour à tous,
Sur une Debian Squeeze, je souhaite reconfigurer le paquet exim4 de
manière non interactive mais avec des réponses pré-définies par mes
soins. J'ai tenté de m'y prendre de la manière suivante.
Voilà, sur la machine « modèle », j'ai obtenu un fichier "reponses" qui
contient les réponses aux questions qui m'ont été posées au moment de la
commande dpkg-reconfigure.
Ensuite sur une nouvelle machine, j'importe le fichier "reponses" et je
fais :
Et bien effectivement la re-configuration du paquet n'est pas
interactive mais le souci c'est qu'elle ne tient absolument pas compte
de mon fichier "reponses" et manifestement tout se passe comme si le
système avait choisi les réponses par défaut (mais elles sont
différentes de mes réponses à moi).
Avez-vous une solution à ce problème ? Précisément, comment faire pour
lancer un « dpkg-reconfigure » qui soit à la fois :
1. non interactif
2. et qui utilise comme réponses celles que j'aurais préalablement
définies selon mes goûts.
On Sat, 29 Sep 2012 03:18:56 +0200, Francois Lafont :
2. et qui utilise comme réponses celles que j'aurais préalablement définies selon mes goûts.
Copier le répertoire /etc/exim de la machine correctement configurée vers la nouvelle machine peut-être ?
Damien Wyart
* Francois Lafont in fr.comp.os.linux.configuration:
Avez-vous une solution à ce problème ? Précisément, comment faire pour lancer un « dpkg-reconfigure » qui soit à la fois : 1. non interactif 2. et qui utilise comme réponses celles que j'aurais préalablement définies selon mes goûts.
Cela ne semble pas possible, debconf est un simple cache de réponses : http://bugs.debian.org/cgi-bin/bugreport.cgi?bug53207
La question a déjà été posée sur une liste Debian, mais est restée sans réponse : http://lists.debian.org/debian-user/2007/10/msg00480.html
-- DW
* Francois Lafont <francois.lafont@nospam.invalid>
in fr.comp.os.linux.configuration:
Avez-vous une solution à ce problème ? Précisément, comment faire pour
lancer un « dpkg-reconfigure » qui soit à la fois :
1. non interactif
2. et qui utilise comme réponses celles que j'aurais préalablement
définies selon mes goûts.
Cela ne semble pas possible, debconf est un simple cache de réponses :
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug53207
La question a déjà été posée sur une liste Debian, mais est restée sans
réponse : http://lists.debian.org/debian-user/2007/10/msg00480.html
* Francois Lafont in fr.comp.os.linux.configuration:
Avez-vous une solution à ce problème ? Précisément, comment faire pour lancer un « dpkg-reconfigure » qui soit à la fois : 1. non interactif 2. et qui utilise comme réponses celles que j'aurais préalablement définies selon mes goûts.
Cela ne semble pas possible, debconf est un simple cache de réponses : http://bugs.debian.org/cgi-bin/bugreport.cgi?bug53207
La question a déjà été posée sur une liste Debian, mais est restée sans réponse : http://lists.debian.org/debian-user/2007/10/msg00480.html
-- DW
Francois Lafont
Le 29/09/2012 05:40, Fabien LE LEZ a écrit :
Copier le répertoire /etc/exim de la machine correctement configurée vers la nouvelle machine peut-être ?
Ça fonctionnerait sans doute, mais j'aimerais bien passer par la méthode du « debconf-get-selections / debconf-set-selections » que je trouve très pratique, d'autant plus que dans le cas d'une *installation* de paquet, ça marche parfaitement. Par exemple avec le paquet libpam-ldap qui n'est pas installé par défaut sur une Squeeze, sur la machine modèle, je fais :
---------------------------------------------- apt-get install libpam-ldap # Je réponds aux questions selon mes goûts. apt-get install debconf-utils debconf-get-selections | grep '^libpam-ldap' > reponses ----------------------------------------------
Ça marche impeccable, j'ai mon paquet libpam-ldap installé et configuré selon mes goûts sans la moindre interactivité ! C'est frustrant que ça ne fonctionne pas avec dpkg-reconfigure. A priori, rien d'intéressant dans les options de dpkg-reconfigure.
Ou alors pour se ramener à cette situation, est-il possible de faire en sorte de désinstaller le paquet exim4-config et uniquement celui-là puis de le résinstaller ?
J'avais tenté un « dpkg --remove exim4-config » mais à cause des dépendances je me fais jeter. Et si je passe par « apt-get remove/install exim4-config », la suppression puis la réinstallation du paquet exim4-config fait que je perd des paquets en cours de route et devoir gérer les dépendances ça m'embête un peu (l'idée étant de garder une méthode la plus simple possible).
-- François Lafont
Le 29/09/2012 05:40, Fabien LE LEZ a écrit :
Copier le répertoire /etc/exim de la machine correctement configurée
vers la nouvelle machine peut-être ?
Ça fonctionnerait sans doute, mais j'aimerais bien passer par la méthode
du « debconf-get-selections / debconf-set-selections » que je trouve
très pratique, d'autant plus que dans le cas d'une *installation* de
paquet, ça marche parfaitement. Par exemple avec le paquet libpam-ldap
qui n'est pas installé par défaut sur une Squeeze, sur la machine
modèle, je fais :
----------------------------------------------
apt-get install libpam-ldap
# Je réponds aux questions selon mes goûts.
apt-get install debconf-utils
debconf-get-selections | grep '^libpam-ldap' > reponses
----------------------------------------------
Ça marche impeccable, j'ai mon paquet libpam-ldap installé et configuré
selon mes goûts sans la moindre interactivité ! C'est frustrant que ça
ne fonctionne pas avec dpkg-reconfigure. A priori, rien d'intéressant
dans les options de dpkg-reconfigure.
Ou alors pour se ramener à cette situation, est-il possible de faire en
sorte de désinstaller le paquet exim4-config et uniquement celui-là puis
de le résinstaller ?
J'avais tenté un « dpkg --remove exim4-config » mais à cause des
dépendances je me fais jeter. Et si je passe par « apt-get
remove/install exim4-config », la suppression puis la réinstallation du
paquet exim4-config fait que je perd des paquets en cours de route et
devoir gérer les dépendances ça m'embête un peu (l'idée étant de garder
une méthode la plus simple possible).
Copier le répertoire /etc/exim de la machine correctement configurée vers la nouvelle machine peut-être ?
Ça fonctionnerait sans doute, mais j'aimerais bien passer par la méthode du « debconf-get-selections / debconf-set-selections » que je trouve très pratique, d'autant plus que dans le cas d'une *installation* de paquet, ça marche parfaitement. Par exemple avec le paquet libpam-ldap qui n'est pas installé par défaut sur une Squeeze, sur la machine modèle, je fais :
---------------------------------------------- apt-get install libpam-ldap # Je réponds aux questions selon mes goûts. apt-get install debconf-utils debconf-get-selections | grep '^libpam-ldap' > reponses ----------------------------------------------
Ça marche impeccable, j'ai mon paquet libpam-ldap installé et configuré selon mes goûts sans la moindre interactivité ! C'est frustrant que ça ne fonctionne pas avec dpkg-reconfigure. A priori, rien d'intéressant dans les options de dpkg-reconfigure.
Ou alors pour se ramener à cette situation, est-il possible de faire en sorte de désinstaller le paquet exim4-config et uniquement celui-là puis de le résinstaller ?
J'avais tenté un « dpkg --remove exim4-config » mais à cause des dépendances je me fais jeter. Et si je passe par « apt-get remove/install exim4-config », la suppression puis la réinstallation du paquet exim4-config fait que je perd des paquets en cours de route et devoir gérer les dépendances ça m'embête un peu (l'idée étant de garder une méthode la plus simple possible).
-- François Lafont
Francois Lafont
Le 29/09/2012 11:32, Damien Wyart a écrit :
Cela ne semble pas possible, debconf est un simple cache de réponses : http://bugs.debian.org/cgi-bin/bugreport.cgi?bug53207
Ok, c'est bien dommage. En tout cas, même si c'est un simple cache, apt-get (et sans doute dpkg du coup), lui, en tient compte. Du coup, si ce n'est pas possible, j'en reviens à mon idée de désinstaller le paquet exim4-config et seulement lui, puis de le réinstaller (seulement lui à nouveau). Mais comment fait-on cela ?
La question a déjà été posée sur une liste Debian, mais est restée sans réponse : http://lists.debian.org/debian-user/2007/10/msg00480.html
Avant de poster, j'ai vu ce fil, effectivement hélas sans réponse. D'ailleurs, c'est toujours un peu frustrant de tomber sur un fil come ça alors qu'on s'aperçoit qu'il coïncide très exactement à son problème. :-)
-- François Lafont
Le 29/09/2012 11:32, Damien Wyart a écrit :
Cela ne semble pas possible, debconf est un simple cache de réponses :
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug53207
Ok, c'est bien dommage. En tout cas, même si c'est un simple cache,
apt-get (et sans doute dpkg du coup), lui, en tient compte. Du coup, si
ce n'est pas possible, j'en reviens à mon idée de désinstaller le paquet
exim4-config et seulement lui, puis de le réinstaller (seulement lui à
nouveau). Mais comment fait-on cela ?
La question a déjà été posée sur une liste Debian, mais est restée sans
réponse : http://lists.debian.org/debian-user/2007/10/msg00480.html
Avant de poster, j'ai vu ce fil, effectivement hélas sans réponse.
D'ailleurs, c'est toujours un peu frustrant de tomber sur un fil come ça
alors qu'on s'aperçoit qu'il coïncide très exactement à son problème. :-)
Cela ne semble pas possible, debconf est un simple cache de réponses : http://bugs.debian.org/cgi-bin/bugreport.cgi?bug53207
Ok, c'est bien dommage. En tout cas, même si c'est un simple cache, apt-get (et sans doute dpkg du coup), lui, en tient compte. Du coup, si ce n'est pas possible, j'en reviens à mon idée de désinstaller le paquet exim4-config et seulement lui, puis de le réinstaller (seulement lui à nouveau). Mais comment fait-on cela ?
La question a déjà été posée sur une liste Debian, mais est restée sans réponse : http://lists.debian.org/debian-user/2007/10/msg00480.html
Avant de poster, j'ai vu ce fil, effectivement hélas sans réponse. D'ailleurs, c'est toujours un peu frustrant de tomber sur un fil come ça alors qu'on s'aperçoit qu'il coïncide très exactement à son problème. :-)
-- François Lafont
Damien Wyart
* Francois Lafont in fr.comp.os.linux.configuration:
j'en reviens à mon idée de désinstaller le paquet exim4-config et seulement lui, puis de le réinstaller (seulement lui à nouveau). Mais comment fait-on cela ?
apt-get --reinstall install exim4-config
mais je ne sais pas si ça va faire ce qu'il faut au niveau des fichiers de configuration...
Sinon dpkg -r --force-depends exim4-config (lire éventuellement le man de dpkg pour voir tous les types de --force-things qui existent)
-- DW
* Francois Lafont <francois.lafont@nospam.invalid>
in fr.comp.os.linux.configuration:
j'en reviens à mon idée de désinstaller le paquet exim4-config et
seulement lui, puis de le réinstaller (seulement lui à nouveau). Mais
comment fait-on cela ?
apt-get --reinstall install exim4-config
mais je ne sais pas si ça va faire ce qu'il faut au niveau des fichiers
de configuration...
Sinon dpkg -r --force-depends exim4-config
(lire éventuellement le man de dpkg pour voir tous les types
de --force-things qui existent)
* Francois Lafont in fr.comp.os.linux.configuration:
j'en reviens à mon idée de désinstaller le paquet exim4-config et seulement lui, puis de le réinstaller (seulement lui à nouveau). Mais comment fait-on cela ?
apt-get --reinstall install exim4-config
mais je ne sais pas si ça va faire ce qu'il faut au niveau des fichiers de configuration...
Sinon dpkg -r --force-depends exim4-config (lire éventuellement le man de dpkg pour voir tous les types de --force-things qui existent)