檢查 cron 是否在 Linux 上工作的 4 種方法
cron 是 Linux 和類 Unix 操作系統的作業調度程序。它預裝在所有 Linux 發行版上,最適合自動執行重複性任務。
要使 cron 正常運行,您必須定期檢查該實用程序是否在您的系統上正常運行。您可以使用四種不同的方式來做到這一點,包括檢查 cron 服務狀態、檢查 cron 日誌、運行測試 cron 作業以及列出系統上正在運行的進程。
什麼是 cron?
靜默作業處理程序 cron 會自動執行和安排系統任務。配置和維護軟件環境的用戶使用 cron 來安排命令或 shell 腳本等作業(也稱為 cron 作業)以固定時間或間隔定期運行。
cron 自動執行您可能需要經常執行的系統維護或管理任務。
如何檢查 cron 是否在 Linux 上工作
以下是您可以檢查 cron 是否正常工作的一些方法:
方法一:在Linux上查看cron服務狀態
檢查 cron 是否正常工作的一種方法是通過運行基本的 Linux 命令檢查 cron 服務的狀態。按Ctrl + Alt + T打開 Linux 終端並使用 systemctl 命令檢查 cron 的狀態:
sudo systemctl status cron
如果您看到以下輸出,這意味著 cron 處於活動狀態並且在您的系統上運行良好。
但是,如果 cron 處於非活動狀態,如下所示怎麼辦?
您可以像這樣啟動服務:
sudo service cron start
啟動 cron 服務後,啟用它,以便在每次系統重新啟動時啟動它:
sudo service cron enable
方法二:在Linux上查看cron日誌
檢查 cron 是否正常工作的另一種方法是檢查日誌文件。cron 日誌存儲在Linux 上的/var/log/syslog目錄中。
syslog 是 Linux 系統用來集中事件數據日誌的協議。然後訪問日誌以執行審計、監控、故障排除、報告和其他必要的 IT 操作任務。
您可以通過執行以下命令在 syslog 文件中查看 cron 作業日誌:
grep CRON /var/log/syslog
您將看到類似的輸出,表明 cron 運行正常並且其日誌存儲在日誌文件中:
由於 syslog 文件夾包含其他系統日誌以及 cron 日誌,因此僅檢查文件中與 cron 相關的日誌可能有點棘手。您可以通過創建一個單獨的日誌文件來解決此問題,該文件僅存儲出現在 syslog 文件中的 cron 條目。
為此,請使用 nano 編輯器打開以下文件:
nano /etc/rsyslog.d/50-default.conf
找到以以下內容開頭的行:
#cron.*
通過刪除哈希 ( # ) 符號取消註釋此行。然後,按Ctrl + X保存並退出文件,然後按Y並按Enter。
通過發出以下命令重新啟動 rsyslog 服務:
sudo service rsyslog restart
您現在將在位於/var/log目錄的cron.log文件中收到日誌。
如果您的終端無法獲取任何日誌,則可能意味著 cron 未運行。在這種情況下,請使用其他方法確認 cron 是否正在運行。
方法 3:在 Linux 上運行 cron 作業
您還可以通過簡單地創建測試 cron 作業並執行它來檢查 cron 是否正常工作。如果作業成功執行任務,則意味著它運行良好。
您首先需要創建一個 Bash 腳本。Bash 腳本允許您在 Linux 上自動執行日常任務。
讓我們創建一個 Bash 腳本來打印“my cronjob is working!” 成一個TXT文件。要創建文件,首先,使用以下命令找出您當前的工作目錄:
pwd
使用 touch 命令在當前目錄中創建一個文件:
touch file.txt
在此之後,使用 nano 創建一個 Bash 文件:
nano script.sh
將以下內容添加到文件中:
#! /usr/bin/bash
echo "my cronjob is working!" >> /home/username/file.txt
確保提供您創建的文本文件的正確位置。按Ctrl + X保存並退出文件,然後按Y,然後按Enter。
授予 Bash 腳本執行權限:
chmod +x script.sh
現在創建一個 cron 作業來執行腳本。為此,請使用以下命令打開 crontab 文件:
crontab -e
在文件末尾輸入以下行。
* * * * * /path/to/script.sh
五個星號對應執行時間,第一個星號代表分鐘,第二個星號代表小時,第三個星號代表日,第四個星號代表月,最後一個星號代表年。
文件中還提到了可執行文件的名稱及其路徑。
保存並關閉文件後,您將在終端上看到一條“ crontab: installing new crontab ”消息。
要檢查 cron 作業是否有效,請轉到file.txt目錄並使用 cat 在終端上打印其內容:
cat file.txt
這表明 cron 工作正常。
方法 4:檢查 Linux 上正在運行的進程
檢查 cron 守護程序是否正常工作的另一種方法是列出系統上正在運行的進程。您可以使用 ps 命令實現此目的。cron 守護進程將在輸出中顯示為 crond。
ps -ef | grep crond
這確認 cron 進程正在您的 Linux 系統上運行。
使用 cron 自動執行和安排系統任務
cron 是 Linux 上最重要的實用程序之一,可讓系統高效運行。有時您在排除系統問題時必須檢查 cron 是否正常工作。
您可以通過檢查 cron 日誌或查看系統上正在運行的進程來實現此目的。您還可以使用 systemctl 實用程序檢查 cron 狀態。除此之外,運行測試 cron 作業還可以告訴您服務是否正在運行。
cron 的平穩運行使您可以自動執行和安排日常系統作業。大多數 cron 作業都是由已安裝的應用程序自動創建的。自動化和調度任務可以提高整體系統性能並保持健康。
發佈留言