考虑以下打字稿:
# export DEBIAN_FRONTEND="noninteractive"
# sudo debconf-set-selections <<< "mysql-community-server mysql-community-server/remove-data-dir boolean true"
# echo GET mysql-community-server/remove-data-dir | debconf-communicate
0 true
# apt purge mysql-*
...
# echo GET mysql-community-server/remove-data-dir | debconf-communicate
10 mysql-community-server/remove-data-dir doesn't exist
# sudo debconf-set-selections <<< "mysql-server mysql-server/root_password password 123456"
# sudo debconf-set-selections <<< "mysql-server mysql-server/root_password_again password 123456"
# echo GET mysql-server/root_password | debconf-communicate
0 123456
# apt install mysql-server-5.6
...
# echo GET mysql-server/root_password | debconf-communicate
0
那么,debconf-set-selections
这会自动吗?或者它是执行此操作的安装脚本?还有其他选择吗?
为了回答我自己的问题,软件包通常会在它们自己被清除时清除它们拥有的问题。至于
mysql
's 的密码,postinst
安装后脚本会显式清除它,以避免它留在磁盘上。更多信息在这里和这里。