debian/ubuntu:在命令行 apt-get 中防止 UI 提示

Dus*_*rea 5 ubuntu dialog dpkg apt

因此,为了防止在安装 dpkg 后出现控制台 UI(newt、snack、dialog)提示,您必须执行以下操作:

debconf-set-selections <<< 'mysql-server mysql-server/root_password password password'
debconf-set-selections <<< 'mysql-server mysql-server/root_password_again password verify_password'
apt-get -y install mysql-server
Run Code Online (Sandbox Code Playgroud)
  • 这有什么规定吗?
  • 我们如何发现调用控制台 UI 的其他包的提示名称/描述符以阻止它们?
  • 我们是否可能需要深入研究源代码才能弄清楚提示是如何调用的?
  • 有没有一种简单的方法来选择所有默认值(有效地单击默认按钮和/或采用正确的文本/选项)?

谢谢。

笔记

看起来设置这个变量是采用默认值的解决方案:

DEBIAN_FRONTEND=noninteractive
Run Code Online (Sandbox Code Playgroud)

小智 2

这将使用默认参数重新配置您的包:

DEBIAN_FRONTEND=noninteractive dpkg-reconfigure [package name]

这将显示您在安装软件包时设置的参数:

debconf-show [package name]

这将输出您在安装包时设置的参数,格式为加载到debconf-set-selections

debconf-get-selections | grep '^[package name]'

据我所知,您无法显示未安装的软件包的参数;如果不首先使用该选项重新配置包,则无法显示默认参数noninteractive。您可能想使用容器进行测试。