cron安装
1.查看系统是否已经安装cron
rpm -qa |grep cron
如果出现 cronie-1.4.4-12.el6.i686等类似信息,
则表明已经安装。
2.安装cron
yum install cron*
3.卸载cron
yum remove cron*
cron服务设置
1.设置开机启动
chkconfig crond on
chkconfig crond off
chkconfig crond --list #查看是否开机启动,2,,3,4,5为on表示开机启动
2.开启关闭服务
service crond status #查看服务状态
service crond start
service crond stop
service crond rest
art =
/etc/rc.d/init.d/crond restart
service crond reload #重新加载配置
建立定时任务
配置系统级的任务
vim /etc/crontab
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
在最后添加:
# * * * * * user-name command to be executed (格式)
*/1 * * * * root /bin/echo "111" >> /root/bbb #每隔一分钟往bbb中写入“111“,cron表达式的编写
在编写的时候,经常会遇到不生效的情况,主要检查命令的路径以及使用的文件路径!不生效的问题大多是这个原因!
系统设置的任务通过crontab -l查询不到当前用户的定时任务
针对每个系统用户
每个系统用户都可以有自己的crontab(在 /var/spool/cron/ 下)。
查看当前用户的cron配置(实际上是查看 /var/spool/cron/下以用户名为文件名的文件内容)
crontab -l
编辑当前用户的cron配置(实际上是在 /var/spool/cron/下创建一个以用户名为文件名的文件)
crontab -e
删除当前用户的cron配置(实际上是删除 /var/spool/cron/下以用户名为文件名的文件)
crontab -r
以root身份查看/编辑/删除某用户的cron配置,在命令后加上 -u USERNAME
cron原理
cron服务每分钟不仅要读一次 /var/spool/cron 目录内的所有文件,还需要读一次 /etc/crontab 文件。
使用crontab命令是对用户级任务的配置,而编辑 /etc/crontab 文件是对系统级任务的配置。
crond命令每分钟会定期检查是否有要执行的工作,如果有要执行的工作便会自动执行该工作。