為什麼 Debian 中沒有設備單元文件?
我一直在閱讀 systemd 並對設備單元文件進行一些探索。
根據手冊頁:
systemd
將為所有帶有“systemd”udev
標籤的核心設備動態創建設備單元(預設情況下所有塊和網路設備,以及其他一些設備)。這可用於定義設備和其他單元之間的依賴關係。要標記設備,請在規則文件udev
中使用“TAG+=“systemd”” ,詳情請參閱。udev``udev(7)
/lib/systemd/system
如 Debian Wiki 中所述,我已嘗試查看:Debian 提供的單元文件位於 /lib/systemd/system 目錄中。
但這些都無處可尋。
然而
~$ sudo systemctl list-units --type=device
是否顯示設備單元(如磁碟、音效卡、乙太網控制器等…)
我想知道在哪裡可以找到 Debian 中的設備單元文件?或者如果這些不存在,那麼為什麼不存在以及 systemd 如何在 Debian 中處理這些單元?
任何澄清/評論/見解將不勝感激。
答案在你引用的第一句話中。“systemd 將動態創建設備單元”。它說“創造”,而不僅僅是“開始”。通過與 udev 守護程序的集成,一旦核心告訴 udev 有一個新設備,一個 .device 單元將被即時合成。(同樣,如果一個設備消失了, .device 單元也將被銷毀。)
動態創建的是單元本身(因此它僅存在於 systemd 內部的記憶體中),而不是單元文件。因此,它與動態創建的 .scope 單元或瞬態 .service 單元的機制基本相同(與基於 .mount 的生成器創建的單元文件不同
/etc/fstab
)。因此,磁碟上的任何地方都沒有單元文件。你可以看到它
systemctl status some.device
沒有引用任何單元文件,systemctl show some.device
也沒有列出任何FragmentPath
.