首页 > 系统 > Linux > 正文

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

2020-07-10 11:22:52
字体:
来源:转载
供稿:网友

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

复制代码
代码如下:

/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 用户才会把这些内容载入到计划任务表中

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表