¿Es malo vincular a un crontab?

Pienso en hacer algo como:

sudo ln -s ~/myCustomCrontab /var/spool/cron/crontabs/username 

porque me gustaría tener todos los files personalizados en mi directory personal. Los posibles riesgos que puedo pensar son

  • security (¿Cómo deberían ser los permissions para seguir siendo seguros?)
  • fallo de sistema

¿O hay una mejor manera de "realizar un seguimiento del file"?

Esto no funciona , al less en sistemas parecidos a Debian (los files crontab enlazados o enlazados para usuarios que no son del sistema se ignoran en absoluto ). También falla si usa crontab para cambiar su file crontab. Si la versión de cron aún acepta files crontab enlazados simbólicamente, crea posibles agujeros de security ya que el file crontab ya no está marcado por coinheritance.

Con su solución de enlace simbólico, crontab -e bloquea si usted (o algún script de installation) cambia el file crontab:

 crontab: crontabs/username: rename: Operation not permitted 

a medida que mueve un file temporal a /var/spool/cron/crontabs/username para replace el file anterior de forma instantánea.

crontab tiene una gran cantidad de comprobaciones de security adicionales integradas, por lo que el sistema cron no se puede utilizar para comprometer el sistema. Comtesting, por ejemplo, el contenido del file cron antes de instalarlo o cambiarlo. Un file cron no válido puede bloquear el cron daemon o podría (al less teóricamente) hacer un mal uso para get más privilegios en el sistema. Con su solución, ya no hay más cheque para el file crontab.

¡No!

¡No hagas eso!

Por supuesto, tenga una copy de su crontab (y otras) almacenada en algún lugar, como su directory personal, pero no toque los files del sistema.

 vi my_crontab # Edit my copy of the crontab file crontab my_crontab # Install it 

(Personalmente, uso $HOME/.crontab para mi copy por usuario).

Una mejor forma de rastrear los files del sistema sería crear un repository de código fuente (git, cvs, mercury, lo que sea) y usarlo para rastrear sus cambios. Un Makefile se puede usar para instalar cambios en los directorys del sistema relevantes y reiniciar services dependientes; en este escenario, simplemente debe escribir sudo make install y lo haría.