2015-09-04 7 views
0

Я пытаюсь создать скрипт для установки сервера LAMP автоматически и без изменений в debian.debconf-set-selection не работает с phpmyadmin

Дело в том, что я понял, что debconf-set-selection, похоже, не работает с phpmyadmin.

В самом деле, если я бегу ..

debconf-get-selections | grep phpmyadmin 

..Это не возвращает ничего, и он должен вернуть доступные опции, которые вы можете выбрать и использовать.

Возможно ли, что в последних версиях debconf phpmyadmin недоступен?

Это мой код, и он ничего не делает .. Я имею в виду, она по-прежнему просит опции:

def installPHPMyAdmin(): 
    subprocess.call("debconf-set-selections <<< " + 
    "\"phpmyadmin phpmyadmin/dbconfig-install boolean true\"") 
    subprocess.call("debconf-set-selections <<< \"phpmyadmin phpmyadmin/mysql/admin-pass " + 
    "password " + mysqlPass + "\"") 
    subprocess.call("debconf-set-selections <<< \"phpmyadmin phpmyadmin/mysql/app-pass " + 
    "password " + phpMyAdminPass + "\"") 
    subprocess.call("debconf-set-selections <<< \"phpmyadmin phpmyadmin/app-password-confirm " + 
    "password " + phpMyAdminPass + "\"") 
    subprocess.call("debconf-set-selections <<< \"phpmyadmin phpmyadmin/reconfigure-webserver " + 
    "multiselect none\"") 
    return subprocess.call("apt-get install -y phpmyadmin") 
+0

Отметьте это сообщение https://stackoverflow.com/a/49136923/454421 Возможно, вы используете неправильный ключ конфигурации. –

ответ

1

Debconf (инструмент, а не конференции;)) представляет собой систему, которая позволяет пакет сопровождающим в напишите сценарий конфигурации, который позволяет sysadmin настраивать многие части системы с помощью сменного пользовательского интерфейса. архитектура такова, что ответы на вопросы хранятся в «базе данных» (на самом деле набор файлов), так что если пакет будет обновлен, вопросы, ответы на которые до этого не будут повторяться, не будут повторяться.

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

Чтобы исправить, выполните следующие действия:

dpkg-reconfigure -p low phpmyadmin 

Это задаст все вопросы система имеет для PHPMyAdmin и настроить вещи для вас.