Для работы я должен подготовить много ПК. Я должен пихнуть набор sudo apt-get install
команды в терминал - это довольно утомительно. Я мог, вероятно, поместить всех их в sh сценарий (возможно), но некоторые команды требуют добавляющего нового репозитория (sudo add-apt-repository
) или добавление нового ключа (??) через gpg
команда - и они требуют, чтобы пользователь нажал ENTER.
Какой-либо путь к сказать "да" всем или чему-то? Это, вероятно, потребовало бы добавления, что некоторые опции в Кв. - добираются и команды gpg?
Запрещая заказную установку предварительно сконфигурированной системы, я, вероятно, пошел бы со сценарием установки, работает на каждой системе.
Каковы команды, которые должны нажать 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
Используя различные времена сна для задержек между "вводом", повторяя пространство с " "
или даже просто эхо должно отправить новой строке "возврат".
Можно добавить --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.