特殊:Badtitle/NS100:AutoWeeklyUpdateHowTo/zh:修订间差异
无编辑摘要 |
|||
(未显示3个用户的19个中间版本) | |||
第1行: | 第1行: | ||
{{Copyedit translation|from=https://help.ubuntu.com/community/AutoWeeklyUpdateHowTo}}{{From|https://help.ubuntu.com/community/AutoWeeklyUpdateHowTo}}{{Translator|黄金小强}}{{Verifier|}} | {{Copyedit translation|from=https://help.ubuntu.com/community/AutoWeeklyUpdateHowTo}}{{From|https://help.ubuntu.com/community/AutoWeeklyUpdateHowTo}}{{Translator|黄金小强}}{{Verifier|}}{{Languages|UbuntuHelp:AutoWeeklyUpdateHowTo}} | ||
== 如何每周自动更新 <br> == | == 如何每周自动更新 <br> == | ||
=== | === 使用cron-apt自动更新软件包<br> === | ||
软件包cron-apt被设计为自动更新软件包列表和下载已更新的软件包。因此,它主要使用命令 | |||
<pre>apt-get upgrade</pre> | <pre>apt-get upgrade</pre> | ||
和 | 和 | ||
第12行: | 第12行: | ||
。 | 。 | ||
=== | === 安装cron-apt === | ||
你可以从Universe | 你可以从Universe Repositories得到cron-apt。 | ||
=== | === 使cron-apt定期运行 === | ||
为了使cron-apt定期地运行,创建一个到/etc/cron.daily或者/etc/cron.weekly的链接 | |||
<pre>sudo ln -s /usr/sbin/ | <pre>sudo ln -s /usr/sbin/cron-apt /etc/cron.daily | ||
</pre> | </pre> | ||
cron-apt只下载新的软件包,你需要手动运行来安装它们 | |||
<pre>sudo apt-get dist-upgrade | <pre>sudo apt-get dist-upgrade | ||
</pre> | </pre> | ||
。<br> * | 。<br> * 如果是使用cron-apt,你不需要参照如下步骤。 | ||
=== <br> | === <br>使用cron和apt-get每周自动升级软件包 === | ||
'''警告:''' | '''警告:'''就任何的系统变化,都有可能发生新的或附加错误。请确保备份你的数据和设置!由自己承担使用本文档的後果。定期更新你的Ubuntu(或基于Debian)的软件包有助于加强系统安全性以及排除系统运行漏洞。这份HOWTO指南介绍了如何在你的系统上安装cron job来每周更新你的系统以及删除任何安装後不曾使用的软件包。这份文档假设你的系统基于最普遍或最常见的宽带环境,不是拨号上网、Internet连接。 | ||
==== | ==== 新建周期性cron Job文件 ==== | ||
首先你需要新建cron job文件。你可以使用简单的文本编辑器创建并保存到你的主文件夹。在Ubuntu系统中,打开应用程序>附件>文本编辑器。在编辑器中,输入下列内容: | |||
<pre>#!/bin/bash | <pre>#!/bin/bash | ||
apt-get | apt-get update | ||
apt-get upgrade -y | apt-get upgrade -y | ||
apt-get autoclean | apt-get autoclean | ||
</pre> | </pre> | ||
然後保存文件并以类似于“autoupdt”命名。默认文件夹应该是你的主文件夹,但请确认一下。(下面的步骤假设该文件保存在你的主文件夹。) | |||
==== | ==== 移动Cron Job文件到Cron.Weekly ==== | ||
现在你已经创建了cron job文件,需要把它移动到cron weekly文件夹才能使它每周自动运行。为此,你需要打开命令行终端。在Ubuntu中,单击应用程序>系统工具>终端。现在你应该能看到终端提示符。在提示符处输入“ls”并按下回车键(某些键盘是返回键)。在列表中应该可以看到你新建的文件“autoupdt”。 | |||
<pre>user@system:~$cd ~ | <pre>user@system:~$cd ~ | ||
user@system:~$ls | user@system:~$ls | ||
</pre> | </pre> | ||
现在我们已经确认文件存在,我们需要将它移动到正确的文件夹。在提示符後输入以下命令来移动文件: | |||
<pre>user@system:~$sudo mv autoupdt /etc/ | <pre>user@system:~$sudo mv autoupdt /etc/cron.weekly | ||
</pre> | </pre> | ||
(你要正确输入你的sudo密码,也就是你的个人密码。)现在我们需要确认文件已被移至Cron文件夹。在提示符後输入: | |||
<pre>user@system:~$cd /etc/ | <pre>user@system:~$cd /etc/cron.weekly | ||
user@system:~$ls | user@system:~$ls | ||
</pre> | </pre> | ||
你应该能在列表中看到“autoupdt”。(如果没有,再试一下先前的移动命令。) | 你应该能在列表中看到“autoupdt”。(如果没有,再试一下先前的移动命令。) | ||
==== | ==== 使Cron Job文件可执行 ==== | ||
现在文件已经创建并准备由cron每周运行,我们还需要使文件可执行使得它能被运行。因为你已经处于cron.weekly文件夹,你只需要输入一下命令: | |||
<pre>user@system:~$sudo chmod 755 autoupdt | <pre>user@system:~$sudo chmod 755 autoupdt | ||
</pre> | </pre> | ||
第64行: | 第64行: | ||
==== 完成 ==== | ==== 完成 ==== | ||
由于文件是可执行的,所以任务完成。cron job会每周运行并升级你的源列表(检查是否有可更新的软件包),发现并按需要升级软件包,然後清理旧的、安装後不曾使用的软件包。你仍旧可以使用新立得软件包管理器或命令apt-get,但现在你可以休息一下因为每周自动更新。 | |||
==== 二选一:使用Aptitude记录软件包更新记录 ==== | ==== 二选一:使用Aptitude记录软件包更新记录 ==== | ||
第82行: | 第82行: | ||
aptitude clean >> ${tmpfile} 2>&1 | aptitude clean >> ${tmpfile} 2>&1 | ||
mail -s "Aptitude | mail -s "Aptitude cron $(data)" root < ${tmpfile} | ||
rm -f ${tmpfile} | rm -f ${tmpfile} | ||
</pre> | </pre> |
2010年11月29日 (一) 23:26的最新版本
文章出处: |
{{#if: | {{{2}}} | https://help.ubuntu.com/community/AutoWeeklyUpdateHowTo }} |
点击翻译: |
English {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/af | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|Afrikaans| [[::AutoWeeklyUpdateHowTo/zh/af|Afrikaans]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/ar | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|العربية| [[::AutoWeeklyUpdateHowTo/zh/ar|العربية]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/az | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|azərbaycanca| [[::AutoWeeklyUpdateHowTo/zh/az|azərbaycanca]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/bcc | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|جهلسری بلوچی| [[::AutoWeeklyUpdateHowTo/zh/bcc|جهلسری بلوچی]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/bg | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|български| [[::AutoWeeklyUpdateHowTo/zh/bg|български]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/br | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|brezhoneg| [[::AutoWeeklyUpdateHowTo/zh/br|brezhoneg]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/ca | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|català| [[::AutoWeeklyUpdateHowTo/zh/ca|català]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/cs | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|čeština| [[::AutoWeeklyUpdateHowTo/zh/cs|čeština]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/de | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|Deutsch| [[::AutoWeeklyUpdateHowTo/zh/de|Deutsch]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/el | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|Ελληνικά| [[::AutoWeeklyUpdateHowTo/zh/el|Ελληνικά]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/es | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|español| [[::AutoWeeklyUpdateHowTo/zh/es|español]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/fa | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|فارسی| [[::AutoWeeklyUpdateHowTo/zh/fa|فارسی]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/fi | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|suomi| [[::AutoWeeklyUpdateHowTo/zh/fi|suomi]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/fr | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|français| [[::AutoWeeklyUpdateHowTo/zh/fr|français]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/gu | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|ગુજરાતી| [[::AutoWeeklyUpdateHowTo/zh/gu|ગુજરાતી]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/he | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|עברית| [[::AutoWeeklyUpdateHowTo/zh/he|עברית]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/hu | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|magyar| [[::AutoWeeklyUpdateHowTo/zh/hu|magyar]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/id | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|Bahasa Indonesia| [[::AutoWeeklyUpdateHowTo/zh/id|Bahasa Indonesia]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/it | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|italiano| [[::AutoWeeklyUpdateHowTo/zh/it|italiano]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/ja | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|日本語| [[::AutoWeeklyUpdateHowTo/zh/ja|日本語]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/ko | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|한국어| [[::AutoWeeklyUpdateHowTo/zh/ko|한국어]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/ksh | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|Ripoarisch| [[::AutoWeeklyUpdateHowTo/zh/ksh|Ripoarisch]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/mr | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|मराठी| [[::AutoWeeklyUpdateHowTo/zh/mr|मराठी]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/ms | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|Bahasa Melayu| [[::AutoWeeklyUpdateHowTo/zh/ms|Bahasa Melayu]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/nl | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|Nederlands| [[::AutoWeeklyUpdateHowTo/zh/nl|Nederlands]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/no | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|norsk| [[::AutoWeeklyUpdateHowTo/zh/no|norsk]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/oc | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|occitan| [[::AutoWeeklyUpdateHowTo/zh/oc|occitan]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/pl | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|polski| [[::AutoWeeklyUpdateHowTo/zh/pl|polski]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/pt | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|português| [[::AutoWeeklyUpdateHowTo/zh/pt|português]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/ro | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|română| [[::AutoWeeklyUpdateHowTo/zh/ro|română]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/ru | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|русский| [[::AutoWeeklyUpdateHowTo/zh/ru|русский]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/si | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|සිංහල| [[::AutoWeeklyUpdateHowTo/zh/si|සිංහල]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/sq | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|shqip| [[::AutoWeeklyUpdateHowTo/zh/sq|shqip]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/sr | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|српски / srpski| [[::AutoWeeklyUpdateHowTo/zh/sr|српски / srpski]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/sv | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|svenska| [[::AutoWeeklyUpdateHowTo/zh/sv|svenska]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/th | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|ไทย| [[::AutoWeeklyUpdateHowTo/zh/th|ไทย]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/tr | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|Türkçe| [[::AutoWeeklyUpdateHowTo/zh/tr|Türkçe]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/vi | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|Tiếng Việt| [[::AutoWeeklyUpdateHowTo/zh/vi|Tiếng Việt]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/yue | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|粵語| [[::AutoWeeklyUpdateHowTo/zh/yue|粵語]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/zh | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|中文| [[::AutoWeeklyUpdateHowTo/zh/zh|中文]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/zh-hans | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|中文(简体)| [[::AutoWeeklyUpdateHowTo/zh/zh-hans|中文(简体)]]}}|}} {{#ifexist: {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo | UbuntuHelp:AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/zh-hant | • {{#if: UbuntuHelp:AutoWeeklyUpdateHowTo|中文(繁體)| [[::AutoWeeklyUpdateHowTo/zh/zh-hant|中文(繁體)]]}}|}} |
{{#ifeq:UbuntuHelp:AutoWeeklyUpdateHowTo|:AutoWeeklyUpdateHowTo/zh|请不要直接编辑翻译本页,本页将定期与来源同步。}} |
{{#ifexist: :AutoWeeklyUpdateHowTo/zh/zh | | {{#ifexist: AutoWeeklyUpdateHowTo/zh/zh | | {{#ifeq: {{#titleparts:AutoWeeklyUpdateHowTo/zh|1|-1|}} | zh | | }} }} }} {{#ifeq: {{#titleparts:AutoWeeklyUpdateHowTo/zh|1|-1|}} | zh | | }}
如何每周自动更新
使用cron-apt自动更新软件包
软件包cron-apt被设计为自动更新软件包列表和下载已更新的软件包。因此,它主要使用命令
apt-get upgrade
和
apt-get dist-upgrade -d
。
安装cron-apt
你可以从Universe Repositories得到cron-apt。
使cron-apt定期运行
为了使cron-apt定期地运行,创建一个到/etc/cron.daily或者/etc/cron.weekly的链接
sudo ln -s /usr/sbin/cron-apt /etc/cron.daily
cron-apt只下载新的软件包,你需要手动运行来安装它们
sudo apt-get dist-upgrade
。
* 如果是使用cron-apt,你不需要参照如下步骤。
使用cron和apt-get每周自动升级软件包
警告:就任何的系统变化,都有可能发生新的或附加错误。请确保备份你的数据和设置!由自己承担使用本文档的後果。定期更新你的Ubuntu(或基于Debian)的软件包有助于加强系统安全性以及排除系统运行漏洞。这份HOWTO指南介绍了如何在你的系统上安装cron job来每周更新你的系统以及删除任何安装後不曾使用的软件包。这份文档假设你的系统基于最普遍或最常见的宽带环境,不是拨号上网、Internet连接。
新建周期性cron Job文件
首先你需要新建cron job文件。你可以使用简单的文本编辑器创建并保存到你的主文件夹。在Ubuntu系统中,打开应用程序>附件>文本编辑器。在编辑器中,输入下列内容:
#!/bin/bash apt-get update apt-get upgrade -y apt-get autoclean
然後保存文件并以类似于“autoupdt”命名。默认文件夹应该是你的主文件夹,但请确认一下。(下面的步骤假设该文件保存在你的主文件夹。)
移动Cron Job文件到Cron.Weekly
现在你已经创建了cron job文件,需要把它移动到cron weekly文件夹才能使它每周自动运行。为此,你需要打开命令行终端。在Ubuntu中,单击应用程序>系统工具>终端。现在你应该能看到终端提示符。在提示符处输入“ls”并按下回车键(某些键盘是返回键)。在列表中应该可以看到你新建的文件“autoupdt”。
user@system:~$cd ~ user@system:~$ls
现在我们已经确认文件存在,我们需要将它移动到正确的文件夹。在提示符後输入以下命令来移动文件:
user@system:~$sudo mv autoupdt /etc/cron.weekly
(你要正确输入你的sudo密码,也就是你的个人密码。)现在我们需要确认文件已被移至Cron文件夹。在提示符後输入:
user@system:~$cd /etc/cron.weekly user@system:~$ls
你应该能在列表中看到“autoupdt”。(如果没有,再试一下先前的移动命令。)
使Cron Job文件可执行
现在文件已经创建并准备由cron每周运行,我们还需要使文件可执行使得它能被运行。因为你已经处于cron.weekly文件夹,你只需要输入一下命令:
user@system:~$sudo chmod 755 autoupdt
(你还需要再一次确认密码。)
完成
由于文件是可执行的,所以任务完成。cron job会每周运行并升级你的源列表(检查是否有可更新的软件包),发现并按需要升级软件包,然後清理旧的、安装後不曾使用的软件包。你仍旧可以使用新立得软件包管理器或命令apt-get,但现在你可以休息一下因为每周自动更新。
二选一:使用Aptitude记录软件包更新记录
Apt-get并不在记录文件内写下具体变化。如果postfix已安装,apptitude记录到/var/log/apptitude的内容可以发送邮件报告至系统管理员。如上面的例子,创建脚本/etc/cron.weekly/audoupdt并设置其为可执行:
#!/bin/bash tmpfile=$(mktemp) echo "aptitude update" >> ${tmpfile} aptitude update >> ${tmpfile} 2>&1 echo "" >> ${tmpfile} echo "aptitude dist-upgrade" >> ${tmpfile} aptitude -y dist-upgrade >> ${tmpfile} 2>&1 echo "" >> ${tmpfile} echo "aptitude clean" >> ${tmpfile} aptitude clean >> ${tmpfile} 2>&1 mail -s "Aptitude cron $(data)" root < ${tmpfile} rm -f ${tmpfile}
这里有一个有用的脚本(基于上面的)如果你没有安装sendmail或postfix。它记录所有aptitude的输出并手动通过你指定的邮件服务发送一封邮件。你必须指定收件人。同上面的例子,创建脚本/etc/cron.weekly/autoupde并使其可执行:
#!/bin/bash # # use aptitude to automatically install updates. log and email any # changes. # # # variables to change # # address to send results to [email protected] # host name of smtp server MAIL=mail.yourisp.com # # script is below here (do not change) # tmpfile=$(mktemp) # # smtp setup commands # echo "helo $(hostname)" >> ${tmpfile} echo "mail from: root@$(hostname)" >> ${tmpfile} echo "rcpt to: $MAILTO" >> ${tmpfile} echo 'data'>> ${tmpfile} echo "subject: Aptitude cron $(date)" >> ${tmpfile} # # actually run aptitude to do the updates, logging its output # echo "aptitude update" >> ${tmpfile} aptitude update >> ${tmpfile} 2>&1 echo "" >> ${tmpfile} echo "aptitude dist-upgrade" >> ${tmpfile} aptitude -y dist-upgrade >> ${tmpfile} 2>&1\echo "" >> ${tmpfile} echo "aptitude clean" >> ${tmpfile} aptitude clean >> ${tmpfile} 2>&1 # # i get a lot of escaped new lines in my output. so the following # removes them. this could be greatly improved tmpfile2=$(mktemp) cat ${tmpfile} | sed 's/\r\r/\n/g'|sed 's/\r//g' > ${tmpfile2} mv ${tmpfile2} ${tmpfile} # # smtp close commands # echo >> ${tmpfile} echo '.' >> ${tmpfile} echo 'quit' >> ${tmpfile} echo >> ${tmpfile} # # now send the email (and ignore output) # telnet $MAIL 25 < ${tmpfile} > /dev/null 2> /dev/null # # and remove temp files # rm -f ${tmpfile