某台服務器某賬號的 crontab
任務被清空,原因不明。同時,該服務器上的 crontab
任務備份未開啟。故思考如何恢復 crontab
任務。
經查,CentOS 系統的 crontab
任務的日志,打印在 /var/log/cron
之中。考慮過濾日志:
1 |
cat /var/log/cron* | grep CMD | awk -F'CMD' '{print $2}' | awk -F'[(|)]' '{print $2}' | sort -u |
由此得到系統記錄過的 crontab
執行命令,過濾其他賬號的命令后即可追回目標賬號的 crontab
任務。
grep CMD 可以改為 grep "(root) CMD" root 為某賬號的crontab 。
此外,考慮備份 crontab
;腳本如下:
backup_crontab.sh
1 |
#!/usr/bin/env bash |
轉