Вопрос: Автоматически отвечать «Да» при использовании установки apt-get


Есть ли способ сделать apt-get install ответьте «да» на «Вы хотите продолжить [y / N]?»?


284
2017-07-16 20:34


Источник




Ответы:


через apt-get man page:

apt-get -y install [packagename]

330
2017-07-16 20:36



Это то же самое, что @bclermont ответить (--yes --force-yes)? - jjxtra


Проблема с:

apt-get --yes install $something

заключается в том, что он будет запрашивать подтверждение вручную, если публичный ключ владельца подписи пакета не находится в брелках или каких-либо других условиях. чтобы убедиться, что он не запрашивает подтверждение, просто выполните это:

apt-get --yes --force-yes install $something

Если вы хотите, чтобы эти параметры были постоянными, создайте файл в /etc/apt/apt.conf.d/, например, /etc/apt/apt.conf.d/90forceyes со следующим содержимым:

APT::Get::Assume-Yes "true";
APT::Get::force-yes "true";

154
2017-07-16 22:08



+1 для разнообразия. Все -y становились скучными. (Плюс это более полный ответ.) - Dennis Williamson
+1 лучший ответ - я искал решение для принудительного да, вместо того, чтобы указывать его каждый раз - Robin Winslow
Будет ли это работать, когда будет сказано: «Продолжать тип фразы« Да, делай, как я говорю! »» Тоже? Если нет, то что тогда происходит? Я сталкиваюсь с этим при попытке заменить sysvinit на systemd в моем chrooted debian-изображении. - Lennart Rolland
Пожалуйста, никогда не используйте --force-yes: в виде этот ответ на связанный поток на debian-devel предполагает, --force-yes может сделать систему непригодной для использования. (Я не занимаюсь ничем, потому что ответ действительно решает проблему, как указано OP, но я все равно добавил бы БОЛЬШОЕ КРАСНОЕ ПРЕДУПРЕЖДЕНИЕ). - kostix
APT :: Get :: Предположим-да "true"; помогли мне избежать прерывания установки в контейнере докера. - Mehdi Sadeghi


Обратите внимание, что если вы также хотите автоматически перейти по умолчанию, когда появляется интерактивное приглашение, вы можете использовать DEBIAN_FRONTEND=noninteractive

Единая установка:

sudo DEBIAN_FRONTEND=noninteractive apt-get -y install [packagename]

Например.:

sudo DEBIAN_FRONTEND=noninteractive apt-get -y install postfix

Все обновления:

sudo DEBIAN_FRONTEND=noninteractive apt-get -y update 

Вы можете настроить более тонкие варианты с -o Dpkg::Options::="--force-confdef" а также -o Dpkg::Options::="--force-confold",

Примеры:

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

или

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

Пример интерактивной подсказки:

enter image description here

Интересное чтение: Выполните автоматическую установку пакета Debian


36
2017-07-12 18:36





APT::Get::Assume-Yes "true";

APT::Get::force-yes "true";

Это должно быть, по крайней мере, /etc/apt/apt.conf и прокомментировал. Я беспокоюсь, что Ubuntu берет ключ от Microsoft всегда запрашивать разрешение.

«Вы уверены?», Конечно, я уверен, что я не обученная обезьяна, просто набрав клавиатуру, щелкнув счастливым.

Затем дверь спросит: «Вы уверены, что хотите выйти на улицу?»
Печь спросит: «Вы уверены, что хотите приготовить?»
Автомобиль спросит: «Вы уверены, что хотите применить тормоза?»
Огнетушитель спросит: «Вы уверены, что хотите погасить огонь?»
Мне жаль, Дэйв, я не могу позволить тебе это сделать.
HAL9000 может использовать сжатие, но Data не мог или не мог.


15
2018-06-07 01:00



Это лучший ответ - Robin Winslow
Разница с запросами HAL9000 и dpkg заключается в том, что HAL сказал «нет, период», тогда как вещь «Да, делайте, как я говорю» появляется только в том случае, если вы собираетесь полностью и полностью нарушить свою систему. Если это то, что вы хотите, конечно, продолжайте. Но наличие предупреждения в этом случае представляется разумным. - Wouter Verhelst


Из apt-get HOWTO

Использовать -y переключатель: apt-get -y install packagename


8
2017-07-16 20:37





apt-get -y update
apt-get -y install [package]

7
2017-07-16 20:37



+1, но почему update требуется разрешение? - amyassin
@amyassin apt-get update команда требует прав root, поскольку она обновляет списки локальных пакетов (индексы), которые являются системными файлами, принадлежащими root. - jjmontes


обычно варианты из руководства должны хорошо работать

apt-get -y --force-yes install package

если это не удается, вы можете попытаться использовать yes команда.

yes | apt-get -y --force-yes install package

использовал это с моим сценарием настройки бранных оболочек

PS: в случае, если вы хотите неинтерактивно, но, вообще говоря, нет, вы можете попробовать это:

yes no | apt-get install package

2
2017-11-17 16:51





Новый (Что ж) apt псевдоним принимает -y (--yes) переключатель тоже:

sudo apt -y upgrade

0
2018-02-02 12:49





Если вы всегда хотите аргумент -y, я бы посоветовал добавить строку

alias apt-get='apt-get -y' #Automatic -y argument on apt-get commands

в ваш .bashrc. Это, как поясняет комментарий, автоматически добавит аргумент -y ко всем вашим командам apt-get и, следовательно, одобрит все загрузки.


ПРИМЕЧАНИЕ. Это будет оставаться верным, пока вы не вернете свой .bashrc и не перезапустите оболочку.


0
2017-07-31 15:28