Kan*_*ooo 10 updates command-line
安装后,我在计算机上运行了一组自定义命令。如何让 Ubuntu 每 4 周检查一次更新并在检查时自动安装它们?
我需要通过命令行完成此操作,以便在设置计算机时为普通用户进行设置。
第一个命令将使更新管理器每 2 周检查一次更新,因为它们并不总是如此多,以节省 Ubuntu 服务器的带宽。
我还需要设置一下,这样用户就不需要点击安装更新,因为每次帮朋友设置电脑都很累。
Ste*_*zzo 10
首先,启用这样的自动更新:
sudo apt-get install unattended-upgrades
Run Code Online (Sandbox Code Playgroud)
然后你需要编辑它的配置,输入
sudo nano /etc/apt/apt.conf.d/50unattended-upgrades
Run Code Online (Sandbox Code Playgroud)
(nano如果需要,请替换为您喜欢的文本编辑器)
该文件如下所示:
Unattended-Upgrade::Allowed-Origins {
"Ubuntu maverick-security";
// "Ubuntu maverick-updates";
};
Run Code Online (Sandbox Code Playgroud)
这//意味着该行是一条注释,不会被程序考虑,删除笔划以包含稳定版本更新以及安全修复程序。另外,替换maverick为您正在运行的 Ubuntu 版本。
要设置系统检查更新的时间间隔,请/etc/apt/apt.conf.d/10periodic使用文本编辑器编辑文件:
APT::Periodic::Update-Package-Lists "14";
APT::Periodic::Download-Upgradeable-Packages "14";
APT::Periodic::AutocleanInterval "14";
APT::Periodic::Unattended-Upgrade "14";
Run Code Online (Sandbox Code Playgroud)
在本例中,系统每两周更新一次。
有关更详细的说明,请参阅Ubuntu 服务器指南中的自动更新。
请注意,papukaija 的回答是谈论更新管理器对话框在您的屏幕上弹出的时间间隔,我猜这不是您想要的,但我不确定。:)
如果您的意思是更新所有“可更新”的内容,即更新所有软件包,我想您可以每 28 天apt-get update && apt-get upgrade -y运行一次 cron(在根 cron 内)。
由于限制性PATH设置,有些人在使用 crond 作业时遇到问题。如果您有任何问题,您可以PATH在文件的开头定义您的问题crontab -e(如CronHowto中的建议)
另外,为了检查一切是否正常,我会记录结果,如下所示:
root@PORTATIL:/var/log$ crontab -l
* * */2 * * /usr/share/myupdate.sh > /var/log/myupdate.log
Run Code Online (Sandbox Code Playgroud)
myupdate.sh可以像这样简单:
#!/bin/bash
#Testing updates
echo "$(date) Crond myupdate sarting."
apt-get update -y
apt-get upgrade -y
echo "$(date)Crond myupdate finished."
Run Code Online (Sandbox Code Playgroud)
您可以通过打开gconf-editor(例如使用 Alt+F2 并输入 gconf-editor)来更改 update-manager 运行的时间间隔。然后定位/apps/update-notifier.
间隔在键中定义,regular_auto_launch_interval其中值是天数。我认为这种方法不会影响非图形自动更新程序(无人值守升级)。
请注意,由于错误, Ubuntu 可能不会自动安装安全更新。