Как заставить apt-get принять новые файлы конфигурации в автоматической установке debian из Repo

Я пишу сценарий для автоматической установки пакета, который находится в нашем репо, это программный пакет с одним из отмеченных конфигурационных файлов Debian. Есть ли какой-либо параметр, который я могу передать apt-get / aptitude чтобы он принимал новые файлы конфигурации?

В принципе мне нужен эквивалент apt / aptitude dpkg --force-confnew

Мне нужно ответить на следующий заданный вопрос, пока apt-get устанавливает с помощью Y


Конфигурационный файл `/ opt / application / conf / XXX.conf` '

 ==> File on system created by you or by a script. ==> File also in package provided by package maintainer. What would you like to do about it ? Your options are: Y or I : install the package maintainer's version N or O : keep your currently-installed version D : show the differences between the versions Z : background this process to examine the The default action is to keep your current version. 

Дополнительная информация:

Кроме того, я передаю пароль sudo в трубе для выполнения команды

 echo "mysudopass"|sudo -S apt-get mypackage 

Это указывает на ошибку при установке, когда установка находится в интерактивной фазе конфигурации.

Я на Ubuntu 10.04
apt версия: apt 0.7.25.3

Почему я не могу использовать dpkg : эти Debians должны быть установлены из Repo, и у меня нет локальных Debians на моей машине

Вы можете передать параметры dpkg в apt-get как это

 apt-get -y -o Dpkg::Options::=--force-confdef -o Dpkg::Options::=--force-confnew install pkgname1 pkgname2 ... 

Если --force-confdef если старые файлы конфигурации все еще существуют, они не будут переопределены. Поэтому вы, вероятно, не будете использовать его, я просто документирую его для других.

sudo не будет запрашивать пароль, если вы отклоните параметр аутентификации для пользователя или добавите тег NOPASSWD в конкретную запись. например

 someuser ALL = NOPASSWD: /usr/bin/apt-get 

Вы можете попробовать следующее:

 export DEBIAN_FRONTEND=noninteractive apt-get -q -y install whatever-2 

Но учтите, что это имеет последствия, такие как пустые пароли по умолчанию (может быть, вам понадобится инструмент для развертывания / настройки, такой как кукольный, повар, ткань …?).

См. Sudoers (5) о том, как разрешить вызовы sudo пароля.