Установка Sun Java JDK по сценарию в Ubuntu 9.04
Мы пытаемся установить сценарий установки Sun JDK на Ubuntu 9.04 и автоматически принять лицензионное соглашение. Я видел что-то в сети о создании файла, который ищет пакет, но ни один из них не был завершен. Кто-нибудь знает, как заставить это работать?
3 ответа
Java-пакеты Sun отслеживают, согласны ли вы с лицензионным соглашением с использованием 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
Для особенно хитрых вещей альтернативой этому является ожидание.