Me gustaría ejecutar un trabajo cron como usuario específico en mi máquina. ¿Cómo puedo especificar al usuario para que se ejecute un trabajo cron?
Los trabajos cron se ejecutarán en un servidor (se ejecuta en Ubuntu 10.0.4). Los 'usuarios' son usuarios que se han creado específicamente para llevar a cabo tareas específicas del lado del servidor. Estos 'usuarios' tienen lo siguiente en común:
- No se puede iniciar sesión en el sistema
- Tener acceso restringido a carpetas / archivos específicos
crontab -u <user> -e
mantener todo en un solo lugar, lo que puede hacer como root. Sin embargo, me gusta agrupar mis trabajos cron por función, en lugar de solo por usuario, por lo que esta es la solución preferible para mí.Como root, para editar el cron del usuario1:
También puede comenzar su comando con:
Pero a menudo, los propios scripts reducen su propio acceso cuando se inician como root.
fuente
He estado buscando esto por un par de semanas y finalmente funcionó ...
Crea tu script como usuario1
ingrese algún comando
hacerlo ejecutable
edite el crontab para user1
ponga una línea en la parte inferior que apunte a sus guiones
salir - guardar cambios (mostrará un directorio / tmp al guardar ... está bien)
espera el turno del minuto
abra su recién creado yay.txt
ahora debería tener una ventana nano abierta con "YAY funciona" como la primera y única línea si la parte inferior de su ventana nano dice Nuevo archivo ... bueno ... no sé
también puede verificar su nueva entrada crontab para user1 en: / var / spool / cron / crontabs / user1
PAZ
fuente
A veces es posible que desee que el usuario cargue su entorno, especialmente cuando usa "rbenv", "nvm", así:
(aquí el comando
source ~/.bash_profile
le cargará el entorno Ruby o Node.fuente