Сценарий LAMP для установки с предопределенным паролем root

Я хотел бы написать следующий скрипт Bash:

При такой установке LAMP у меня запрашивался пароль root для установки MySQL. Я хотел бы написать сценарий bash.

sudo apt-get install lamp-server^

Могу ли я сделать так, чтобы передать переменную в качестве параметра, чтобы он не спрашивал меня об этом во время установки?

rootPassword="MyRootPassword";

sudo apt-get install lamp-server^ -y $rootPassword

person Houman    schedule 27.12.2011    source источник
comment
Ключевое слово здесь debconf. Изменение внешнего интерфейса debconf, вероятно, поможет вам, но я сам этого не делал, так что удачи.   -  person thiton    schedule 28.12.2011


Ответы (1)


Чтобы отвечать на вопросы debconf не в интерактивном режиме, вам понадобится пакет debconf-utils. Команду debconf-set-selections можно использовать для ручной вставки в базу данных debconf элементов, которые обычно запрашиваются в интерактивном режиме. Это также можно сделать во время установки ОС с помощью FAI или предварительной загрузки.

export DEBIAN_FRONTEND=noninteractive
debconf-set-selections < 'mysql-server-5.1 mysql-server/root_password select PASSWORD'
debconf-set-selections < 'mysql-server-5.1 mysql-server/root_password_again select PASSWORD'

Скорее всего, вам потребуется изменить имя пакета mysql-server на версию, используемую вашим дистрибутивом. Обратите внимание, что пакет «mysql» — это виртуальный пакет, который указывает на реальный пакет (включая номер версии).

person jordanm    schedule 27.12.2011