[CentOS7] systemd

可紊 提交于 2020-04-07 07:32:01

声明:本文主要总结自:鸟哥的Linux私房菜-第十七章、認識系統服務 (daemons),如有侵权,请通知博主

查看当前系统设定的服务启动脚本的类型:ls /usr/lib/systemd/system | cut -d '.' -f 2 | sort | uniq

1. /usr/lib/systemd/system  ==> 每个服务最主要的启动脚本设定

2. /run/systemd/system  ==> 系统过程中所产生的服务脚本

3. /etc/systemd/system  ==> 该目录下都是soft link文件,软链接到/usr/lib/systemd/system目录下的启动脚本,因此该目录决定了开机启动后开启哪些服务

优先级顺序:3 > 2 > 1

副檔名 主要服務功能
.service 一般服務類型 (service unit):主要是系統服務,包括伺服器本身所需要的本機服務以及網路服務都是!比較經常被使用到的服務大多是這種類型! 所以,這也是最常見的類型了!
.socket

內部程序資料交換的插槽服務 (socket unit):主要是 IPC (Inter-process communication) 的傳輸訊息插槽檔 (socket file) 功能。 這種類型的服務通常在監控訊息傳遞的插槽檔,當有透過此插槽檔傳遞訊息來說要連結服務時,就依據當時的狀態將該用戶的要求傳送到對應的 daemon, 若 daemon 尚未啟動,則啟動該 daemon 後再傳送用戶的要求。

使用 socket 類型的服務一般是比較不會被用到的服務,因此在開機時通常會稍微延遲啟動的時間 (因為比較沒有這麼常用嘛!)。一般用於本機服務比較多,例如我們的圖形界面很多的軟體都是透過 socket 來進行本機程序資料交換的行為。 (這與早期的 xinetd 這個 super daemon 有部份的相似喔!)

.target 執行環境類型 (target unit):其實是一群 unit 的集合,例如上面表格中談到的 multi-user.target 其實就是一堆服務的集合~也就是說, 選擇執行 multi-user.target 就是執行一堆其他 .service 或/及 .socket 之類的服務就是了!
.mount
.automount
檔案系統掛載相關的服務 (automount unit / mount unit):例如來自網路的自動掛載、NFS 檔案系統掛載等與檔案系統相關性較高的程序管理。
.path 偵測特定檔案或目錄類型 (path unit):某些服務需要偵測某些特定的目錄來提供佇列服務,例如最常見的列印服務,就是透過偵測列印佇列目錄來啟動列印功能! 這時就得要 .path 的服務類型支援了!
.timer 循環執行的服務 (timer unit):這個東西有點類似 anacrontab 喔!不過是由 systemd 主動提供的,比 anacrontab 更加有彈性!

(-- 源自鸟哥的Linux私房菜: systemd使用unit分类)

直接列出所有unit与其状态和描述

服务是有相依赖性的,比如cups.service负责打印机服务,但若直接systemctl stop cups.service,虽然它确实停止了,但是仍能被cups.path和cups.socket唤醒,例子如下:

给予了提示,若停止cups.service,该service仍能被cups.path、cups.socket激活

 

可以通过systemctl list-units xxx --all 的方式来显示出所有与之相关的unit,加上--all参数后会显示所有的unit包含unloaded的

 

 systemctl list-units --type={service|socket|path|...} -all 列出所有unit类型为{service|socket|path|...}的服务详细状态

谨记:

/usr/lib/systemd/system/: 使用centos官方提供的软件安装后,预设的启动脚本设定文件都放在这里

/run/systemd/system/: 系统执行过程中所产生的服务脚本,优先级比/usr/lib/systemd/sytem/高

/etc/systemd/system/: 管理员依据主机系统的需求所建立的执行脚本,优先级比/run/systemd/system/高

/etc/sysconfig/*: 几乎所有的服务都会将初始化的一些选项设定写入到这个目录下

/var/lib/: 一些会产生资料的服务都会将他的资料写入到/var/lib/目录下

/run/: 放置了很多daemon的暂存文件,包括lock file以及PID file等等

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!