【全局(系統)配置文件】
復制代碼代碼如下:
/etc/crontab
Linux 主要的配置文件都在 etc 目錄下。
復制代碼代碼如下:
cd /etc
ls cron*
復制代碼代碼如下:
vim crontab
進入 cron.d(服務)
復制代碼代碼如下:
cd cron.d
使用 cat 命令查看 sysstat 文件(cat命令是linux下的一個文本輸出命令,通常是用於觀看某個文件的內容的 )
復制代碼代碼如下:
cat sysstat
會發現,查看的內容和 crontab -l 時的內容很相似
在 crontab 載入配置文件的時候,會把 cron.d 下面的文件裡面的配置信息載入成為 root 用戶的計劃任務,如果用 crontab -e 命令去編輯它的時候,實際上會破壞它原始文件配置的內容,,所以一般情況下是不願意使用 crontab -e 的。如果直接編輯文件:vim sysstat,此時再使用 crontab -l,會發現編輯文件不會被直接載入(crontab -l 查看的內容不會改變),可以通過 crontab sysstat 的方式(crontab 後面跟一個文件的方式)把文件載入,然後再使用 crontab -l 查看,此時文件裡面的內容覆蓋了原來 crontab -l 裡面所有的東西,所以在用 crontab 後面跟一個文件這種形式導入的時候要非常小心,因為 crontab -e 裡面的內容都會被文件復寫。要使一個計劃任務不會被丟失,通常情況下不是使用 crontab -e,而是在一個文件中去添加,然後再載入,這樣系統重啟的時候,這些文件也會被自動載入到計劃任務列表中,注意這種方式是以 root 用戶的方式載入的。
在使用 ls cron* 的命令時,會有個一 cron.d 的目錄,這是配置文件的目錄。它下面的 sysstat 和 etc 目錄下的 crontab 文件是很類似的,
contab 不能編輯系統級的配置文件裡面的計劃任務(例如在 cron.d 下新建計劃任務文件 crontst,裡面寫入 */1 * * * * dee echo "File in /ect/cron.d/crontst****",然後:wq!保存退出,這時可以使用 tail -f /var/log/cron 進行監視,可以發現這條計劃任務的執行情況,但是使用 crontab -l 或者 crontab -e 就不能列出這條計劃任務了)。
【補充】
先使用
復制代碼代碼如下:
crontab -l
再使用
復制代碼代碼如下:
cat /var/spool/cron/root
會發現兩個命令的輸出結果一樣:
實際上 crontab 操作的時候,操作的是 /var/spool/cron/root 這個文件。
可以使用
復制代碼代碼如下:
ls /var/spool/cron/root
查看所有用戶的計劃任務。
【Root 配置文件】
只有 Root 用戶才會把這些內容載入到計劃任務表中