客户想要在他们的 12.04 盒子上启用自动安全更新,但必须每周一次,仅限周六(为什么我不知道)。
当我dpkg-reconfigure -plow unattended-upgrades
每天这样做时,他们不希望这样。
我该如何配置这个?
答案1
如果只在周六跑步绝对重要,那么请执行以下操作:
- 取出包装
anacron
。请注意,这也会删除ubuntu-desktop
,但您可能不需要在服务器上使用它。这是必要的,因为否则无法控制 Anacron 将在一周中的哪一天运行/etc/cron.weekly
. 编辑文件
/etc/crontab
,它应该有以下行:47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
将 更改
7
为6
(星期六)并根据您的需要调整前两个数字(分钟和小时)。这将导致所有作业在/etc/cron.weekly
一周中的指定日期和时间运行。- 将文件移动
/etc/cron.daily/apt
到/etc/cron.weekly/apt
.
答案2
apt
中的文件包含/etc/cron.daily
相关说明:
# Create /etc/apt/apt.conf.d/02periodic file to set your preference.
....
#
# APT::Periodic::Unattended-Upgrade "0";
# - Run the "unattended-upgrade" security upgrade script
# every n-days (0=disabled)
# Requires the package "unattended-upgrades" and will write
# a log in /var/log/unattended-upgrades
环境
APT::Periodic::Unattended-Upgrade "7";
每 7 天运行一次,如果您在周五更改,则每日第一个 cron 运行将在周六早上(默认为上午 6:25 /etc/crontab
)。
如果当时机器停机,该脚本将在系统启动的第二天运行。在那(新的)一天之后的每周。这样,您就可以获得一台机器的每周更新,该机器在某一天并不总是处于运行状态,但不是您想要的。
对于不同步,您可以做的一件事是使用 crontab 条目来运行/var/lib/apt/periodic/update-stamp
适当地触及标记文件的 touch 命令(即将其设置为“上周六上午完成”)