apt-get -force-yes: как подавить дальнейшие вопросы

Возьмите acroread или libpam-ldap качестве примеров.

Даже когда они установлены с помощью apt-get --force-yes они все еще задают вопросы:

  • acroread хочет знать, должен ли acrobat быть стандартным читателем PDF (как принять да?)
  • libpam-ldap Какой у вас URI LDAP-серверов, версия, пароль, …? (как просто предположить что-либо, ldap.conf будет перезаписываться марионеткой в ​​любом случае)

Есть ли «ради бога ради чего-нибудь и прекратить ворчание» -switch для apt-get ?

Пытаться:

 export DEBIAN_FRONTEND=noninteractive apt-get -y install package1 package2 

Другое решение: используйте команду yes для слепо ответить «да» на все вопросы.

Apt достаточно умен, что это решение не рекомендуется, если:

  1. вы знаете, что делаете, и

  2. -y и --force-yes не делают то, что вы хотите

В моем случае я хочу понизить Nginx, и меня не интересуют зависимости. По какой-то причине force-yes не работает, а переменная DEBIAN_FRONTEND=noninteractive .

Вот как можно понизить пакет невзаимодействительно:

 yes | apt install nginx-common=1.4.6-1ubuntu3.3 nginx-full=1.4.6-1ubuntu3.3 

Ваша первая проблема

acroread хочет знать, должен ли acrobat быть стандартным PDF-ридером

здесь он просит вас установить acroread в качестве PDF-ридера по умолчанию вручную; он не будет установлен автоматически, если у вас нет других PDF-считывателей, предварительно установленных в вашей системе Ubuntu. Но с установкой Ubuntu по умолчанию вы получите PDF-ридер.

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

второй выпуск:

libpam-ldap: Какой у вас URI LDAP-сервера, версия, пароль, …

Вы просто даете разрешение на выполнение одной операции, а не на настройку URL, паролей и т. Д.

Bottom Line: Ubuntu будет делать то, что вы просили его делать.