
Итак, я пишу скрипт, который изменяет различные аспекты машины Ubuntu 16.04.4, и одной из задач является обновление всех пакетов. Для этого я использую apt-get -y upgrade
. ( -y
для auto yes в диалоге и предоставления автоматизации) Это отлично работает и автоматизировано почти для всех пакетов, но время от времени я получаю панель взаимодействия, изображенную ниже.
Я предполагаю, что не существует простого способа обрабатывать и отвечать на эти диалоги единообразно во всех пакетах, но есть ли способ отключить такое взаимодействие и обеспечить по-настоящему автоматизированное обновление без взаимодействия?
решение1
Вы можете сделать пару вещей, чтобы избежать этого. Присвоить
DEBIAN_FRONTEND
переменной значениеnoninteractive
и использовать-y
флаг. Например:export DEBIAN_FRONTEND=noninteractive apt-get -yq install [packagename]
Если вам нужно установить его через sudo, используйте:
sudo DEBIAN_FRONTEND=noninteractive apt-get -yq install [packagename]
(источник)