He escrito un script rsync para respaldar mi Mac (10.10.3) hasta mi NAS. Creo que quiero crear una cuenta de usuario que será responsable de ejecutar este script. Este usuario debería poder ver todos los archivos en el disco (acceso de nivel de lectura al menos) y tener un directorio local de inicio para sus propias claves ssh. El script se ejecutará aproximadamente una vez cada 15 minutos a través de cron.
Mi primera pregunta es cómo crear este usuario para que no tenga una pantalla de inicio de sesión. Ya creé un usuario a través de la GUI y luego los escondí de la pantalla de inicio de sesión usando: sudo dscl . create /Users/hiddenuser IsHidden 1
. Supongo que eso es lo suficientemente bueno, aunque creo que preferiría hacerlo de la manera "correcta". ¿Un usuario creado a través de la GUI como este tiene la capacidad de iniciar sesión de forma remota? Yo no querría eso. Aparte de ejecutar rsync y python y tener acceso a todos los archivos en la computadora, me gustaría que este usuario esté bastante bloqueado. No hay conchas remotas. No ftp. Etc. No tengo idea si alguna de esas cosas está permitida por defecto para un usuario "regular" o incluso "administrativo".
Mi segunda pregunta es ¿cómo le doy a este usuario permisos para ver todo el sistema de archivos (al menos, o incluso idealmente, con acceso de solo lectura)? ¿De alguna manera editaría el archivo / etc / sudoers usando visudo? Entonces, ¿lo ejecutaría bajo un crontab especial para darle permiso? Tengo un poco de miedo de hurgar en esta arena sin preguntar primero, y realmente solo necesito un empujón en la dirección correcta y Google me ayudará en el resto del camino.
Finalmente, estoy completamente abierto a escuchar si esta es una forma tonta de hacerlo o si existe alguna otra forma estándar, UNIXy, de permitir que mi script de Python realice una copia de seguridad de una computadora completa a través de rsync.
Edit: encontré esto: Cómo ejecuta un trabajo cron usando el comando sudo
Eso sugeriría que en lugar del usuario rsync, ejecutaría este script desde el crontab de root. ¿Eso tiene más sentido?