2020
05-13

linux系统怎么使用crond计划任务?linux系统使用crond计划任务方法

关于crond计划任务

1、循环执行的计划任务

linux下面有atd和crond两种计划任务,其中,atd服务使用的at命令只能执行一次,而crond服务使用的crontab定义的命令,是循环作用的,所以crond才符合我们的要求。

crontab支持两种状态:一、直接编写计划任务;二、使用目录的方式,放在目录里面的都会定时执行。

2、可以使用的用户

默认情况下,系统中可以登陆的用户,都可以使用crontab定义计划任务。不过,可以通过下面两个文件限制权限:

/etc/cron.allow:

将可以使用 crontab 的账号写入其中,若不在这个档案内的使用者则不能使用 crontab;

/etc/cron.deny:

将不可以使用 crontab 的账号写入其中,若未记录到这个档案当中的使用者,就可以使用 crontab。

类似TCPWrapper定义的方式。

linux系统怎么使用crond计划任务?

本教程使用系统:CentOS6

启动计划任务服务

service crond start

如果出现如下提示:

crond: unrecognized service

说明还没有安装计划任务,运行下面命令安装cron服务:

yum -y install vixie-cron

很多时候,你没有办法重新启动crond,这个时候可以先killall crond 然后再crond restart就哦ok了。

你也可以将这个服务在系统启动的时候也自动启动:

/etc/rc.local这个脚本的末尾加上:  

/sbin/service crond start  
chmod +x /etc/rc.local

chkconfig -level 35 crond on

添加cron计划任务

crontab -e
*/5 *  *  *  * date >> /root/test.log

意思是每隔5分钟执行一次date输出时间到/root/test.log

如果系统崩溃或挂起,从最后所显示的时间就可以一眼看出系统是什么时间停止工作的。

列出cron计划列表

crontab -l

保存在/var/spool/cron/root 文件里

如果你想添加删除或编辑crontab文件中的条目,可以用vi来编辑crontab文件,使用crontab -e可以像使用vi编辑其他文件那样修改crontab文件并退出。

使用实例

1、每1分钟执行一次command

* * * * * command


2、每小时的第3和第15分钟执行

3,15 * * * * command


3、在上午8点到11点的第3和第15分钟执行

3,15 8-11 * * * command


4、每隔两天的上午8点到11点的第3和第15分钟执行

3,15 8-11 */2 * * command


5、每个星期一的上午8点到11点的第3和第15分钟执行

3,15 8-11 * * 1 command


6、每晚的21:30重启smb命令

30 21 * * * /etc/init.d/smb restart


7、每月1、10、22日的4:45重启smb

45 4 1,10,22 * * /etc/init.d/smb restart


8、每周六、周日的1:10重启smb

10 1 * * 6,0 /etc/init.d/smb restart


9、每天18:00至23:00之间每隔30分钟重启smb

0,30 18-23 * * * /etc/init.d/smb restart


10、每星期六的晚上11:00pm重启smb

0 23 * * 6 /etc/init.d/smb restart


11、每一小时重启smb

* */1 * * * /etc/init.d/smb restart


12、晚上11点到早上7点之间,每隔一小时重启smb

* 23-7/1 * * * /etc/init.d/smb restart


13、每月的4号与每周一到周三的11点重启smb

0 11 4 * mon-wed /etc/init.d/smb restart


14、一月一号的4点重启smb

0 4 1 jan * /etc/init.d/smb restart


15、每小时执行/etc/cron.hourly目录内的脚本

01 * * * * root run-parts /etc/cron.hourly

注意事项

删除crontab文件

$crontab -r

千万别乱运行crontab -r。它从Crontab目录(/var/spool/cron)中删除用户的Crontab文件。删除了该用户的所有crontab都没了。

新创建的cron job,不会马上执行,至少要过2分钟才执行。如果重启cron则马上执行。

当crontab失效时,可以尝试

/etc/init.d/crond restart

解决问题。或者查看日志看某个job有没有执行/报错tail -f /var/log/cron。

ubuntu下启动、停止与重启cron:

$sudo /etc/init.d/cron start
$sudo /etc/init.d/cron stop
$sudo /etc/init.d/cron restart

官方QQ群号码:922069959

您可能感兴趣的文章

支付宝打赏支付宝打赏微信打赏微信打赏

本站》评论功能已永久关闭

官方QQ群号码:922069959
点击链接加入群聊【路由器交流】:
https://jq.qq.com/?_wv=1027&k=5AKdmZP
官方QQ群号码:922069959