Установка без диалогов для Кв. - добирается

Для работы я должен подготовить много ПК. Я должен пихнуть набор sudo apt-get install команды в терминал - это довольно утомительно. Я мог, вероятно, поместить всех их в sh сценарий (возможно), но некоторые команды требуют добавляющего нового репозитория (sudo add-apt-repository) или добавление нового ключа (??) через gpg команда - и они требуют, чтобы пользователь нажал ENTER.

Какой-либо путь к сказать "да" всем или чему-то? Это, вероятно, потребовало бы добавления, что некоторые опции в Кв. - добираются и команды gpg?

0
задан 17 December 2014 в 03:39

2 ответа

Запрещая заказную установку предварительно сконфигурированной системы, я, вероятно, пошел бы со сценарием установки, работает на каждой системе.

Каковы команды, которые должны нажать Enter? add-apt-repositoryсправка рекламирует, это -y опция:

$ sudo add-apt-repository --help
Usage: add-apt-repository [options] repository

Options:
  -h, --help  show this help message and exit
  -y, --yes   force yes on all confirmation questions

Ссылка ниже справки говорит, что для добавления PPA, "Если открытый ключ требуется и доступен, он автоматически загружается и регистрируется". Существуют также пакеты как ubuntu-keyring, ubuntu-extras-keyring, linuxmint-keyring и т.д. это содержит ключи для различных репозиториев. И man gpg должен сказать, как заставить это автоматически устанавливать ключ, если Вы застреваете с помощью него.

И/или Вы могли отредактировать sources.list файлы непосредственно с sed/awk, или если системы идентичны, просто копируют по "законченным" файлам.
Эта страница справки Ubuntu имеет больше информации о том, как управлять репозиториями программного обеспечения из командной строки.

И если Вы готовите много систем, я могу предположить, что Вы будете только загружать .deb пакеты однажды и устанавливать их всех на каждой машине, вместо того, чтобы обновить затем загрузку их всех для каждой системы? Если бы у Вас есть весь .deb's в одной папке, эта команда установила бы всех их:

  • sudo dpkg -iR [deb-directory]

К вашему сведению я раньше видел один нечетный пакет, который будет ожидать введения прежде, чем закончить устанавливать, по-видимому, это были внутренние сценарии конфигурации сами по себе, и даже apt-get --force-yes не работал бы с ним. У Вас нет ни одного того типа, не так ли?


Или, если Вы полны решимости относительно просто насильственного кормления набора нажатий клавиш в telnet (должен работать на другие методы также), терминал, Вы могли использовать сценарий удара как этот:

{
echo "open 192.168.55.55"
sleep 0.5
echo "$login"
sleep 0.5
echo "$password"
sleep 0.5
echo "command1"
sleep 2
echo " "
sleep 5
echo "exit"
} | telnet

Используя различные времена сна для задержек между "вводом", повторяя пространство с " " или даже просто эхо должно отправить новой строке "возврат".

0
ответ дан 6 October 2019 в 06:37

Можно добавить --assume-yes и --force-yes флаги для автоматического высказывания да всем.

sudo apt-get --assume-yes --force-yes install <packagename(s)>

Для внесения этих изменений постоянными отредактируйте /etc/apt/apt.conf и добавьте строки

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

, Это - то, что страница справочника apt-get говорит -

   -y, --yes, --assume-yes
       Automatic yes to prompts; assume "yes" as answer to all prompts and
       run non-interactively. If an undesirable situation, such as
       changing a held package, trying to install a unauthenticated
       package or removing an essential package occurs then apt-get will
       abort. Configuration Item: APT::Get::Assume-Yes.

   --force-yes
       Force yes; this is a dangerous option that will cause apt to
       continue without prompting if it is doing something potentially
       harmful. It should not be used except in very special situations.
       Using force-yes can potentially destroy your system! Configuration
       Item: APT::Get::force-yes.
2
ответ дан 6 October 2019 в 06:37

Другие вопросы по тегам:

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