Linux Anacron 的基本原理和安裝
Linux Anacron 的基本原理
Cron 是作為守護(hù)進(jìn)程運(yùn)行的,與此不同的是,Linux Anacron 是作為普通進(jìn)程運(yùn)行并終止的。Anacron 維護(hù)了一組應(yīng)當(dāng)運(yùn)行的作業(yè),每個(gè)作業(yè)都一個(gè)相關(guān)的運(yùn)行間隔。每次運(yùn)行時(shí),Linux Anacron 將檢查作業(yè)列表以了解自***一次運(yùn)行某個(gè)作業(yè)后,是否超過了該作業(yè)的指定時(shí)間間隔。如果是的話,Anacron 將運(yùn)行該作業(yè)。
這種設(shè)計(jì)方法意味著 Linux Anacron 必須定期運(yùn)行。運(yùn)行 Anacron 小節(jié)描述了兩種方法。每種方法各有利弊。一般來講,Anacron 是由根用戶運(yùn)行的,但是普通用戶可能也使用 Linux Anacron ,就像在 Linux Anacron 的個(gè)人應(yīng)用 中描述的那樣。
獲取并安裝 Linux Anacron
大多數(shù) Linux 發(fā)行版都在其軟件包中包括了 Anacron。因此,通過輸入 yum install anacron、apt-get install anacron 或類似的內(nèi)容,就可以安裝該軟件。如果您的發(fā)行版沒有包含 Linux Anacron 包,那么需要從源代碼中下載并安裝該包。不幸的是,Anacron Web 站點(diǎn)并沒有包含 tarball 鏈接;您需要使用 Concurrent Versions System (CVS) 獲得下載:
清單 1. 從 CVS 下載 Anacron
cvs -d:pserver:anonymous@anacron.cvs.sourceforge.net:/cvsroot/anacron login
cvs -z3 -d:pserver:anonymous@anacron.cvs.sourceforge.net:/cvsroot/anacron co -P anacron
輸入***條命令后,將作為 guest 用戶登錄到 CVS 庫。這將提示您輸入密碼。只需要按下 Enter 鍵(guest 訪問不需要用到密碼)。第二個(gè)命令將把 Anacron 源代碼下載到名為 anacron 的子目錄中。
使用 CVS 獲得 Linux Anacron 的一個(gè)缺點(diǎn)就是有時(shí)候這種方法并不可靠。如果軟件沒有得到徹底的編譯,您可以嘗試自己解決問題,否則需要等待一兩天直到他人幫助您修復(fù)問題。如果問題繼續(xù)存在,那么***追蹤預(yù)編譯的二進(jìn)制文件,即使這意味著尋找另一個(gè)發(fā)行版的文件。
Anacron 中的一個(gè)常見 bug 是 gregor.c:79: error: assignment of read-only variable 'isleap'。修復(fù)這個(gè) bug 的方法是編輯 gregor.c 文件第 79 行,并刪除該行開始部分的字符串 const。
獲得 Linux Anacron 源代碼后,可以按照下面的步驟進(jìn)行安裝(注意,如果已經(jīng)為發(fā)行版安裝了預(yù)編譯的二進(jìn)制文件,則不需要執(zhí)行這些步驟):
切換到由 cvs 創(chuàng)建的 Linux Anacron 目錄。
作為一個(gè)可選步驟,編輯 Makefile 以調(diào)整軟件安裝目錄或其他編譯細(xì)節(jié)。
輸入 make 以構(gòu)建軟件。
作為 root,輸入 make install 以安裝軟件。
安裝完軟件后,不管是使用發(fā)行版的包管理,還是從源代碼中安裝,都應(yīng)該繼續(xù)進(jìn)行配置并運(yùn)行 Anacron。
【編輯推薦】