linux任务计划,chkconfig工具,systemd管理服务

linux任务计划

命令crontab

crontab -u:表示指定某个用户,不加-u,默认为当前用户

crontab -e:表示制定计划任务

crontab -l:表示列出计划任务

crontab -r:表示删除计划任务

先进入任务计划的配置文件

230634_yR1O_3708406.png

从左到右的5个*分别表示:分(0-59)、时(0-23)、日(1-31)、月(1-12)、周(0-6)

输入crontab -e,编辑配置文件,与vim的用法一样

例:

0 3 * * * /bin/bash /user/local/sbin/123.sh >>/tmp/123.log 2>>/tmp/123.log

表示每天凌晨3点都执行脚本,将正确日志和错误日志记录到/tmp/123.log文件中(*表示所有的意思)

0 3 1-10 */2 2,5 /bin/bash /usr/local/sbin/123.sh >>/tmp/123.log 2>>/tmp/123.log

其中1-10表示范围,1号到10号;*/2表示双月,可以被2整除的;2,5表示周二和周五;这里没有年份,可以用星期确定唯一性

完成编辑之后,需要启动服务systemctl start crond;可以用ps aux |grep cron命令,出现/usr/sbin/crond -n就表示已经启动;还可以使用命令systemctl startus crond,有绿色active (running)也表示已经启动了,若没颜色active (dead)表示没有启动

232921_OMkU_3708406.png

注意:在编写脚本时候,要使用绝对路径,否则命令不在PATH里面,会导致任务计划不执行。建议每写一个命令都要追加日志,这样遇到错误,也有据可查。

任务计划备份

crontab -l,列出计划任务

计划任务存放在/var/spool/cron/username中,备份时找到对应用户名文件复制即可

crontab -r,删除计划任务,也可以指定用户-u

234916_yRbN_3708406.png

chkconfig工具

chkconfig --list,列出所有的系统服务

001224_LP5e_3708406.png

服务的脚本存放位置:

001816_yasv_3708406.png

chkconfig network off,将network服务关闭

002015_X8Q5_3708406.png

7个运行级别分别表示:

0(关机);

1(单用户);

2(多用户模式,没nfs服务)

3(多用户模式,不带图形)

4(保留)

5(多用户模式带图形)

6(重启)

针对某一个或几个运行级别状态打开、关闭,多个运行级别之前不用符号隔开

002551_MOaZ_3708406.png

自定义添加和删除服务

进入/etc/init.d/目录下,只有在这个目录下,才能添加到服务列表里去

003804_2SmL_3708406.png

003916_8C5R_3708406.png

004108_T0Zm_3708406.png

vim 123,对文件内容有要求,首先要是一个shell脚本,然后有chkconfig和description的格式,才能被识别,格式如下:

004347_qluR_3708406.png

删除服务

004608_RRii_3708406.png

systemd管理服务

systemctl list-unit-files,查看所有的服务

systemctl list-units --all --type=service,指定type,列出所有的service,按空格可以往下翻,不加-all,则不会列出inactive项

010122_GeQC_3708406.png

几个常用的和服务相关的命令

systemctl enable crond.service,让服务开机启动(.service可以省略);systemctl disable crond,不让服务开机启动

010848_cMkD_3708406.png

systemctl status crond,查看状态

010943_bMwz_3708406.png

systemctl stop crond,停止服务;

systemctl start crond,启动服务;

systemctl restart crond,重启服务;

systemctl is-enabled crond ,检查服务是否开机启动

011149_yBT5_3708406.png

unit介绍

unit所在目录位置:/usr/lib/systemd/system/

unit文件类型

  • service 系统服务
  • target 多个unit组成的组
  • device 硬件设备
  • mount 文件系统挂载点
  • automount 自动挂载点
  • path 文件或路径
  • scope 不是由systemd启动的外部进程
  • slice 进程组
  • snapshot systemd快照
  • socket 进程间通信套接字
  • swap swap文件
  • timer 定时器

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

target介绍

系统为例方便管理用target来管理unit

systemctl list-unit-files --type=target,列出系统中所有的target

systemctl list-dependencies multi-user.target,查看指定target下面有哪些unit

systemctl get-default,查看系统默认的target

014821_ts5D_3708406.png

systemctl set-default multi-user.target,设置默认的target

014939_C6AO_3708406.png

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

cat /usr/lib/systemd/system/sshd.service ,查看sshd.service属于哪个target,看Install部分可知

015134_si76_3708406.png

扩展

1. anacron

2. xinetd服(默认机器没有安装这个服务,需要yum install xinetd安装)

3. systemd自定义启动脚本

转载于:https://my.oschina.net/u/3708406/blog/1584839

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值