首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >启用无人值守-从shell脚本升级

启用无人值守-从shell脚本升级
EN

Ask Ubuntu用户
提问于 2012-10-20 04:24:36
回答 5查看 6.1K关注 0票数 19

我有一个shell脚本来为我的目的自动配置新的Ubuntu虚拟机。我希望这个脚本能够安装和启用unattended-upgrades,但是如果没有用户交互,我就想不出如何做到这一点。

通常启用升级的方法是dpkg-reconfigure unattended-upgrades,但这当然是交互式的。非交互式前端完全避免询问任何问题,文本前端似乎被绑定,并决心使用tty而不是stdin/stdout进行I/O。

EN

回答 5

Ask Ubuntu用户

发布于 2012-11-18 21:37:11

只需按您喜欢的方式配置/etc/apt.conf/d/20自动升级,并将其放到目标计算机上即可。您可以将其嵌入到脚本中,也可以从服务器或其他地方进行rsync或wget。

因此,基本上,您的脚本可能会这样做:

代码语言:javascript
复制
apt-get install unattended-upgrades
wget -O /etc/apt/apt.conf.d/20auto-upgrades http://myserver.mytld/confs/20auto-upgrades
/etc/init.d/unattended-upgrades restart

根本没有理由对dpkg重新配置脚本进行猴子操作。

如果您不想从远程服务器获取conf文件,那么它非常简短和简单--默认版本(只获取和安装安全更新)如下所示:

代码语言:javascript
复制
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";

因此,您只需将这些行直接回显到配置文件中,如下所示:

代码语言:javascript
复制
echo -e "APT::Periodic::Update-Package-Lists \"1\";\nAPT::Periodic::Unattended-Upgrade \"1\";\n" > /etc/apt/apt.conf.d/20auto-upgrades
票数 22
EN

Ask Ubuntu用户

发布于 2016-01-25 12:25:53

如果您想使用dpkg- reconfigure,可以使用“debconf set -set”设置值,然后以非交互式的方式重新配置它。

代码语言:javascript
复制
echo "unattended-upgrades       unattended-upgrades/enable_auto_updates boolean true" | debconf-set-selections; dpkg-reconfigure -f noninteractive unattended-upgrades
票数 4
EN

Ask Ubuntu用户

发布于 2012-11-17 04:19:53

我建议插入配置参数来配置无人值守的升级。

代码语言:javascript
复制
sudo touch /etc/apt/apt.conf.d/20auto-upgrades

echo "APT::Periodic::Update-Package-Lists "1"" >> /etc/apt/apt.conf.d/20auto-upgrades

echo "APT::Periodic::Unattended-Upgrade "1" " >> /etc/apt/apt.conf.d/20auto-upgrades

同样,您可以根据您在conf文件/etc/apt/apt.conf.d/50unattended-upgrades中的要求配置/添加参数。

不要忘记重新启动服务以应用更改。

代码语言:javascript
复制
/etc/init.d/unattended-upgrades restart
票数 0
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/203337

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档