我正在沿着CRON和日程安排进行挖掘。
我设置了一个预定的作业,通过$crontab -e
+编辑文件(奇怪地命名为#34; /tmp/crontab.vst6TX/crontab")
我的理解是$crontab -e
打开了一个crontab ...而cron.d,守护进程,拿起crontab并将cron作业附加到(systemwide)/ etc / crontab中。 (根据crontab being saved in tmp/ in debian的评论)
我每分钟都在看cron工作 - 但是我无法看到它被添加到/ etc / crontab工作列表中......为什么? $crontab -l
确实展示了这份工作......
答案 0 :(得分:1)
crontab -l
和/var/spool/cron/crontabs
分别编辑和显示当前用户的crontab文件(实际位于crontab -e
) 。因此,每个用户可以在该目录中拥有自己独立的crontab文件。因此,当您运行crontab -l
并添加了一条cron行时,您可能会以同一用户身份运行/etc/crontab
,因此会看到您添加的行。
/etc/cron.d
是一个完全不同的文件。你是对的,它是系统范围的 - 请注意该文件中的cron行指定一个用户。 .d
中的文件也是如此,文件中的cron行将指定用户。
哦,cron.d
中的 <?xml version="1.0" encoding="utf-8"?>
<books>
<book>
<title>Animals</title>
<price>50</price>
<color>red</color>
</book>
<book>
<title>Humans</title>
<price>50</price>
<color>blue</color>
</book>
</books>
后缀不是指守护进程。请查看此post。