命令在 Systemd 計時器腳本中執行失敗

命令在 Systemd 計時器腳本中執行失敗

我有 Mysql 的備份腳本,以前使用 CRON 運行沒有問題。我遷移到使用 systemd 計時器。該腳本首先使用此命令刪除複製前幾週的檔案;

find /home/NAS2/$SRVER/backups/$_DAY -type f -exec rm {} \;

我在訊息日誌中得到的是這樣的;

percona_backup: rm: cannot remove ‘/home/NAS2/o71/backups/Monday/mysql/proc.ibd’: No such file or directory

SELinux 設定為強制執行。我應該提到,有 3 個伺服器正在運行同一腳本的變體,只有 2 個伺服器因此錯誤而失敗。一切都歸結為這項命令。

那麼,為什麼它可以作為 CRON 工作,但使用 systemd 計時器失敗呢?為什麼它可以在 1 台伺服器上運行,但相同的命令在另外 2 台伺服器上失敗?

答案1

如果您不關心刪除已刪除的檔案失敗,那麼您可以將該--force選項新增至rm.來自文件man rm

忽略不存在的文件和參數,從不提示

相關內容