2015-09-04 77 views
0

我想創建一個腳本來自動安裝LAMP服務器,並在debian中未登錄。debconf-set-selections不能與phpmyadmin一起工作

問題是我意識到debconf-set-selections似乎不適用於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(工具,而不是會議;))是一個系統,允許的維護者,編寫一個配置腳本,允許系統管理員使用可交換的用戶界面配置系統的許多部分。該體系結構使得問題的答案存儲在「數據庫」(實際上是一組文件)中,以便如果軟件包得到升級,以前回答的問題不會重複。

debconf-get-selections是一個允許系統管理員查詢該數據庫的工具;但是,對於它返回的內容,首先必須在系統上的數據庫中存在某些內容。如果您尚未在系統上配置phpmyadmin,則數據庫將爲空。

要解決,運行以下命令:

dpkg-reconfigure -p low phpmyadmin 

這將要求所有的phpmyadmin問題的系統,併爲您配置的東西。