我确实sudo crontab -e
看到了一堆 cronjobs。如果 cron 存在于/etc/cron.d
但不在 ,sudo crontab -e
是否意味着它没有运行?或者它正在运行,但由于某种原因没有出现在sudo crontab -e
?
答案1
cron
尽管它们是由同一个守护进程 () 处理,但它们是不同类型的位置cron
。
您在下面找到的配置/etc/cron.d
是系统范围的,并且它与您在命令之前指定的用户一起运行,这很好。
但是,当非(root|管理员)用户想要在没有 root 用户干预的情况下设置自己的 cron 时会发生什么?他们使用crontab
,它将他们的 cron 存储在 中/var/spool/cron
(并将使用他们的用户名运行他们的脚本,没有选择的可能性)。
正如您所看到的,位置不同,因此它们是不同类型的 cron;如果您使用crontab -l
或,crontab -e
您将看到上述路径下定义的那些 crontab。在中指定的那些/etc/cron.d
是使用标准工具(如)列出的ls
,使用 编辑vi
等。