
Tengo un script de respaldo para Mysql que anteriormente se ejecutaba usando CRON sin problemas. Migré para usar el temporizador systemd. El script comienza eliminando los archivos de las semanas anteriores antes de la copia, usando este comando;
find /home/NAS2/$SRVER/backups/$_DAY -type f -exec rm {} \;
Lo que obtengo en el registro de mensajes es esto;
percona_backup: rm: cannot remove ‘/home/NAS2/o71/backups/Monday/mysql/proc.ibd’: No such file or directory
SELinux está configurado para aplicar. Debo mencionar que hay 3 servidores que ejecutan una variación del mismo script, solo 2 fallan con este error. Todo se reduce a este único comando.
Entonces, ¿por qué esto funcionaría como CRON pero fallaría con el temporizador systemd? ¿Por qué funcionaría en 1, pero el mismo comando falla en otros 2 servidores?
Respuesta1
Si no le importa no poder eliminar archivos que ya se han eliminado, puede agregar la --force
opción a rm
. De los man rm
documentos:
ignorar archivos y argumentos inexistentes, nunca preguntar