- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業務經營許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯網協會理事單位
- 安全聯盟認證網站身份V標記
- 域名注冊服務機構許可:滇D3-20230001
- 代理域名注冊服務機構:新網數碼
其只能執行一次性任務
其會自動加載部分環境變量
可以執行命令
可以執行腳本
作業有隊列,用單字母表示,默認為a隊列
作業計劃任務是以絕對序列值進行排序
任務結果會以郵件的形式通知用戶
其使?方法與at工具類似
最大的區別為:它會選擇系統在比較空閑的時間段執行任務
其可以循環執行任務,實現周期性任務
最小時間單位為分鐘
,如果需要到秒
級別,需要你是用外部機制
可以執行命令
可以執行腳本
每次的任務都會發送郵件至用戶通知
其依賴于crond守護進程及相關輔助工具,cronie
是其主程序包
[time]
格式
20:10 2015-10-30
HH:MM[YYYY-mm-dd]
noon
: 正午
midnight
: 午夜
teatime
: 下午4點
tomorrow
: 明天
now +# UNIT
* UNIT: min,hours,days,weeks
[options]
at -d 3
== atrm 3
:刪除第3號任務
at -f at.sh now+5min
-l
: 列出任務隊列,相當于atq
命令
-f FILE
: 從指定文件中讀取作業任務,不用交互式輸入
-d #
: 刪除任務
-c #
: 查看指定任務的內容
-q a|b|c|d
: 指定默認隊列
系統cron任務
直接編輯/etc/crontab文件
/etc/crontab
配置文件
配置命令
用戶cron任務(root用戶也不例外
)
crontab -e
/var/spool/cron/USERNAME
配置文件
配置命令
# .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # * * * * * user-name command to be executed
每一行定義一個周期性任務
此處的環境變量不同于用戶登錄后獲得的環境,因此,建議命令使用絕對路徑,或自定義path環境變量
執行結果郵件發送給想著用戶,即mailto=中定義的用戶
普通用戶不需要定義mailto參數,因為他的任務文件就以用戶名命名
共7個字段
如果命令中有%
這類的符號,需要轉義,但旋轉到單引號中的不用轉義
[options]
-e
: 編輯任務,建議使用crontab -e
,這樣可以幫忙檢查其錯誤
-l
: 列出所有任務
-r
: 移除所有任務,即刪除對應/var/spool/cron/USERNAME文件
-i
: 交互式,在使用-r刪除所有用戶時,提示用戶確認
-u USER
: root用戶可以為指定的用戶管理、指定任務
COMMAND > /dev/null : 將正確結果刪除,只返回錯誤輸出并發送郵件至用戶
COMMAND &> /dev/null : 不建議此操作
指定的某任務在指定的時間因關機未能執行,下次開機不會自動執行
如果某時間點因故未能按時執行,下次開機后無論是否到了相應時間點,都要補充執行一次,可使用anacron實現
每12小時備份一次/etc目錄至/backups目錄中,保存格式為etc-yyy-mm-dd-hh.tar.xz”
01 */12 * * * root tar Jcf /backups/etc-$(date +"\%F-\%H-\%S").tar.xz /etc/
每周2、4、7備份/var/log/secure文件至/logs目錄中,文件名格式為 secure-yyyymmdd
01 09 * * 2,4,7 root tar Jcf /logs/secure-$(date +"\%Y\%m\%d") /var/log/secure
每兩個小時取當前系統/proc/meminfo文件中以S或M開頭的行信息追加至/tmp/meminfo.txt文件中
01 */2 * * * root grep '^[M|S]' /proc/meminfo > /tmp/meminfo.txt
售前咨詢
售后咨詢
備案咨詢
二維碼
TOP