一個systemd需要多少個單元文件

一個systemd需要多少個單元文件

https://fedoramagazine.org/systemd-converting-sysvinit-scripts/狀態

這是一個有趣的事實:由 184 行 shell 腳本處理的所有內容現在都由 27 行 systemd 配置處理,分佈在兩個單元檔案中。

我可以在 /usr/lib/systemd/system/sshd.service 找到第一個檔案:

[Unit]
Description=OpenSSH server daemon
Documentation=man:sshd(8) man:sshd_config(5)
After=network.target sshd-keygen.service
Wants=sshd-keygen.service

[Service]
EnvironmentFile=/etc/sysconfig/sshd
ExecStart=/usr/sbin/sshd -D $OPTIONS
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
RestartSec=42s

[Install]
WantedBy=multi-user.target

需要什麼第二個文件以及它位於哪裡?

答案1

本文中的 init 腳本sshd-keygen在開始之前啟動sshd,因此所引用的第二個單元檔案可能就是該/usr/lib/systemd/system/sshd-keygen.service檔案。

請注意,在 systemd 情況下,sshd-keygen並不是嚴格要求的,sshd因為它配置了Wants=sshd-keygen.service選項。即使sshd-keygen.service失敗或不可用,sshd仍將由 systemd 啟動。但是,在本文連結的 init 腳本中,這是一個嚴格的要求,因為如果sshd-keygen失敗或不可用,腳本將會失敗。

答案2

第二個檔案是sshd-keygen.service,在上面的程式碼片段中引用了該檔案。

您可以使用它locate sshd-keygen.service來查找系統上的文件。它可能位於/usr/lib/systemd/system/sshd-keygen.service.

相關內容