Назад | Перейти на главную страницу

Установка Sun Java JDK по сценарию на Ubuntu 9.04

Мы пытаемся создать сценарий установки sun jdk на Ubuntu 9.04, чтобы он автоматически принял лицензионное соглашение. Я видел кое-что в сети о создании файла, который ищет пакет, но ни один из них не был завершен. Кто-нибудь знает, как заставить это работать?

Пакеты Sun Java отслеживают, согласились ли вы с лицензионным соглашением с помощью Debconf. Вы можете обойти эту проверку, запустив

echo "sun-java6-bin shared/accepted-sun-dlj-v1-1 boolean true" | debconf-set-selections

перед установкой sun-java6-jre или любой другой пакет Sun Java, который вы хотите.

Я тестировал это в ubuntu 10.04 и отлично работает:

#!/bin/sh

DEBIAN_FRONTEND=noninteractive

echo "sun-java6-bin shared/accepted-sun-dlj-v1-1 boolean true" | debconf-set-selections

echo "sun-java6-jre shared/accepted-sun-dlj-v1-1 boolean true" | debconf-set-selections

apt-get install -y sun-java6-bin

Моя первая мысль - использовать пакет для вашего собственного дистрибутива, поскольку Java в любом случае компилируется, нет особых преимуществ, если вам не нужна очень конкретная версия. Если бы это было так, вы также могли бы создать свой собственный пакет.

Обычно я перенаправляю STDIN. Например:

/command/to/run <<_EOF
answer1
answer2
_EOF

Для особо сложных вещей альтернативой является ожидать.