码迷,mamicode.com
首页 > 系统相关 > 详细

linux任务计划cron、chkconfig工具、systemd管理、unit介绍、targe介绍

时间:2018-05-11 20:45:40      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:Linux

linux任务计划cron

linux任务计划:在某个时间自动执行命令或者脚本。

任务计划的配置文件
cat /etc/crontab

技术分享图片

前面两行是定义变量,第三行是指发送邮件给谁,然后最后一行有五个*(星号)分别对应着五个位,也就是上面的五行,下面来介绍一下分别表示什么意思:

1.表示分钟(0-59)

2.表示小时(0-23)

3.表示日期(1-31)

4.表示月份(1-12可以写数字或者英文的简写)

5.表示星期(0-6,0或者7表示周日,也可以写成英文的简写)

最后一行开头部分是用户(在root用户下不写默认就是root)

后面部分,也就是com开头的位置是你要执行的命令。

自定义任务计划(用法和vim一样)
crontab -e

技术分享图片

案例:每天3点执行123.sh脚本(星号就是所有,比如第三个是 意思就是1-31日都执行)
0 3 * * * /bin/bash /usr/local/sbin/123.sh

技术分享图片

把正确的结果和错误的结果都输出到123.log里
0 3 * * * /bin/bash /usr/local/sbin/123.sh >/tmp/123.log 2>/tmp/123.log

把正确的结果和错误的结果都追加到123.log里
0 3 * * * /bin/bash /usr/local/sbin/123.sh >>/tmp/123.log 2>>/tmp/123.log

技术分享图片

每隔两个月的1-10号的星期二和星期五的三点 可以写成如下格式。0是分钟,3是小时,1-10是日期1号到10号,星号/2是月份除以2可以整除的那个月份,2,5是这个月的周二和周五
0 3 1-10 */2 2,5

技术分享图片

设置好之后我们还需要使用systemctl start crond命令启动cron才能启用计划
systemctl start crond

查看是否启用计划
ps aux |grep crom

技术分享图片

或者使用systemctl start crom(crom是你的计划名,图片中红色的就是计划名)
systemctl start crom

技术分享图片

技术分享图片绿色就代表已经启用了)

有时候计划了执行脚本,但是没有执行很可能是没有使用绝对路径,解决办法要么在计划里把该条命令的路径添加到PATH里,要么就使用绝对路径。

还有就是建议计划的任务都要写上正确和错误的结果追加到某个文件里,这样才能保证任务有据可查。

-l 列出,查看任务计划列表
crontab -l

技术分享图片

任务计划cron的文件在/var/spool/cron/目录下,如果是root的cron就是/var/spool/cron/root(cat查看)

-r删除计划
crontab -r

技术分享图片

-u指定用户
crontab -u root -l(指定查看root的任务计划)

技术分享图片

chkconfig服务管理工具

chkconfig服务管理工具(主要在centos6及以前的系统中使用,如怎么控制服务启动,如何控制服务开机启动、如何控制服务在指定级别启动等等)

查看当前系统中使用chkconfig的服务(只会列出sysv服务管理模式的进程,centos7很多的都是systemd模式的)
chkconfig --list

技术分享图片

使用如上命令在centos7只能查看到两个服务,如下图

技术分享图片

这两个进程文件在如下路径(之后我们可以脚本放到这个目录里用chkconfig工具管理也是可以的)
ls /etc/init.d/

技术分享图片

表示该服务在0-6级别分别是什么状态,开机启动还是关闭(network是需要关闭或开启的服务名,off是关闭on是开启)
chkconfig network off

技术分享图片

linux任务计划cron、chkconfig工具、systemd管理、unit介绍、targe介绍

标签:Linux

原文地址:http://blog.51cto.com/13658403/2115353

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!