“UbuntuHelp:AutomaticSecurityUpdates/zh”的版本间的差异
来自Ubuntu中文
(→简介) |
(→使用 apt.conf.d) |
||
(未显示4个用户的8个中间版本) | |||
第3行: | 第3行: | ||
#title 自动进行安全更新 | #title 自动进行安全更新 | ||
=== 简介 === | === 简介 === | ||
− | + | 这是一个简单的教程,将教您创建一个脚本和一个cron任务并自动安装安全更新,而无需您做任何更新操作。在没有监督的情况下进行软件更新总会有一些安全风险,但是也会益处。如果你相信打上最新的安全补丁是非常重要的,那么您应该按照这个教程去做。 | |
=== 使用 apt.conf.d === | === 使用 apt.conf.d === | ||
第18行: | 第18行: | ||
// Automatically upgrade packages from these (origin, archive) pairs | // Automatically upgrade packages from these (origin, archive) pairs | ||
Unattended-Upgrade::Allowed-Origins { | Unattended-Upgrade::Allowed-Origins { | ||
− | " | + | "${distro_id}:${distro_codename}-security"; |
+ | // "${distro_id}:${distro_codename}-updates"; | ||
+ | // "${distro_id}:${distro_codename}-proposed"; | ||
+ | // "${distro_id}:${distro_codename}-backports"; | ||
}; | }; | ||
</nowiki></pre> | </nowiki></pre> | ||
− | https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=IconNote.png | + | https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=IconNote.png |
+ | |||
=== 使用 cron === | === 使用 cron === | ||
==== 操作指南 ==== | ==== 操作指南 ==== | ||
第41行: | 第45行: | ||
echo "Security updates (if any) installed" | echo "Security updates (if any) installed" | ||
</nowiki></pre> | </nowiki></pre> | ||
− | 最近(从 Ubuntu 7.10 以来),不推荐使用 aptitude 的 'upgrade' | + | 最近(从 Ubuntu 7.10 以来),不推荐使用 aptitude 的 'upgrade' 操作。有两种方法去升级,其中安全的一种(传统的,如果有一个更新需要添加或删除依赖,它将不更新)和另一种全部更新(它将总是升级,甚至添加它或删除它会影响到其他包的,之前称为'dist-upgrade' )。这些操作现在是'safe-upgrade' 或 'full-upgrade'。详细请查看 aptitude (<code><nowiki>man aptitude</nowiki></code>) 的帮助。 |
当你完成前面的步骤,你还要让这个文件有执行权限。在终端输入下面一行: | 当你完成前面的步骤,你还要让这个文件有执行权限。在终端输入下面一行: | ||
<pre><nowiki> | <pre><nowiki> | ||
sudo chmod +x /etc/cron.weekly/apt-security-updates | sudo chmod +x /etc/cron.weekly/apt-security-updates | ||
</nowiki></pre> | </nowiki></pre> | ||
+ | |||
==== 配置之后的信息 ==== | ==== 配置之后的信息 ==== | ||
这个脚本每星期运行一次,它安装安全仓库中的全部可用包。它还在 /var/log/apt-security-updates 生成日志,这个日志记录最近检查出来的错误。 | 这个脚本每星期运行一次,它安装安全仓库中的全部可用包。它还在 /var/log/apt-security-updates 生成日志,这个日志记录最近检查出来的错误。 | ||
第69行: | 第74行: | ||
==== 使用 cron-apt 去处理自动更新 ==== | ==== 使用 cron-apt 去处理自动更新 ==== | ||
使用 [http://packages.ubuntu.com/intrepid/cron-apt cron-apt] 包同样会进行自动更新。动手前请先阅读 man 帮助。 | 使用 [http://packages.ubuntu.com/intrepid/cron-apt cron-apt] 包同样会进行自动更新。动手前请先阅读 man 帮助。 | ||
− | + | [[Category:系统]] | |
− | [[ | + | |
− | + | ||
− | + |
2012年10月9日 (二) 20:40的最新版本
点击翻译: |
English • 中文 |
- title 自动进行安全更新
简介
这是一个简单的教程,将教您创建一个脚本和一个cron任务并自动安装安全更新,而无需您做任何更新操作。在没有监督的情况下进行软件更新总会有一些安全风险,但是也会益处。如果你相信打上最新的安全补丁是非常重要的,那么您应该按照这个教程去做。
使用 apt.conf.d
当你在使用 GNOME ,在“系统”菜单,“系统管理”,“软件源”中,打开“更新”选项卡并选择“自动更新”,也把“安装安全更新时不需确认”。
你也可以通过命令行来配置 unattended-upgrades
包,简单的改变你的/etc/apt/apt.conf.d/10periodic :
APT::Periodic::Update-Package-Lists "1"; APT::Periodic::Download-Upgradeable-Packages "1"; APT::Periodic::AutocleanInterval "0"; APT::Periodic::Unattended-Upgrade "1";
和 /etc/apt/apt.conf.d/50unattended-upgrades:
// Automatically upgrade packages from these (origin, archive) pairs Unattended-Upgrade::Allowed-Origins { "${distro_id}:${distro_codename}-security"; // "${distro_id}:${distro_codename}-updates"; // "${distro_id}:${distro_codename}-proposed"; // "${distro_id}:${distro_codename}-backports"; };
使用 cron
操作指南
首先,按 Alt+F2 并创建一个新文件:
gksudo gedit /etc/cron.weekly/apt-security-updates
如果你是用 KDE, 用下面的命令代替:
kdesudo kate /etc/cron.weekly/apt-security-updates
复制以下文本到这个新文件,保存并退出:
#! /bin/sh echo "**************" >> /var/log/apt-security-updates date >> /var/log/apt-security-updates aptitude update >> /var/log/apt-security-updates aptitude safe-upgrade -o Aptitude::Delete-Unused=false --assume-yes --target-release `lsb_release -cs`-security >> /var/log/apt-security-updates echo "Security updates (if any) installed"
最近(从 Ubuntu 7.10 以来),不推荐使用 aptitude 的 'upgrade' 操作。有两种方法去升级,其中安全的一种(传统的,如果有一个更新需要添加或删除依赖,它将不更新)和另一种全部更新(它将总是升级,甚至添加它或删除它会影响到其他包的,之前称为'dist-upgrade' )。这些操作现在是'safe-upgrade' 或 'full-upgrade'。详细请查看 aptitude (man aptitude
) 的帮助。
当你完成前面的步骤,你还要让这个文件有执行权限。在终端输入下面一行:
sudo chmod +x /etc/cron.weekly/apt-security-updates
配置之后的信息
这个脚本每星期运行一次,它安装安全仓库中的全部可用包。它还在 /var/log/apt-security-updates 生成日志,这个日志记录最近检查出来的错误。 这个脚本将输出信息到日志文件,为了防止日志文件太大,我们需要让它进行轮换。我们将使用Ubuntu 自带的 logrotate 功能。按 Alt+F2 并输入以下命令:
gksudo gedit /etc/logrotate.d/apt-security-updates
如果是 KDE, 用下面的命令代替:
kdesudo kate /etc/logrotate.d/apt-security-updates
粘贴这些到编辑器,保存并退出:
/var/log/apt-security-updates { rotate 2 weekly size 250k compress notifempty }
这将轮换日志文件,每周(`weekly`)或者当它超过 250kB(`size 250k`) 时压缩(`compress`)旧的版本。保留之前的两个日志文件(`rotate 2`),并且如果日志文件是空(`notifempty`)的话将不会进行轮换。
使用 cron-apt 去处理自动更新
使用 cron-apt 包同样会进行自动更新。动手前请先阅读 man 帮助。