Cron

crontab 無法從日誌文件夾中刪除舊文件

  • February 12, 2020

我在我的 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 扔給記錄器。

引用自:https://serverfault.com/questions/1002706