Linux

系統依賴樹保存

  • June 19, 2015

據我所知, systemd將服務之間的依賴關係儲存在單元文件中。我需要知道 systemd 在啟動時的行為:

  1. 它是否從特定路徑載入單元文件並在每次啟動時重新計算依賴關係?
  2. 或者它將這個依賴圖儲存在某個文件中並在啟動時載入這個文件?

在 (2) 的情況下,我認為可以通過某些命令重新計算依賴關係圖,例如在 sysctl add 上。

正如我從資料中看到的那樣,它是(1)。但這似乎對性能有不良影響。為什麼(2)沒有實現?我錯了嗎?謝謝。

systemd 中的依賴圖只保存在記憶體中。載入單元或其屬性沒有(二進制)磁碟記憶體。

但這似乎對性能有不良影響。

每次發出systemctl daemon-reload或呼叫等效的匯流排方法( org.freedesktop.systemd1.Reload()) 時,都會完全重新讀取單元文件並完全重新計算依賴關係圖,這是同步的。從該命令的執行時間可以看出,這種重新計算不會以任何方式阻礙性能。

引用自:https://unix.stackexchange.com/questions/194982