Если OpenJDK / OpenJRE работает для вас нормально, я рекомендую использовать этот пакет вместо этого, как предложено @SAM. Однако для некоторых программ действительно требуется Oracle JDK / JRE. Этот ответ заключается в том, как заставить замолчать вопрос о лицензии с пакетом Oracle от PPA.
Во-первых, давайте признаем, что заданный вопрос является особенностью пакета, созданного разработчиком.
oracle-java7-installer (7u7-0~webupd8~4) maverick; urgency=medium
* removed cookie file use or else the PPA stays disabled
* request the user to accept the Oracle license before installation
-- Alin Andrei <webupd8@gmail.com> Tue, 04 Sep 2012 14:18:29 +0200
Как указал @Nate в своем ответе, должна быть опция молчания. И есть. Сделайте это перед установкой:
$ echo debconf shared/accepted-oracle-license-v1-1 select true | \
sudo debconf-set-selections
$ echo debconf shared/accepted-oracle-license-v1-1 seen true | \
sudo debconf-set-selections
Это устанавливает значение ключа debconf в true, но также помечает его как видимое пользователем. Теперь этот вопрос не должен появляться!
Как я нашел это?
В источнике пакета я отследил это в oracle-java7-installer.preinst
файле:
license=oracle-license-v1-1
# snip
db_get shared/accepted-$license
if [ "$RET" = "true" ]; then
echo "$license license has already been accepted" >&2
exit 0
fi
Очевидно, он использует значение debconf для ключа, shared/accepted-oracle-license-v1-1
чтобы проверить, принял ли пользователь уже лицензию. Если это так, скрипт будет корректно завершен и позволит продолжить установку, не задавая вопроса. Теперь мы должны просто сказать debconf, что вы уже принимаете Oracle License 1.1.
Пожалуйста, обратитесь к man-странице debconf-set-selections
более подробной информации, но это пример вашей проблемы и работает аналогично для других пакетов. Какие еще ключи есть в вашей системе в базе данных debconf? Установить debconf-utils
и сделать
$ sudo debconf-get-selections
Затем grep для дополнительных ключей, которые вам нужно установить в вашей автоматической установке. Это намного гибче, чем использование -y
с, apt-get
поскольку дает вам возможность установить другие параметры, отличные от настроек по умолчанию во время установки.