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之后软链接就没有了。




ls /user/lib/systemd/system 就是系统所有的unit 下面是不同类型的分类

service 系统服务

target 多个unit组成的组

device 硬件设备

mount 文件系统挂载点

automount 自动挂载点

path 文件或路径

scope 不是由systemd启动的外部进程

slice 进程组  

snapshot systemd的快照  

swap swap文件  

timer 定时器


CentOS7虽然没有0-6的运行级别,但是也有runlevel异曲同工。

ls -l runlevel*

也是被软链接了。可以从后面看到具体是什么意思。

比如 poweroff 关机  rescue 救援  multi-user 多用户 graphical 图形化 reboot 重启

可以看到命令的类型是target

systemctl list-units 列出正在运行的unit

systemctl list-units  --all 列出所有,包括失败的或者inactive的unit

systemctl list-units  --all --state=inactive 列出inactive的unit

systemctl list-units --type=service 列出状态为active的service

systemctl is-active crond.service 查看某个服务(此处为cron)是否为active

target 和 unit 究竟是什么关系呢?

target是unit的集合,管理unit,系统也是为了方便管理用target来管理unit

查看target类型的units

systemctl list-unit-files --type=target

查看指定target下面有哪些unit

systemctl list-dependencies multi-user.target 多用户的这个target下面有哪些unit,让人target下面也可以继续有target

查看系统默认的target

systemctl get-default

查看系统默认target的文件

ls -l /etc/systemd/system/default.target 可以看到其实也是一个软链接,真正的文件在/lib/systemd/system/multi-user.target

设置系统默认的target

systemctl set-default multi-user.target 设置完软链接也会变化

一个service属于一种类型的unit 多个unit组成了一个target 一个target里面包含了多个service

cat /usr/lib/systemd/system/sshd.service 查看sshd这个service的具体情况

【install】

wantedby 被multi-user.target需要,也就是说是属于multi-user这个target

原文地址:http://blog.51cto.com/13691454/2115531

时间: 2024-07-31 01:35:52

Linux20180511八周一次课cron chkconf systemd unit target的相关文章

10.23-10.27 corn, chkconfig, systemd, unit, target

八周一次课(3月26日)10.23 linux任务计划cron10.24 chkconfig工具10.25 systemd管理服务10.26 unit介绍10.27 target介绍扩展1. anacron  http://blog.csdn.net/strikers1982/article/details/47872262. xinetd服(默认机器没有安装这个服务,需要yum install xinetd安装)   http://blog.sina.com.cn/s/blog_465bbe6

八周一次课(1月29日)

10.23 linux任务计划cron 定义 crontab -e 启动服务 crontab -l 列出  crontab -r 删除     备份就是cp /var/spool/cron/root crontab -u 指定用户 10.24 chkconfig工具 centos 6及之前版本使用 6个级别 0关机  1单用户 2多用户 不带nfs ,无图形 3多用户无图形 4 保留级别 暂时没用 5多用户图形模式 6 重启 123启动脚本要放在/init.d  文件内容也是有格式的 123格式

Linux学习第八周一次课(3月26日)

10.23 linux任务计划cron 每天凌晨3点执行命令,任务计划为#crontab -e 0 3 * * * /bin/bash /usr/local/sbin/123.sh >>/tmp/123.log 2>>/tmp/123.log 每周一.三.五的双数月的1到5日的凌晨3点执行命令,则为#crontab -e 0 3 1-5 */2 1,3,5 /bin/bash /usr/local/sbin/123.sh>>/tmp/123.log 2>>/

2018-1-29 8周1次课 cron,chkconfig,systemd,unit,target

10.23 linux任务计划cron (任务计划配置文件,定义几个环境变量) 格式:分钟 小时 日期 月份 周 用户 命令 进入crontab配置文件:crontab -e 范围:1-10                   比如:1月到10月 双数时间:*/2              比如:每2天 独立时间:1,2,3            比如:每周的周1,周2,周3 启动cron服务:systemctl start crond 检查是否启动:ps aux | grep crond 查看

七周一次课(1月22日) 10.1 使用w查看系统负载 10.2 vmstat命令 10.3 top命令 10.4 sar命令 10.5 nload命令

七周一次课(1月22日)10.1 使用w查看系统负载10.2 vmstat命令10.3 top命令10.4 sar命令10.5 nload命令 ==================================================================================================================================================================================

八周二次课(1月30日) 10.28 rsync工具介绍 10.29/10.30 rsync常用选项 10.31 rsync通过ssh同步

八周二次课(1月30日)10.28 rsync工具介绍10.29/10.30 rsync常用选项10.31 rsync通过ssh同步===================================================================================================================================================================rsync命令:是一个远程数据同步工具,可

七周一次课(1月22日)

七周一次课(1月22日)10.1 使用w查看系统负载 w 直接在终端登陆的   用户TTY load average 系统负载 1分钟 5分钟  15分钟 系统负载 单位时间内使用cpu活动的进程平均个数 cpu是否不够与该数值与逻辑cpu个数有关,1比1是最理想 查看系统逻辑cpu个数  processor uptime 10.2 vmstat命令 vmstat 1 每1s显示1次  5次结束 r:=run,表示运行中或等待cpu运行的进程数,如果该数长期大于服务器CPU个数,则说明CPU不够

八周三次课(1月31日) 10.32/10.33 rsync通过服务同步 10.34 linux系统日志 10.35 screen工具

八周三次课(1月31日)10.32 rsync通过服务同步10.33 rsync通过服务同步10.34 linux系统日志10.35 screen工具===============================================================================================================================================================================

十二周一次课(3月12日)

十二周一次课(3月12日)12.1 LNMP架构介绍 12.2 MySQL安装 LNMP中MySQL的安装和LAMP中基本是一致的,安装配置步骤如下: cd /usr/local/src wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz tar zxvf mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz mv mysql-5.6.35-li