Linux计划任务Crontab学习笔记(3):配置文件

Elita ·
更新时间:2024-11-10
· 136 次阅读

【全局(系统)配置文件】

代码如下:
/etc/crontab

Linux 主要的配置文件都在 etc 目录下。

代码如下:
cd /etc
ls cron*



代码如下:
vim crontab

进入 cron.d(服务)

代码如下:
cd cron.d

使用 cat 命令查看 sysstat 文件(cat命令是linux下的一个文本输出命令,通常是用于观看某个文件的内容的 )

代码如下:
cat sysstat

会发现,查看的内容和 crontab -l 时的内容很相似

在 crontab 载入配置文件的时候,会把 cron.d 下面的文件里面的配置信息载入成为 root 用户的计划任务,如果用 crontab -e 命令去编辑它的时候,实际上会破坏它原始文件配置的内容,,所以一般情况下是不愿意使用 crontab -e 的。如果直接编辑文件:vim sysstat,此时再使用 crontab -l,会发现编辑文件不会被直接载入(crontab -l 查看的内容不会改变),可以通过 crontab sysstat 的方式(crontab 后面跟一个文件的方式)把文件载入,然后再使用 crontab -l 查看,此时文件里面的内容覆盖了原来 crontab -l 里面所有的东西,所以在用 crontab 后面跟一个文件这种形式导入的时候要非常小心,因为 crontab -e 里面的内容都会被文件复写。要使一个计划任务不会被丢失,通常情况下不是使用 crontab -e,而是在一个文件中去添加,然后再载入,这样系统重启的时候,这些文件也会被自动载入到计划任务列表中,注意这种方式是以 root 用户的方式载入的。

在使用 ls cron* 的命令时,会有个一 cron.d 的目录,这是配置文件的目录。它下面的 sysstat 和 etc 目录下的 crontab 文件是很类似的,

contab 不能编辑系统级的配置文件里面的计划任务(例如在 cron.d 下新建计划任务文件 crontst,里面写入 */1 * * * * dee echo "File in /ect/cron.d/crontst****",然后:wq!保存退出,这时可以使用 tail -f /var/log/cron 进行监视,可以发现这条计划任务的执行情况,但是使用 crontab -l 或者 crontab -e 就不能列出这条计划任务了)。

【补充】

先使用

代码如下:
crontab -l

再使用

代码如下:
cat /var/spool/cron/root

会发现两个命令的输出结果一样:

实际上 crontab 操作的时候,操作的是 /var/spool/cron/root 这个文件。

 可以使用

代码如下:
ls /var/spool/cron/root

查看所有用户的计划任务。

【Root 配置文件】

只有 Root 用户才会把这些内容载入到计划任务表中



Linux 配置文件 crontab

需要 登录 后方可回复, 如果你还没有账号请 注册新账号