2010-07-16 20:34:00 +0000 2010-07-16 20:34:00 +0000
382
382
Advertisement

Автоматический ответ "Да" при использовании apt-get install

Advertisement

Есть ли способ заставить apt-get install ответить “Да” на “Хотите продолжить [y/N]?”?

Advertisement

Ответы (11)

471
471
471
2010-07-16 20:36:15 +0000

через apt-get man page :

apt-get -y install [packagename]
182
182
182
2010-07-16 22:08:11 +0000

Проблема с:

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";
53
Advertisement
53
53
2015-07-12 18:36:26 +0000

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

Однократную установку:

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

, например. Все обновления:

sudo DEBIAN_FRONTEND=noninteractive apt-get -y install postfix

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

  • *

Вы можете настроить более точные опции с -o Dpkg::Options::="--force-confdef" и -o Dpkg::Options::="--force-confold".

Примеры:

или

  • *

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

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

14
14
14
2011-06-07 01:00:02 +0000
APT::Get::Assume-Yes "true";

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

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

“Вы уверены?”, конечно, я уверен, я не обученный обезьяна просто печатая на клавиатуре, иду щелкните счастливым.

Рядом с дверью спросит: “Вы уверены, что вы хотите выйти на улицу? ”

Печь спросит: “Вы уверены, что хотите готовить?” Автомобиль спросит: “Вы уверены, что хотите тормозить?” Огнетушитель спросит: “Вы уверены, что хотите потушить огонь?” Извините, Дэйв, я не могу позволить вам это сделать. HAL9000 может использовать сокращения, но данные не могут, или не могут.

9
Advertisement
9
9
2010-07-16 20:37:15 +0000

Из apt-get HOWTO

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

7
7
7
2010-07-16 20:37:01 +0000
apt-get -y update
apt-get -y install [package]
4
Advertisement
4
4
2014-11-17 16:51:42 +0000

В общем, опции из руководства должны хорошо работать

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

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

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

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

&00001

1
1
1
2018-02-02 12:49:34 +0000

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

sudo apt -y upgrade
1
Advertisement
1
1
2018-09-10 13:29:06 +0000

Я искал способ выбрать в скрипте не по умолчанию, а именно, при установке wireshark, и в итоге использовал tmux для взаимодействия с оболочкой, а именно:

# Start a detached root session
sudo tmux new-session -d
# Send the command
sudo tmux send-keys "DEBIAN_FRONTEND=readline apt-get -qq install wireshark-common; exit" enter
# Wait for the tmux session to get to the interactive stage
sleep 5
# Answer the question
sudo tmux send-keys "yes" enter
# Now attach to the session so we wait for command completion
sudo tmux attach
1
1
1
2018-07-31 15:28:56 +0000

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

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

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

  • *

NOTE: Это останется верным до тех пор, пока вы не вернете свой .bashrc и не перезапустите оболочку..

0
Advertisement
0
0
2020-02-11 11:52:37 +0000

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

yes | apt-get install curl

Похожие вопросы

6
10
5
37
11
Advertisement