anacron 是和 cron 相似的任務調度器,只不過它並不要求系統持續運行,它可以用來運行通常由 cron 運行的每日、每週、和每月的作業;
要使用 anacron 服務,你必須安裝了 anacron RPM 軟件包, anacron 服務必須在運行;
要判定該軟件包是否被安裝,使用 rpm -q anacron 命令
要判定該服務是否在運行,使用 /sbin/service anacron status 命令
Anacron與cron一樣用來調度重複的任務,週期性安排作業;
任務被列在配置文件 /etc/anacrontab 中。文件中的每一行都代表一項任務,格式是:
# /etc/anacrontab: configuration file for anacron
# See anacron(8) and anacrontab(5) for details.
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
1 65 cron.daily run-parts /etc/cron.daily
7 70 cron.weekly run-parts /etc/cron.weekly
30 75 cron.monthly run-parts /etc/cron.monthly
格式:period delay job-identifier command
Ø period — 命令執行的頻率(天數)
Ø delay — 延遲時間(分鐘)
Ø job-identifier — 任務的描述,用在 anacron 的消息中,並作爲作業時間戳文件的名稱,只能包括非空白的字符(除斜線外)。
Ø command — 要執行的命令
對於每項任務,anacron 先判定該任務是否已在配置文件的 period 字段中指定的期間內被執行了。如果它在給定期間內還沒有被執行,anacron 會等待 delay 字段中指定的分鐘數,然後執行 command 字段中指定的命令;
任務完成後,anacron 在 /var/spool/anacron 目錄內的時間戳文件中記錄日期;
三、at 和 batch 一次性作業任務
at 命令被用來在指定時間內調度一次性的任務;
batch 命令被用來在系統平均載量降到 0.8 以下時執行一次性的任務;
要使用 at 或 batch 命令,你必須安裝了 at RPM 軟件包,並且 atd 服務必須在運行
要判定該軟件包是否被安裝了,使用 rpm -q at 命令
要判定該服務是否在運行,使用 /sbin/service atd status 命令
程序對應的系統守護進程爲:atd
要在某一指定時間內調度一項一次性作業,鍵入 at time 命令。這裏的 time 是執行命令的時間
time 參數可以是下面格式中任何一種:
· HH:MM 格式 — 譬如,04:00 代表 4:00AM。如果時間已過,它就會在第二天的這一時間執行
· midnight — 代表 12:00AM
· noon — 代表 12:00PM
· teatime — 代表 4:00PM
· 英文月名 日期 年份 格式— 譬如,January 15 2002 代表 2002 年 1 月 15 日。年份可有可無
· MMDDYY、MM/DD/YY、或 MM.DD.YY 格式 — 譬如,011502 代表 2002 年 1 月 15 日
· now + 時間 — 時間以 minutes、hours、days、或 weeks 爲單位。譬如,now + 5 days 代表命令應該在 5 天之後的此時此刻執行
時間必須要被先指定,接着是可有可無的日期;
[root@localhost /]# at 17:00
warning: commands will be executed using (in order) a) $SHELL b) login shell c) /bin/sh
at>
at> 提示就會出現,鍵入要執行的命令,按 [Enter] 鍵,然後鍵入 Ctrl-D。你可以指定多條命令,或者,你也可以在提示後輸入 shell 腳本,在腳本的每一行後按 [Enter] 鍵,然後在空行處鍵入 Ctrl-D 來退出;
使用命令 atq 來查看等待運行的作業
如果這組命令或腳本試圖在標準輸出中顯示信息,該輸出會用電子郵件方式被郵寄給用戶;
要在系統平均負載量降到 0.8 以下時執行某項一次性的任務,使用 batch 命令;
鍵入 batch 命令後,at> 提示就會出現。鍵入要執行的命令,按 [Enter] 鍵,然後鍵入 Ctrl-D;類似於at命令的操作;
系統平均負載量一降到 0.8 以下,這組命令或腳本就會被執行;
如果這組命令或腳本試圖在標準輸出中顯示信息,該輸出會用電子郵件方式被郵寄給用戶;
batch 命令的用法能夠被制約
at 和 batch 的其它命令行選項包括:
選項 描述
-f 從文件中讀取命令或 shell 腳本,而非在提示後指定它們
-m 在作業完成後,給用戶發送電子郵件
-v 顯示作業將被執行的時間
4、控制對 at 和 batch 的使用
/etc/at.allow 和 /etc/at.deny 文件可以用來限制對 at 和 batch 命令的使用;
不論使用控制文件如何規定,根用戶都總是可以執行 at 和 batch 命令;
如果 at.allow 文件存在,只有其中列出的用戶才能使用 at 或 batch 命令,at.deny 文件會被忽略;
如果 at.allow 文件不存在,所有在 at.deny 文件中列出的用戶都被禁止使用 at 和 batch 命令;
5、一些文檔
用man可以看到;