Ejecute un comando en un horario y verifique que se haya ejecutado

Quiero ejecutar un comando rsync todos los días o con más frecuencia para hacer una copia de seguridad de una raspbery pi en mi red en una unidad conectada a mi mac. Veo launchd, pero estoy muy confundido acerca de cómo hacer que funcione, y también me gustaría poder ver que el script se ha ejecutado, por ejemplo, cómo con la máquina del tiempo puede ver cuándo se realizó la última copia de seguridad, entonces Puedo comprobarlo.

Este es el comando que quiero ejecutar: rsync -avz -e ssh pi@10.0.0.4:/ /Volumes/PiBackup/Rsync

Cualquier ayuda sería muy apreciada. También tomaré cualquier metodología, cron, launchd, applescript, lo que sea que funcione bien.

Usualmente uso rsyncambas plataformas, pero hay algunas cosas que OS X "se niega" a ver. Consulte raspberrypi.stackexchange.com/questions/42950/… para una discusión similar. Sería mejor usar una unidad en el Pi (u otra máquina Linux).
¡Gracias por informarme! Quería que fuera a una unidad en mi Mac para que se hiciera una copia de seguridad en la nube con backblaze para redundancia, pero también puedo usar una pequeña memoria USB en el pi.

Respuestas (1)

Puede usar Automator para crear un "Evento de calendario". Puede usar la Utilities > Run Shell Scriptacción para ejecutar el script deseado y luego usar Utilities > Display Notificationpara mostrar que se ejecutó el script.

Cuando guarde el flujo de trabajo, se mostrará un cuadro de diálogo que le pedirá que asigne un nombre al evento y, a continuación, colocará automáticamente un evento en el calendario y actuará en consecuencia. A continuación, puede cambiar la hora de ese evento y la frecuencia de repetición.

Gracias, eso parece funcionar. Sin embargo, tengo un problema, que es que el automatizador devuelve un error al ejecutarse. El rsync no puede acceder a todos los archivos en el pi debido a problemas de permisos, por lo que el script se ejecuta, pero devuelve errores. ¿Hay alguna forma de continuar con el flujo de trabajo del automatizador incluso si el script devuelve un error?