我有一个包,我们称之为foo,它有一个依赖关系,而依赖关系又依赖于后缀。我正在尝试通过使用 debconf 回答问题来自动安装foo 。foo的要求是它必须能够安装和配置所有东西,并且必须使用
sudo apt-get install foo
所以这样的事情是不能接受的:
DEBIAN_FRONTEND=noninteractive apt-get install -y foo
另外,请注意foo正在安装在全新安装的 Ubuntu 上。
我尝试的第一件事是(在我的预安装脚本中):
echo "postfix postfix/mailname string your.hostname.com" | debconf-set-selections
echo "postfix postfix/main_mailer_type string 'Internet Site'" | debconf-set-selections
但这没有用。问题仍然出现在安装中。
然后我尝试了这个:
echo "postfix postfix/mailname string your.hostname.com" | debconf-set-selections
echo "postfix postfix/main_mailer_type string 'Internet Site'" | debconf-set-selections
DEBIAN_FRONTEND=noninteractive apt-get install -y postfix
和这个:
echo "postfix postfix/mailname string your.hostname.com" | debconf-set-selections
echo "postfix postfix/main_mailer_type string 'Internet Site'" | debconf-set-selections
DEBIAN_FRONTEND=noninteractive apt-get install -y postfix << _EOT
y
EOT
然后我想:
如果将 debconf-utils 放在 Pre-Depends 中会怎样?那没有用。
但是,如果我执行以下操作(从命令行而不是 preinst 脚本),那么安装将毫无问题地进行:
sudo apt-get install debconf-utils
echo "postfix postfix/mailname string your.hostname.com" | debconf-set-selections
echo "postfix postfix/main_mailer_type string 'Internet Site'" | debconf-set-selections
sudo apt-get install foo
但是,这对于我给出的要求是不可接受的。
所以现在我被困住了。如果有人能找出我做错了什么,那将不胜感激,因为我已经搜索了一段时间以寻找答案。