17.4 【Linux】systemctl 针对 timer 的配置文件

简介: 17.4 【Linux】systemctl 针对 timer 的配置文件
+关注继续查看

有时候,某些服务你想要定期执行,或者是开机后执行,或者是什么服务启动多久后执行等等的。在过去,我们大概都是使用 crond 这个服务来定期处理, 不过,既然现在有一直常驻在内存当中的 systemd 这个好用的东西,加上这 systemd 有个协力服务,名为 timers.target的家伙,这家伙可以协助定期处理各种任务。


systemd.timer 的优势


为什么要使用systemd.timer呢?


由于所有的 systemd 的服务产生的信息都会被纪录 (log),因此比 crond 在 debug 上面要更清楚方便的多;


各项 timer 的工作可以跟 systemd 的服务相结合;


各项 timer 的工作可以跟 control group (cgroup,用来取代 /etc/secure/limit.conf 的功能) 结合,来限制该工作的资源利用


任务需求


基本上,想要使用 systemd 的 timer 功能,你必须要有几个要件:


系统的 timer.target 一定要启动


要有个 sname.service 的服务存在 (sname 是你自己指定的名称)


要有个 sname.timer 的时间启动服务存在


sname.timer 的设置值


可以到 /etc/systemd/system 下面去创建这个 *.timer 档,那这个文件的内容要项有哪些东西呢?基本设置主要有下面这些: (man systemd.timer & man systemd.time)

image

使用于 OnCalendar 的时间

如果你想要从 crontab 转成这个 timer 功能的话,那么对于时间设置的格式就得要了解了解,基本上的格式如下所示:

image


常用的间隔时间单位有:


us 或 usec:微秒 (10-6 秒)

ms 或 msec:毫秒 (10-3 秒)

s, sec, second, seconds

m, min, minute, minutes

h, hr, hour, hoursd, day, days

w, week, weeksmonth, months

y, year, years

image

此外,你也可以使用英文常用的口语化日期代表,例如 today, tomorrow 等!假设今天是2015-08-13 13:50:00 的话,那么:


image

17.5 CentOS 7.x 默认启动的服务简易说明

image

image

image


image

17.6 重点回顾

早期的服务管理使用 systemV 的机制,通过 /etc/init.d/*, service, chkconfig, setup 等指令来管理服务的启动/关闭/默认启动;


从 CentOS 7.x 开始,采用 systemd 的机制,此机制最大功能为平行处理,并采单一指令管理 (systemctl),开机速度加快!


systemd 将各服务定义为 unit,而 unit 又分类为 service, socket, target, path, timer 等不同的类别,方便管理与维护


启动/关闭/重新启动的方式为: systemctl [start|stop|restart] unit.service


设置默认启动/默认不启动的方式为: systemctl [enable|disable] unit.service


查询系统所有启动的服务用 systemctl list-units --type=service 而查询所有的服务 (含不启动) 使用 systemctl list-unit-files --type=service


systemd 取消了以前的 runlevel 概念 (虽然还是有相容的 target),转而使用不同的target 操作环境。常见操作环境为 multi-user.targer 与 graphical.target。 不重新开机而转不同的操作环境使用 systemctl isolate unit.target,而设置默认环境则使用 systemctlset-default unit.target


systemctl 系统默认的配置文件主要放在 /usr/lib/systemd/system,管理员若要修改或自行设计时,则建议放在 /etc/systemd/system/ 目录下。


管理员应使用 man systemd.unit, man systemd.service, man systemd.timer 查询/etc/systemd/system/ 下面配置文件的语法, 并使用 systemctl daemon-reload 载入后,才能自行撰写服务与管理服务。


除了 atd 与 crond 之外,可以 通过 systemd.timer 亦即 timers.target 的功能,来使用systemd 的时间管理功能。


一些不需要的服务可以关闭。


相关文章
|
2月前
|
Linux
Linux中查看端口被哪个进程占用、进程调用的配置文件、目录等
Linux中查看端口被哪个进程占用、进程调用的配置文件、目录等
|
2月前
|
Linux 开发工具
如何在 Linux 中编辑配置文件?
如何在 Linux 中编辑配置文件?
103 2
如何在 Linux 中编辑配置文件?
|
3月前
|
Linux
17.3 【Linux】systemctl 针对 service 类型的配置文件
17.3 【Linux】systemctl 针对 service 类型的配置文件
42 0
|
3月前
|
安全 Unix Linux
15.3.2 【Linux】系统的配置文件:/etc/crontab,/etc/cron.d/*
15.3.2 【Linux】系统的配置文件:/etc/crontab,/etc/cron.d/*
37 0
|
3月前
|
网络协议 关系型数据库 应用服务中间件
linux虚拟机中各服务端口及配置文件路径
linux虚拟机中各服务端口及配置文件路径
|
4月前
|
运维 网络协议 Linux
【运维杂谈】Linux系统常用的配置文件
【运维杂谈】Linux系统常用的配置文件
69 0
|
6月前
|
缓存 Linux 数据安全/隐私保护
【Linux入门篇】系统配置文件
【Linux入门篇】系统配置文件
101 0
|
6月前
|
存储 XML JSON
嵌入式linux之go语言开发(十二)参数配置文件存储模块开发
嵌入式linux之go语言开发(十二)参数配置文件存储模块开发
|
8月前
|
XML 缓存 网络协议
小满Linux(第七章Nginx配置文件)
全局块是默认配置文件从开始到events块之间的一部分内容,主要设置一些影响Nginx服务器整体运行的配置指令,因此,这些指令的作用域是Nginx服务器全局。
88 0
小满Linux(第七章Nginx配置文件)
|
10月前
|
Linux Shell vr&ar
Linux下使用脚本读取参数修改配置文件(二)
Linux下使用脚本读取参数修改配置文件
151 0
热门文章
最新文章
相关产品
云迁移中心
推荐文章
更多