Debian 预置 dpkg-configure 字符串的 Bash 脚本错误问题

Debian 预置 dpkg-configure 字符串的 Bash 脚本错误问题

我正在编写一些 bash 脚本,以便按我需要的方式配置各种软件包。安装 Debian 'unattended-upgrades' 时,通常需要的用户干预之一是运行以*user@hostname:~# dpkg-reconfigure -plow unattended-upgrades*生成/etc/apt/apt.conf.d/20auto-upgrades文件内容。

我想用以下字符串配置无人值守升级(来自 Debian Wiki 无人值守升级页面):https://wiki.debian.org/UnattendedUpgrades建议使用此“或者以非交互方式运行:

echo unattended-upgrades unattended-upgrades/enable_auto_updates boolean true | debconf-set-selections dpkg-reconfigure -f noninteractive unattended-upgrades

因此,当我运行包含此建议字符串的脚本时,我看到的是以下内容:

Unknown option: f
Usage: debconf-set-selections [-vcu] [file]
  -v, --verbose     verbose output
  -c, --checkonly   only check the input file format
  -u, --unseen      do not set the 'seen' flag when preseeding values

我假设提到的错误“f”引用了 Debian Wiki 脚本字符串建议中的“-f”选项。脚本完成时,一切似乎都按预期工作。无需用户干预即可安装“无人值守升级”。

和所有人一样,当我创建各种 bash 脚本时,我的 bash 学习也在进行中。因此,作为一名新手脚本编写者,我的问题是,有没有比 Debian wiki 页面上建议的更好的方法来编写这种无人值守升级的非交互安装脚本?这个“f”投诉应该让我担心还是应该忽略这个错误?

答案1

恐怕你误读了https://wiki.debian.org/UnattendedUpgrades指令,并将两个命令合并为一个。

或者以非交互方式运行:

echo unattended-upgrades unattended-upgrades/enable_auto_updates boolean true | debconf-set-selections

dpkg-reconfigure -f noninteractive unattended-upgrades

(来源:https://wiki.debian.org/UnattendedUpgrades;为清晰起见添加了空行)

跑步 echo unattended-upgrades unattended-upgrades/enable_auto_updates boolean true | debconf-set-selections

然后运行 dpkg-reconfigure -f noninteractive unattended-upgrades

所以从我的阅读来看,第一个命令是配置你的无人升级文件,第二个命令是告诉 dpkg 将该文件用于非交互式前端。

相关内容