Linux20180511八周一次课cron chkconf systemd unit target
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux20180511八周一次课cron chkconf systemd unit target相关的知识,希望对你有一定的参考价值。
八周一次课(5月11日)
10.23 linux任务计划cron
10.24 chkconfig工具
10.25 systemd管理服务
10.26 unit介绍
10.27 target介绍
扩展
1. anacron http://blog.csdn.net/strikers1982/article/details/4787226
2. xinetd服(默认机器没有安装这个服务,需要yum install xinetd安装)http://blog.sina.com.cn/s/blog_465bbe6b010000vi.html
3. systemd自定义启动脚本 http://www.jb51.net/article/100457.htm
Linux任务计划
可能是个shell脚本,也可能是单独命令。不管是何种形式,都需要某个时间去执行,这样就需要确定一个时间。
任务计划的配置文件 etc/crontab
定义了变量,环境变量,命令路径 mailto 发邮件给谁,以及格式。不写用户的话,默认是root
定义Linux任务计划的命令
crontab -e 语法和vim一样
比如设定一个凌晨3点的任务:
解释:
0 3 * * *0分 3点 每天 每月 每日执行
/bin/bash 说明是要执行shell脚本 后面 /user/local/sbin/123.sh 跟的是要执行的脚本 然后写入log 因为每天都执行 所以是追加 后面跟的是错误的log 也追加到这个文件中
也可以使用范围来表示时间
0 3 1-10 */2 2,5
凌晨3点0分 1-10号, */2被2整除也就是闰月 周二周五
然后启动crond这个服务才能使用这个任务计划
systemctl start crond
然后用检查进程是否启动
或者使用 systemctl status crond 检查crond的状态
systemctl stop crond 停掉crond
查看当前的任务计划命令
crontab -l
删除当前的任务计划
crontab -r
查看指定用户的任务计划
crontab -u root -l
注意:
1. 有时候可能因为写的脚本里用的是命令,而不是命令的绝对路径,有可能会导致无法执行。
2. 每写一个任务计划都要写上追加日志,这样有迹可循。
3. 任务计划的文件位置是 /var/spool/cron/root 对应用户的cron root下就是root的,其他用户的cron都有存在对应的用户名下。所以备份的话可以直接拷贝这的文件到其他位置进行拷贝
Linux系统服务管理 -chkconfig
所谓的crontab firewalld 等都是服务,全是服务所以需要有一个服务管理工具。
Centos6是chkconfig,但是7也是同样兼容的。
将服务显示出来
chkconfig --list
解释一下,目前看起来只有2个进程,这样就比较奇怪,其他进程去哪了?
看上面的解释,这个命令值展示SysV服务,不包含systemd服务,意思是6以及之前版本的服务管理机制是sysv,7用的是systemd,所以systemd是7以及以后版本的服务管理器。从top命令也可以看到这个很重要的进程。
那chkconfig管理的服务具体的位置路径是什么地方呢?
/etc/init.d/ 以后在配置ngix mysql的时候可能还需要把启动脚本放到这个路径然后使用chkconfig去管理
可以关闭服务
chkconfig network off
0-6表示不同的服务级别。
0--关机
1--单用户 centos6以及以前版本
2--比3少了一个nfs服务
3--多用户模式 不带图像
4--保留级别
5--多用户,带图形界面
6-- 重启
centos7不存在级别了。6以及之前版本可以通过更改配置文件 /etc/inittab来定义运行级别。
chkconfig 可以指定某个级别是开启或者关闭
chkconfig --level 3 network off/on
也可以将自定义的脚本放到服务中去,必须将脚本放到 /etc/init.d目录下
然后使用命令
chkconfig --add 新服务
当然了,这个新的服务文件的格式必须满足一些条件 才行。我们看一看。下面两行是必须的
chkconfig:
description:
上面的注释的意思是,服务必须在运行级2,3,4,5下被启动或关闭,启动的优先级是90,关闭的优先级是10。 90是启动优先级,10是停止优先级,优先级范围是0-100,数字越大,优先级越低。
有添加就会有删除
chkconfig --del 服务名
服务删除了,文件还在哦
Linux系统服务管理--systemd(centos7的服务管理机制)
显示所有类型的服务的命令
systemctl list-units --all --type=service
不加--all就不会把inactive的列出来
cron服务开机启动/不启动
systemctl enable/disable crond
查看cron状态
systemctl status crond
停止cron服务
systemctl stop crond
启动cron服务
systemctl start crond
重启
systemctl restart crond
检查cron服务是否开机启动
systemctl is-enabled crond
同时从上面可以得到cron的配置文件的内容
从右边软链接到左边,右边是真正的文件路径
enable之后就会生成软链接,disable之后软链接就没有了。
以上是关于Linux20180511八周一次课cron chkconf systemd unit target的主要内容,如果未能解决你的问题,请参考以下文章
Linux20180511八周一次课cron chkconf systemd unit target
Linux20180511八周一次课cron chkconf systemd unit target