Hasta ahora, nunca he intentado agregar una crontask en mi Mac. Para mi sorpresa, arrojó un error ...
[hayek@mac:/www/] 02:33:22 PM: crontab -e 1 .
crontab: no crontab for hayek - using an empty one
crontab: "/usr/bin/vi" exited with status 1
¿Cómo puedo averiguar por qué está arrojando ese error?
Estoy ejecutando Mac OS X Lion 10.7.2
crontab file
instalar la tabla desde un archivo externo? ¿O usando un editor diferente comoEDITOR=NANO crontab -e
?crontab -l
muestra? ¿Hay algún otro mensaje en/var/log/cron.log
o/var/log/system.log
?Respuestas:
En ~ / .vimrc agregue:
fuente
~/.vimrc
El problema resultó ser
vi
y nada que ver con cron. Haciéndoloexport EDITOR=vim
arregladofuente
export EDITOR=vim
luego pruébalo.EDITOR=vim
no lo solucionó, solo me llevó a un nuevo errorcrontab: temp file must be edited in place
. Prefiero vim, sin embargo, edito cronjobs con tanta frecuencia que estoy bastante feliz de hacerloNANO
... aunque si alguien conoce la solución, estoy muy interesado.En un problema relacionado, si recibe el mensaje:
Tratar:
1) Agregar a .bash_profile
2) Agregar a .vimrc
Fuente: http://drawohara.com/post/6344279/crontab-temp-file-must-be-edited-in-place
fuente
alias crontab "export VIM_CRONTAB=true; /usr/bin/crontab"
Su editor en la variable de sistema EDITOR es vi y vi no funciona.
Tratar:
fuente
Tuve el mismo problema y seguí los consejos publicados para crear la tabla:
Y eso creó la tabla cron, y luego pude ejecutar
con vi como editor predeterminado y no tuve problemas. Es como si vi no pudiera guardar el archivo, pero una vez creado, podría acceder a él. Esto es consistente con poder ejecutar:
Como curiosidad, las tablas se almacenan en
que solo se puede leer como sudo.
fuente
La mejor manera de diagnosticar esto sería crear un crontab nuevo con una entrada simple como:
Si eso funciona, entonces el problema es con el comando específico que ha agregado. ¿Podría compartirlo con nosotros y también compartir los resultados cuando lo ejecute directamente desde Terminal.app, en lugar de hacerlo desde un crontab?
fuente
/bin/date
vuelveWed Nov 23 15:03:49 PST 2011
como se esperaba.cron está en desuso a favor de launchd.
Lingon es una gran herramienta para configurar agentes de lanzamiento; solía ser gratis pero ahora parece ser de $ 3.
Wikipedia tiene una buena launchd página que describe todas las llaves y la herramienta launchctl utiliza para activar / desactivar ellos.
fuente
Agregar
au BufEnter /private/tmp/crontab.* setl backupcopy=yes
a vimrc lo arregló para mí. Mira aquí:http://vim.wikia.com/wiki/Editing_crontab
fuente
Vi este mismo problema en OSX. La respuesta es ejecutar como root usando el comando sudo, por ejemplo:
Tengo esa idea de Gökhan Barış Aker arriba.
fuente
sudo
usted va a colocar trabajos cron bajo usuario root. Los archivos cron son diferentes para su usuario normal y el root.