Systemd 타이머 스크립트에서 명령이 실행되지 않습니다.

Systemd 타이머 스크립트에서 명령이 실행되지 않습니다.

CRON을 사용하여 문제 없이 실행되는 Mysql 백업 스크립트가 있습니다. 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으로 작동하지만 시스템 타이머에서는 실패하는 이유는 무엇입니까? 1개의 서버에서는 작동하지만 다른 2개의 서버에서는 동일한 명령이 실패하는 이유는 무엇입니까?

답변1

삭제된 파일 삭제 실패에 대해 신경 쓰지 않는다면 --force해당 옵션을 rm설명서 에 추가할 수 있습니다 man rm.

존재하지 않는 파일과 매개변수를 무시하고 메시지를 표시하지 않음

관련 정보