17.1 什么是daemon与服务(service)
服务是指常驻内存的进程且可以提供一些系统或网络功能,服务的运作需要daemon执行,比如周期性计划任务服务,需要crond这个daemon,一般可以等同
目前系统使用systemd这个启动服务管理机制,将daemon执行脚本都成为服务单元(unit),服务类型如下:
扩展名 | 主要服务功能 |
---|---|
.service | 一般服务类型:主要是系统服务。包括服务器的本地服务和网络服务等 |
.socket | 内部程序数据交换的服务 |
.target | 执行环境类型,其实是一群unit的集合,执行一个target其实就是执行一堆service或(及).socket |
.mount/.automount |
文件系统挂在相关的服务,例如来自网络的自动挂载 |
17.2 通过systemctl管理服务
17.2.1 通过systemctl管理服务
命令格式:systemctl [ command ] [ unit ]
command 主要有:
start
stop
restart
reload:不关闭后面unit情况下,重新加载配置文件,让配置文件生效
enable:设置开机启动
disable:设置开机不启动
status
is-active:目前有没有在运行中
is-enable:开机时有没有默认启动
[root@host-192-168-230-101 tecs]# systemctl status atd.service
● atd.service - Job spooling tools
Loaded: loaded (/usr/lib/systemd/system/atd.service; enabled; vendor preset: enabled)
Active: inactive (dead) since Fri 2022-09-16 16:11:39 CST; 3s ago
Process: 13892 ExecStart=/usr/sbin/atd -f $OPTS (code=exited, status=0/SUCCESS)
Main PID: 13892 (code=exited, status=0/SUCCESS)
Sep 16 16:11:39 host-192-168-230-101 systemd[1]: Stopping Job spooling tools...
Sep 16 16:11:39 host-192-168-230-101 systemd[1]: Stopped Job spooling tools.
Warning: Journal has been rotated since unit was started. Log output is incomplete or unavailable.
重点在二、三行(Loaded和Active),最后几行是日志,如果发生问题,可以查看这里的日志
Loaded:这行在说明,开机的时候这个unit是否会启动,具体状态如下
enabled:开机启动
disabled:不会启动