特殊:Badtitle/NS100:AutoWeeklyUpdateHowTo/zh
文章出处: |
{{#if: | {{{2}}} | https://help.ubuntu.com/community/AutoWeeklyUpdateHowTo }} |
点击翻译: |
English {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/af | • {{#if: AutoWeeklyUpdateHowTo|Afrikaans| [[::AutoWeeklyUpdateHowTo/zh/af|Afrikaans]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/ar | • {{#if: AutoWeeklyUpdateHowTo|العربية| [[::AutoWeeklyUpdateHowTo/zh/ar|العربية]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/az | • {{#if: AutoWeeklyUpdateHowTo|azərbaycanca| [[::AutoWeeklyUpdateHowTo/zh/az|azərbaycanca]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/bcc | • {{#if: AutoWeeklyUpdateHowTo|جهلسری بلوچی| [[::AutoWeeklyUpdateHowTo/zh/bcc|جهلسری بلوچی]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/bg | • {{#if: AutoWeeklyUpdateHowTo|български| [[::AutoWeeklyUpdateHowTo/zh/bg|български]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/br | • {{#if: AutoWeeklyUpdateHowTo|brezhoneg| [[::AutoWeeklyUpdateHowTo/zh/br|brezhoneg]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/ca | • {{#if: AutoWeeklyUpdateHowTo|català| [[::AutoWeeklyUpdateHowTo/zh/ca|català]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/cs | • {{#if: AutoWeeklyUpdateHowTo|čeština| [[::AutoWeeklyUpdateHowTo/zh/cs|čeština]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/de | • {{#if: AutoWeeklyUpdateHowTo|Deutsch| [[::AutoWeeklyUpdateHowTo/zh/de|Deutsch]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/el | • {{#if: AutoWeeklyUpdateHowTo|Ελληνικά| [[::AutoWeeklyUpdateHowTo/zh/el|Ελληνικά]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/es | • {{#if: AutoWeeklyUpdateHowTo|español| [[::AutoWeeklyUpdateHowTo/zh/es|español]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/fa | • {{#if: AutoWeeklyUpdateHowTo|فارسی| [[::AutoWeeklyUpdateHowTo/zh/fa|فارسی]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/fi | • {{#if: AutoWeeklyUpdateHowTo|suomi| [[::AutoWeeklyUpdateHowTo/zh/fi|suomi]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/fr | • {{#if: AutoWeeklyUpdateHowTo|français| [[::AutoWeeklyUpdateHowTo/zh/fr|français]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/gu | • {{#if: AutoWeeklyUpdateHowTo|ગુજરાતી| [[::AutoWeeklyUpdateHowTo/zh/gu|ગુજરાતી]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/he | • {{#if: AutoWeeklyUpdateHowTo|עברית| [[::AutoWeeklyUpdateHowTo/zh/he|עברית]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/hu | • {{#if: AutoWeeklyUpdateHowTo|magyar| [[::AutoWeeklyUpdateHowTo/zh/hu|magyar]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/id | • {{#if: AutoWeeklyUpdateHowTo|Bahasa Indonesia| [[::AutoWeeklyUpdateHowTo/zh/id|Bahasa Indonesia]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/it | • {{#if: AutoWeeklyUpdateHowTo|italiano| [[::AutoWeeklyUpdateHowTo/zh/it|italiano]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/ja | • {{#if: AutoWeeklyUpdateHowTo|日本語| [[::AutoWeeklyUpdateHowTo/zh/ja|日本語]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/ko | • {{#if: AutoWeeklyUpdateHowTo|한국어| [[::AutoWeeklyUpdateHowTo/zh/ko|한국어]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/ksh | • {{#if: AutoWeeklyUpdateHowTo|Ripoarisch| [[::AutoWeeklyUpdateHowTo/zh/ksh|Ripoarisch]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/mr | • {{#if: AutoWeeklyUpdateHowTo|मराठी| [[::AutoWeeklyUpdateHowTo/zh/mr|मराठी]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/ms | • {{#if: AutoWeeklyUpdateHowTo|Bahasa Melayu| [[::AutoWeeklyUpdateHowTo/zh/ms|Bahasa Melayu]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/nl | • {{#if: AutoWeeklyUpdateHowTo|Nederlands| [[::AutoWeeklyUpdateHowTo/zh/nl|Nederlands]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/no | • {{#if: AutoWeeklyUpdateHowTo|norsk| [[::AutoWeeklyUpdateHowTo/zh/no|norsk]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/oc | • {{#if: AutoWeeklyUpdateHowTo|occitan| [[::AutoWeeklyUpdateHowTo/zh/oc|occitan]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/pl | • {{#if: AutoWeeklyUpdateHowTo|polski| [[::AutoWeeklyUpdateHowTo/zh/pl|polski]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/pt | • {{#if: AutoWeeklyUpdateHowTo|português| [[::AutoWeeklyUpdateHowTo/zh/pt|português]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/ro | • {{#if: AutoWeeklyUpdateHowTo|română| [[::AutoWeeklyUpdateHowTo/zh/ro|română]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/ru | • {{#if: AutoWeeklyUpdateHowTo|русский| [[::AutoWeeklyUpdateHowTo/zh/ru|русский]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/si | • {{#if: AutoWeeklyUpdateHowTo|සිංහල| [[::AutoWeeklyUpdateHowTo/zh/si|සිංහල]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/sq | • {{#if: AutoWeeklyUpdateHowTo|shqip| [[::AutoWeeklyUpdateHowTo/zh/sq|shqip]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/sr | • {{#if: AutoWeeklyUpdateHowTo|српски / srpski| [[::AutoWeeklyUpdateHowTo/zh/sr|српски / srpski]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/sv | • {{#if: AutoWeeklyUpdateHowTo|svenska| [[::AutoWeeklyUpdateHowTo/zh/sv|svenska]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/th | • {{#if: AutoWeeklyUpdateHowTo|ไทย| [[::AutoWeeklyUpdateHowTo/zh/th|ไทย]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/tr | • {{#if: AutoWeeklyUpdateHowTo|Türkçe| [[::AutoWeeklyUpdateHowTo/zh/tr|Türkçe]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/vi | • {{#if: AutoWeeklyUpdateHowTo|Tiếng Việt| [[::AutoWeeklyUpdateHowTo/zh/vi|Tiếng Việt]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/yue | • {{#if: AutoWeeklyUpdateHowTo|粵語| [[::AutoWeeklyUpdateHowTo/zh/yue|粵語]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/zh | • {{#if: AutoWeeklyUpdateHowTo|中文| [[::AutoWeeklyUpdateHowTo/zh/zh|中文]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/zh-hans | • {{#if: AutoWeeklyUpdateHowTo|中文(简体)| [[::AutoWeeklyUpdateHowTo/zh/zh-hans|中文(简体)]]}}|}} {{#ifexist: {{#if: AutoWeeklyUpdateHowTo | AutoWeeklyUpdateHowTo | {{#if: | :}}AutoWeeklyUpdateHowTo/zh}}/zh-hant | • {{#if: AutoWeeklyUpdateHowTo|中文(繁體)| [[::AutoWeeklyUpdateHowTo/zh/zh-hant|中文(繁體)]]}}|}} |
{{#ifeq: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 | | }}
如何每周自动更新
使用corn-apt自动更新软件包
软件包corn-apt被设计为自动更新软件包列表和下载已更新的软件包。因此,它主要使用命令
apt-get upgrade
和
apt-get dist-upgrade -d
。
安装corn-apt
你可以从Universe Repositories得到corn-apt。
使corn-apt定期运行
为了使corn-apt定期地运行,创建一个到/etc/corn.daily或者/etc/corn.weekly的链接
sudo ln -s /usr/sbin/corn-apt /etc/corn.daily
Corn-apt只下载新的软件包,你需要手动运行来安装它们
sudo apt-get dist-upgrade
。
* 如果是使用corn-apt,你不需要参照如下步骤。
使用corn和apt-get每周自动升级软件包
警告:就任何的系统变化,都有可能发生新的或附加错误。请确保备份你的数据和设置!由自己承担使用本文档的後果。定期更新你的Ubuntu(或基于Debian)的软件包有助于加强系统安全性以及排除系统运行漏洞。这份HOWTO指南介绍了如何在你的系统上安装corn job来每周更新你的系统以及删除任何安装後不曾使用的软件包。这份文档假设你的系统基于最普遍或最常见的宽带环境,不是拨号上网、Internet连接。
新建周期性Corn Job文件
首先你需要新建corn job文件。你可以使用简单的文本编辑器创建并保存到你的主文件夹。在Ubuntu系统中,打开应用程序>附件>文本编辑器。在编辑器中,输入下列内容:
#!/bin/bash apt-get upgrade apt-get upgrade -y apt-get autoclean
然後保存文件并以类似于“autoupdt”命名。默认文件夹应该是你的主文件夹,但请确认一下。(下面的步骤假设该文件保存在你的主文件夹。)
移动Corn Job文件到Corn.Weekly
现在你已经创建了corn job文件,需要把它移动到corn weekly文件夹才能使它每周自动运行。为此,你需要打开命令行终端。在Ubuntu中,单击应用程序>系统工具>终端。现在你应该能看到终端提示符。在提示符处输入“ls”并按下回车键(某些键盘是返回键)。在列表中应该可以看到你新建的文件“autoupdt”。
user@system:~$cd ~ user@system:~$ls
现在我们已经确认文件存在,我们需要将它移动到正确的文件夹。在提示符後输入以下命令来移动文件:
user@system:~$sudo mv autoupdt /etc/corn.weekly
(你要正确输入你的sudo密码,也就是你的个人密码。)现在我们需要确认文件已被移至Corn文件夹。在提示符後输入:
user@system:~$cd /etc/corn.weekly user@system:~$ls
你应该能在列表中看到“autoupdt”。(如果没有,再试一下先前的移动命令。)
使Corn Job文件可执行
现在文件已经创建并准备由corn每周运行,我们还需要使文件可执行使得它能被运行。因为你已经处于corn.weekly文件夹,你只需要输入一下命令:
user@system:~$sudo chmod 755 autoupdt
(你还需要再一次确认密码。)
完成
由于文件是可执行的,所以任务完成。Corn 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 corn $(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