一、循環調度執行
1、檢查cron狀態
systemctl status crond
2、創建要執行的shell腳本
??vim /home/cleanup_docker.sh
#! /bin/bash
# 清理臨時文件
echo $(date +"%H:%M:%S") "執行docker清理命令..."
docker system prune -af
-a??清理包括未使用的鏡像
-f??跳過確認提示,強制執行清理操作
?
3、打開cron任務編輯頁面
crontab -e
4、編輯定期任務
0 0 ? * Sun /home/cleanup_docker.sh >> /home/cronlogs/cronlog.log 2>&1
0 0 ? * Sun? // 每周日00:00:00執行一次
/home/cleanup_docker.sh // 執行的shell腳本根路徑
>> /home/cronlogs/cronlog.log 2>&1? // 將日志文件打印到指定文件(可以不要)
二、常用命令
1、cron相關命令
(1)啟動 sudo systemctl start crond
(2)停止 sudo systemctl stop crond
(3)查看狀態??sudo systemctl status crond
(4)重啟?systemctl restart crond
2、計劃任務
(1)存儲位置 /var/spool/cron
(2)查看任務 crontab -l
(3)刪除任務 crontab -r
3、日志存儲位置
? /var/spool/mail
? /var/log/cron
三、可能出現的問題
1. 提示權限不足
解決:用戶沒有腳本執行權限,需要授予
chmod u+x cleanup_docker.sh
2. Failed to start cron.service: Unit cron.service not found.
解決:啟動cron服務命令拼寫錯誤,正確的是
sudo service crond start
參考:
Linux 計劃任務與日志管理_linux cron日志-CSDN博客