Cron
crontab 無法從日誌文件夾中刪除舊文件
我在我的 crontab 中有這一行來刪除舊文件:
1 * * * * find /var/log/abc/ -mtime +7 -type f -delete
不幸的是,它不起作用。
我試圖授予所有使用者使用清除該文件夾的權限
chmod +777 /var/log/abc
但是 chmod 沒有用。我還能嘗試什麼?
按照記錄輸出的建議,我發現這是在日誌中:
/bin/sh: 1: find: not found
所以我想我需要正確設置我的路徑……
作為一個好的做法,添加將執行此 crontab 的使用者。
1 * * * * root find /var/log/abc/ -mtime +7 -type f -delete
您是否證明該查找在 cron 之外正常工作?
嘗試手動執行,看看會發生什麼,cron沒有問題。
作為第二個良好實踐,嘗試記錄 cron 對 syslog 所做的事情,例如使用 logger:
1 * * * * root find /var/log/abc/ -mtime +7 -type f -delete 2>&1 | logger -t cron_find_delete
這
2>&1
最後將把 sterr 和 stdout 扔給記錄器。