1、前言
systemctl daemon-reload 會(huì)讓 systemd 管理器(PID 1)重新掃描磁盤(pán)上的 unit 文件(.service/.socket/.timer 等)及其 drop-in 配置,重新加載內(nèi)部的單元描述(unit files)緩存和依賴關(guān)系表。
2、內(nèi)容
簡(jiǎn)單說(shuō):告訴 systemd “我修改/新增/刪除了 unit 文件,請(qǐng)重新讀取這些文件并更新內(nèi)部狀態(tài)”。
其典型使用場(chǎng)景有如下幾個(gè):
- 你手動(dòng)編輯或新建了
systemd單元文件(通常位于/etc/systemd/system、/run/systemd/system、/lib/systemd/system或/usr/lib/systemd/system),或在這些目錄下新增/刪除.service/.timer等文件或其.d/drop-in目錄后。 - 安裝/卸載某個(gè)軟件包時(shí)其提供的 unit 文件被放置到了上述目錄(有時(shí)安裝腳本會(huì)自動(dòng)調(diào)用 reload,但并非總是)。
- 為用戶服務(wù)修改了
~/.config/systemd/user/下的 unit 文件時(shí),需對(duì)用戶管理器執(zhí)行--user模式的daemon-reload。
常見(jiàn)命令示例
全局(系統(tǒng))管理器重新加載:
sudo systemctl daemon-reload
用戶管理器重新加載(針對(duì) --user 單元):
systemctl --user daemon-reload