Sus comandos en realidad debería de trabajo, sin embargo no es como yo lo haría.
En lugar de tratar de :-
sudo crontab -e -u root
a continuación, a la lista :-
sudo crontab -l -u root
Como una regla general de que yo vaya a una gran cantidad de problemas para nunca ejecutar una shell de root. Cuando yo utilizo sudo -s
en lugar de sudo su
.
Al salir de vi debería ver dos líneas :-
crontab: no crontab for root - using an empty one
crontab: installing new crontab
Si usted no obtiene esos dos líneas que tienen graves problemas. Si usted y, a continuación, la lista de comandos no muestra nada de lo que me iba a sospechar permiso de problemas.
Yo también no uso el ejemplo de la línea que usted está pidiendo que el sistema funcione "sayhi.sh" una vez por minuto durante todo el día, todos los días. También me pregunto acerca de la ruta "/sayhi.sh" - ¿de verdad tiene el guión de la derecha hasta la parte superior de su unidad de arranque? Eso no es una buena idea o tal vez significa "~/sayhi.sh" que en este caso sería en las root directorio de inicio (normalmente /var/root) o ¿te refieres a su directorio de inicio. En el crontab de archivos es mejor explícitamente el código de la ruta de acceso completa, independientemente.
Usted también darse cuenta de que tany de salida de la tarea no va a ir a cualquier terminal, pero en lugar de ser enviado por correo electrónico a la root (por defecto).
Si quieres comprobar que el cron se ejecuta tareas de un simple
*/5 * * * * echo "CRON" > /Users/myname/.cronout
van a hacer que (el primer campo se ejecuta la tarea mucho más razonable que cada 5 minutos).
Los crontabs sí se almacenan en /usr/lib/cron/tabs. /usr/lib/cron
es en realidad un enlace a /var/at
y si vas allí encontrará la tabs
directorio y también la cron.deny
archivo. Comprobar que nadie se ha añadido a root de eso y si usted todavía no tiene alegría, entonces usted puede intentar :
echo > /var/at/tabs/root
lo que debe crear un archivo vacío que usted podría ser capaz de editar.