linux任务计划cron、chkconfig工具、systemd管理服务、unit和target介绍
第8周第1次课(5月14日)
课程内容:
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
10.23 linux任务计划cron
在Linux中任务计划是必不可少的,例如有时候需要在凌晨执行数据备份,系统自带的任务计划配置文件是/etc/crontab

[root@jimmylinux-002 ~]# crontab -e 使用crontab -e 去定义任务计划
格式:分 时 日 月 周 user command
文件/var/spool/cron/username
分范围0-59,时范围0-23,日范围1-31,月范围1-12,周1-7
可用格式1-5表示一个范围1到5
可用格式1,2,3表示1或者2或者3
可用格式*/2表示被2整除的数字,比如小时,那就是每隔2小时
要保证服务是启动状态

[root@jimmylinux-002 ~]# systemctl start crond 启动任务计划服务
[root@jimmylinux-002 ~]# ps aux |grep cron 检查服务是否启动,如果有crond进程就说明已经启动。

[root@jimmylinux-002 ~]# systemctl status crond 也可以使用这个命令检查,如果active是绿色状态,也说明服务有被启动,假如把服务停掉,那么active没有绿色标注。

任务计划服务一定要启动,否则不生效,另外任务计划配置文件里面的命令一定要写绝对路径,同时指定文件输出正确和错误的日志,方便检查故障原因。
实例:
crontab -e

[root@jimmylinux-002 ~]# crontab -l 查看刚才加的任务计划内容

[root@jimmylinux-002 ~]# cat /var/spool/cron/root 这个里面有对应用户的cron,root的就是root的cron,user1的就是user1的cron。
如果需要备份任务计划,那直接复制cron文件或者复制这个目录/var/spool/cron/root也行。
cron -l 列出cron
cron -e 编辑内容
cron -r 删除cron
cron -u 指定用户
10.24 chkconfig工具
Linux系统服务管理-chkconfig,在CentOS6里面有这个工具,CentOS7同样也兼容chkconfig工具。
[root@jimmylinux-002 ~]# chkconfig --list 查看当前系统里面使用chkconfig工具的服务都有哪些。

chkconfig 在6以及之前的版本系统使用的服务管理机制sysv,7版本使用服务管理机制是systemd。
[root@jimmylinux-002 ~]# top 使用top查看进程1显示是systemd,说明这个进程也是非常重要的,在6版本中进程1是init。

这些服务在/etc/init.d/ 这个路径下

[root@jimmylinux-002 ~]# chkconfig network off 把指定的服务做一个变更

0-6有6个级别,在6和6之前的版本,0表示关机,1表示单用户(在6和之前版本中)2和3就差一个地方,3表示多用户模式,只是不带图形,而2比3只少了一个nfs服务,4表示保留,5表示多用户而且带图形,6表示重启。
如果把系统定位在1级别,一启动就到了1级别单用户,如果定位到6是启动不了的,所以在7的系统中不在区分6个级别,而在6和之前的版本是有区分的。
[root@jimmylinux-002 ~]# vi /etc/inittab 在6系统的版本中修改这个文件可以去定义系统启动的级别,而在7系统中已经不在区分。

chkconfig可以去把一个服务开机启动,也可以让开机不启动,也可以指定某一个级别是开启或关闭。


当然0、1、6级别不能够设置为开,因为重启的时候不可能先开启,而重启的那一刻应该是关闭的,而且关机模式也是不可能开启的。
同样也可以把一个脚本加入到服务列表里面来,操作实例如下:
自定义一个服务


首先把123这个启动脚本放到/etc/init.d这个目录里面去,只有在这个目录下才能够添加到服务列表里面去,这样就到到达上面的效果了。
能够增加也同样可以删除,执行chkconfig --del 123 就可以删除掉。

10.25 systemd管理服务
[root@jimmylinux-002 init.d]# systemctl list-units --all --type=service
列出所有服务

systemctl list-units --type=service
如果不加--all 只列出active,inactive就不会列出来。

几个常用的服务相关的命令
systemctl enable crond.service //让服务开机启动
systemctl disable crond //不让开机启动
systemctl status crond //查看状态
systemctl stop crond //停止服务
systemctl start crond //启动服务
systemctl restart crond //重启服务
systemctl is-enabled crond //检查服务是否开机启动
10.26 unit介绍
ls /usr/lib/systemd/system //系统所有unit,分为以下类型
service 系统服务
target 多个unit组成的组
device 硬件设备
mount 文件系统挂载点
automount 自动挂载点
path 文件或路径
scope 不是由systemd启动的外部进程
slice 进程组
snapshot systemd快照
socket 进程间通信套接字
swap swap文件
timer 定时器

查看target级别,和CentOS6一样有7个运行级别。

unit里面有一种类型叫target,target实际上就是多个service或者多个unit组成的一个组,然后形成了一个target。
unit相关的命令
systemctl list-units //列出正在运行的unit
systemctl list-units --all //列出所有,包括失败的或者inactive的
systemctl list-units --all --state=inactive //列出inactive的unit
systemctl list-units --type=service//列出状态为active的service
systemctl is-active crond.service //查看某个服务是否为active
10.27 target介绍
系统为了方便管理,所以用target来管理unit
systemctl list-unit-files --type=target
systemctl list-dependencies multi-user.target //查看指定target下面有哪些unit
systemctl get-default //查看系统默认的target

systemctl set-default multi-user.target 设置一个默认target时候也会创建一个软连接


一个service属于一种类型的unit
多个unit组成了一个target
一个target里面包含了多个service
cat /usr/lib/systemd/system/sshd.service //查看一个服务属于哪个target,只需要看[install]部分就可以看出属于哪个target

总结:
系统systemd这个管理机制有些复杂,尤其使用命令比较繁琐,系统可以说有多种unit组成的,那么这么多unit为了方便管理,我们就把他们归类,归类成若干的类,每一类每一组就把它叫作target,也就说target是由多个unit组成的,service它属于一种类型的target,一个target里面包含了若干的service,而且还可以使用get-dufault查看系统默认target,也可以使用set-dufault去设置默认target。
linux任务计划cron、chkconfig工具、systemd管理服务、unit和target介绍的更多相关文章
- linux任务计划 chkconfig工具 systemd管理服务 unit介绍 target介绍
linux任务计划 任务计划:特定时间备份数据,重启服务,shell脚本,单独的命令等等. 任务计划配置文件:cat /etc/crontab [root@centos7 ~]# cat /etc/c ...
- Linux centos7 linux任务计划cron、chkconfig工具、systemd管理服务、unit介绍、 target介绍
一.linux任务计划cron crontab -u -e -l -r 格式;分 时 日 月 周 user command 文件/var/spool/corn/username 分范围0-59,时范 ...
- linux任务计划cron
linux任务计划cron 1.crontab命令任务计划配置文件 [root@bogon ~]# cat /etc/crontab SHELL=/bin/bash PATH=/sbin:/bin:/ ...
- Linux centosVMware 自动化运维Ansible介绍、Ansible安装、远程执行命令、拷贝文件或者目录、远程执行脚本、管理任务计划、安装rpm包/管理服务、 playbook的使用、 playbook中的循环、 playbook中的条件判断、 playbook中的handlers、playbook实战-nginx安装、管理配置文件
一.Ansible介绍 不需要安装客户端,通过sshd去通信 基于模块工作,模块可以由任何语言开发 不仅支持命令行使用模块,也支持编写yaml格式的playbook,易于编写和阅读 安装十分简单,ce ...
- Android窗口管理服务WindowManagerService的简要介绍和学习计划
在前一个系列文章中,我们从个体的角度来分析了Android应用程序窗口的实现框架.事实上,如果我们从整体的角度来看,Android应用程序窗口的 实现要更复杂,因为它们的类型和作用不同,且会相互影响. ...
- Linux 启动脚本及chkconfig命令之自启动服务
有时我们会碰到这样的情况,系统启动的时候报一大堆无法连接mysql的错误,问题在mysql数据库还没有启动的时候已经启动了一些需要连接mysql数据库的服务.这样我们就得修改启动顺序,把需要连接mys ...
- systemd管理服务
[root@zbs-staging-api system]# cat /lib/systemd/system/ncmulti@.service [Unit] Description=many on % ...
- Linux用户和权限——用户和用户组管理
Linux用户和权限——用户和用户组管理 摘要:本文主要介绍了Linux系统中的用户和用户组管理. 用户和用户组 含义 在使用Linux系统时,虽然输入的是自己的用户名和密码,但其实Linux并不认识 ...
- [CoreOS 转载] CoreOS实践指南(七):Docker容器管理服务
转载:http://www.csdn.net/article/2015-02-11/2823925 摘要:当Docker还名不见经传的时候,CoreOS创始人Alex就预见了这个项目的价值,并将其做为 ...
随机推荐
- SQL语句实现:当A列大于B列时选择A列否则选择B列,当B列大于C列时选择B列否则选择C列
分享一道今天的面试题:SQL语句实现:数据库中有A B C三列,当A列大于B列时选择A列否则选择B列,当B列大于C列时选择B列否则选择C列 第一种:使用case when...then...else ...
- 第四十章 POSIX条件变量
条件变量 当一个线程互斥地访问某个变量时,它可能发现在其它线程改变状态之前,它什么也做不了 例如一个线程访问队列时,发现队列为空,它只能等待,只到其它线程将一个节点添加到队列中.这种情况就需要用到条件 ...
- 题解 【洛谷】AT654
题解 AT654 [役人[错题已隐藏]] 此题题面没搬过来, 会日语的dalao可以自行去ATCoder查看. 给出此题的JavaAC代码: public class Main { public st ...
- js判断是否微信浏览器、IE浏览器
/*判断(微信)浏览器*/ function isWeiXin(){var ua = window.navigator.userAgent.toLowerCase();if(ua.match(/Mic ...
- 【倒腾HTTPS】Nginx for Docker自签名SSL证书
前言 合格的web程序员, 必须能自由在 IIS. Nginx. Nginx for Docker上配置Https服务, 博客最近将专题记录 Https & Hsts 如何申请适用于生产 ...
- javascript iframe跳转问题
javascript iframe跳转问题如果在iframe里面有要点击跳转最外层的连接 要只能用<pre> <div onclick="parent.location.h ...
- vue之注册自定义的全局js方法
前端开发的时候,总会需要写一些js方法,在vue框架中为了方便使用,可以考虑注册一个全局的js方法,下面是注册步骤: 1.0 可以在assets文件中的js文件下面新建一个js文件,如:yun.js- ...
- Java-100天知识进阶-基本类型-知识铺(一)
知识铺: 致力于打造轻知识点,持续更新每次的知识点较少,阅读不累.不占太多时间,不停地来唤醒你记忆深处的知识点. Java的两大数据类型: 一.内置数据类型 二.引用数据类型 内置数据类型 Java语 ...
- Convolutional Sequence to Sequence Learning 论文笔记
目录 简介 模型结构 Position Embeddings GLU or GRU Convolutional Block Structure Multi-step Attention Normali ...
- windows 2008 服务器优化:停powershell,卸载不相干软件,开启防火墙
windows 2008 作为 全录 的服务器,经常cpu达到100%,查看是powershell.exe占cpu有98%.影响 全录 软件进行电话录音.所以想禁止powershell.exe程序启动 ...