Linux定时任务--crond服务

时间:2023-01-19 08:01:59

---恢复内容开始---

1.crond服务介绍

crond是linux系统中用来定期执行命令或指定程序任务的一种服务或软件。

 

2.为什么要使用crond定时任务

linux系统的定时任务crond,相当于我们平时生活中的闹钟的功能。可以满足周期性执行任务的需求。

 

3.linux中的定时任务

3.1 . linux系统自身定期执行的任务工作:系统周期性执行的任务工作,如轮询系统日志,备份系统数据,清理系统缓存等。

[root@moban ~]# ll /var/log/messages*
-rw------- 1 root root 654330 Sep 25 09:39 /var/log/messages
-rw-------. 1 root root 639828 Sep 20 03:06 /var/log/messages-20150920
[root@moban ~]# ll /var/log/secure*
-rw------- 1 root root 6916 Sep 25 09:13 /var/log/secure
-rw-------. 1 root root 7483 Sep 19 13:28 /var/log/secure-20150920

 

 

 

 

 

 

3.2 .用户执行的任务工作:某个用户或系统管理员定期要做的任务工作,例如每隔5分钟和互联网上时间服务器进行时间同步,每天晚上0点备份站点数据及数据库数据,一般这些工作需要由每个用户自行设置才行

#time sync by oldboy at 2010-2-1
*/5 * * * * /usr/sbin/ntpdate time.nist.gov >/dev/null 2>&1

 

 

 

4.定时任务使用说明

[root@moban ~]# crontab --help
crontab: invalid option -- '-'
crontab: usage error: unrecognized option
usage: crontab [-u user] file
crontab [-u user] [ -e | -l | -r ]
(default operation is replace, per 1003.2)
-e (edit user's crontab)
-l (list user's crontab)
-r (delete user's crontab)
-i (prompt before deleting user's crontab)
-s (selinux context)

4.1 指令说明

通过crontab我们可以在固定的间隔时间执行指定的系统指令或script脚本。时间间隔的单位是分钟,小时,日,月,周及以上的任意组合(注意:日和周不要组合)

2.2 使用者权限及定时任务文件

文件

说明

/etc/cron.deny

该文件中所列用户不允许使用crontab命令。

/etc/cron.allow

该文件中所列用户允许使用crontab命令,优先于/etc/cron.deny

/var/spool/cron

所有用户crontab配置文件默认都存放在此目录,文件名以用户名命名。

2.3 指令选项说明表

参数

含义

指定示例

-l(字母)

查看crontab文件内容

crontab -l

-e

编辑crontab文件内容

crontab -e

-i 

删除crontab文件内容,删除前会提示确认

crontab -ri

-r

删除crontab文件内容

crontab -r

-u user

指定使用的用户执行任务

crontab -u lee -l

提示:crontab{-l |-e}实际上就是在操作/var/spool/cron/当前用户这样的文件。

注:

crontab -e

/var/spool/cron/root

前者会检查语法,而后者不会。

visudo

/etc/sudoers

前者会检查语法,而后者不会。

-