Conserver automatiquement la version actuelle des fichiers de configuration lors de l'installation d'apt-get

14

J'ai besoin d'installer automatiquement un package avec son fichier de configuration déjà présent sur le serveur.

Je cherche quelque chose comme:

apt-get install --yes --force-yes --keep-current-confs mysql-server

Probablement une question stupide mais je ne trouve pas une telle option.

Falken
la source

Réponses:

29

Trouvé la réponse sur le blog de Raphael Hertzog :

apt-get install -o Dpkg::Options::="--force-confold" --force-yes -y mysql-server

C'est le rôle de dpkg de configurer, donc de choisir le fichier conf à conserver.

Falken
la source
13

Sur les systèmes Ubuntu actuels, vous avez besoin d'un peu plus:

export DEBIAN_FRONTEND=noninteractive ; apt-get dist-upgrade -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" --force-yes
edlerd
la source
Question idiote: pourquoi spécifiez-vous deux options apparemment mutuellement exclusives en même temps? confdef vs confold ? Si cela fonctionne vraiment, ce n'est sûrement qu'une question d'ordre d'évaluation? Non pas que je l'ai essayé ...
tink
1
"--force-confold: ne modifiez pas le fichier de configuration actuel, la nouvelle version est installée avec le suffixe .dpkg-dist. Avec cette seule option, même les fichiers de configuration que vous n'avez pas modifiés ne sont pas modifiés. Vous devez le combiner avec --force-confdef pour permettre à dpkg d'écraser les fichiers de configuration que vous n'avez pas modifiés. "
Craig Francis
1
--force-yesdoit être utilisé en dernier recours car il a la possibilité de casser votre système! Veuillez visiter cette page de mange pour plus de détails sur l'utilisation des commutateurs --allow .
Steven K7FAQ