Как избежать взаимодействия apt-get -y dist-upgrade с waagent?

Как избежать взаимодействия apt-get -y dist-upgrade с waagent?

У меня есть Ubuntu 12.04.5 LTS, созданный в Azure Cloud. Я создаю его из сборки Jenkins powershell, которая: 1. Создает VM в Azure 2. Выполняет несколько удаленных команд SSH (среди них apt-get dist-upgrade) 3. Создает виртуальный образ из VM

Но сборка зависает на шаге 2. На шаге 2 среди прочих команд я выполняю:

apt-get update
apt-get -q -y dist-upgrade

Цель -y - избежать интерактивных вопросов. Если я запускаю вручную из оболочкиapt-get -q -y dist-upgradeвсе работает нормально, пока дважды не зависает:

Первый интерактивный вопрос: введите описание изображения здесь

Второй интерактивный вопрос: введите описание изображения здесь

Параметр -y должен избегать этой ситуации. Как вы видите, проблемный пакет —waagent, то есть Microsoft Azure Linux Agent, и он устанавливается по умолчанию после завершения шага 1

Мой вопрос:Как мне избежать этих интерактивных вопросов?(либо ответ «Да», либо «Нет», либо отказ от обновления этого пакета или что-то еще)

решение1

Может быть, вы также можете попробовать:

DEBIAN_FRONTEND=noninteractive apt-get dist-upgrade -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" --force-yes

решение2

Похоже, что конфликты с файлами конфигурации довольно распространены в apt-get (dkpg). Я решаю проблему с помощью:

apt-get -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" dist-upgrade

Варианты означают:

  • --force-confdef: Попросите dpkg принять решение самостоятельно, когда это возможно, и выдать подсказку в противном случае...
  • --force-confold: Не изменяйте текущий файл конфигурации...

Связанный контент