我有一个安装后脚本:
unset DEBIAN_HAS_FRONTEND DEBIAN_FRONTEND DEBCONF_REDIR DEBCONF_OLD_FD_BASE
export DEBIAN_FRONTEND=noninteractive
aptitude -y install rsyslog-pgsql > /var/tmp/log 2>&1
安装时(ps ax):
17547 tty1 S+ 0:00 /usr/bin/perl -w /usr/share/debconf/frontend /var/lib/dpkg/info/rsyslog-pgsql.postinst configure
17587 tty1 S+ 0:00 /bin/sh /var/lib/dpkg/info/rsyslog-pgsql.postinst configure
17828 tty1 S+ 0:00 whiptail --backtitle Package configuration --title Configuring rsyslog-pgsql --output-fd 11 --nocancel --msgbox An error occurred while installing the database: Password: su: System error If at this point you choose "retry", you will be prompted with all the configuration questions once more and another attempt will be made at performing the operation. "retry (skip questions)" will immediately attempt the operation again, skipping all questions. If you choose "abort", the operation will fail and you will need to downgrade, reinstall, reconfigure this package, or otherwise manually intervene to continue using it. If you choose "ignore", the operation will continue, ignoring further errors from dbconfig-common. 18 77
等待用户选择。如何跳过所有问题并将其设置为默认值?
答案 0 :(得分:1)
安装包
$ sudo apt -q -y install pkg
安装debconf utils
# if you don't know the question
$ sudo apt install debconf-utils
找到问题('什么是矩阵?')
# find the question you need answered (use less instead)
$ sudo debconf-get-selections | grep pkg
卸载包(清除)
$ sudo apt-get purge pkg
设置您需要回答的选择
echo 'pkg thequestionname type value' | sudo debconf-set-selections;
安装包
sudo apt-get install pkg
如果您升级有新问题的软件包,您可以在vagrant上运行升级,找到在生产环境中自动升级之前预先设置的问题。
man debconf-set-selections
跟着黑兔子。