设置软件更新的计划时间

设置软件更新的计划时间

我住在偏远地区,我的互联网是基于卫星的。数据价格昂贵且有限,但夜间数据不计费,而且数据传输速度更快。我如何安排软件更新程序在夜间执行更新?我看到过许多与我类似的问题,但没有答案。是否有一个简单到中等技术水平的脚本可以编写?

答案1

编辑 apt 的 systemd 计时器

有三个设置需要更改:

  1. /lib/systemd/system/apt-daily.timer

这将提供每日 apt 更新,刷新软件包数据库。更改此部分:

     [Timer]
     OnCalendar=*-*-* 6,18:00   // Try *-*-* 02:17 for nightly at 0217 (2:17 am)
     RandomizedDelaySec=12h     // Comment out this line (prepend with a '#') - you don't want random delay
     Persistent=true            // Keep this line
  1. /lib/systemd/system/apt-daily-upgrade.timer

这提供您每日的无人值守升级,安装安全升级。前一个作业必须先运行 - 计算升级需要读取包数据库。更改此部分:

     [Timer]
     OnCalendar=*-*-* 06:00     // Try *-*-* 03:17 for nightly at 0317 (3:17 am)
     RandomizedDelaySec=60m     // Comment out this line (prepend with a '#') - you don't want random delay
     Persistent=true            // Keep this line
  1. /etc/cron.daily/apt-compat

此作业为 apt 增加了额外的随机性。目的是通过随机地跨时间分配作业来避免镜像过载。通过将其他 apt 作业设置为不寻常的时间(例如整点后 17 分钟),您实现了此目标。更改此部分:

     # delay the job execution by a random amount of time
     random_sleep               // Comment out this line by adding a '#' in front.

相关内容