Команда не запускается в скрипте таймера 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документации:

игнорировать несуществующие файлы и аргументы, никогда не запрашивать

Связанный контент