我试图创建一个脚本来自动安装LAMP服务器并在debian中进行unatended。
问题是我意识到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 :(得分:1)
Debconf(该工具,而不是会议;))是一个允许软件包维护者编写配置脚本的系统,该脚本允许系统管理员使用可交换的UI配置系统的许多部分。架构是这样的,问题的答案存储在“数据库”(实际上是一组文件)中,这样如果包升级,之前已经回答的问题就不会重复。
debconf-get-selections
是一个允许系统管理员查询该数据库的工具;但是,为了返回某些内容,首先必须在运行它的系统上的数据库中有一些东西。如果您尚未在系统上配置phpmyadmin,则数据库将为空。
要修复,请运行以下命令:
dpkg-reconfigure -p low phpmyadmin
这将询问系统为phpmyadmin提出的所有问题,并为您配置一些东西。