Systemd

Debian buster 中有兩個 dhcpcd 文件 - 這是為什麼呢?

  • August 23, 2020

我正在dhcpcd研究行為,我發現了一些讓我感到困惑的東西:dhcpcdvs dhcpcd5. .

$ which dhcpcd
/sbin/dhcpcd

dhcpcd只是一個連結:dhcpcd -> /etc/alternatives/dhcpcd,它又指向:dhcpcd -> /sbin/dhcpcd5。所以 - adhcpcd和 a dhcpcd5- 都在sbin.

在我的 Raspberry Pidhcpcd上,顯然是在啟動時/etc/systemd/system/dhcpcd.service.d/wait.conf使用以下命令呼叫的:ExecStart=/usr/lib/dhcpcd5/dhcpcd -q -w. AFAIK,既不dhcpcd也不dhcpcd5在系統中的其他任何地方呼叫。

我想這一切一定是有原因的,但搜尋後我找不到任何解釋。為什麼dhcpcd改名了dhcpcd5?另外 - 如果它只systemd在啟動時被呼叫一次,為什麼所有的連結和替代/同義詞?

這都是歷史原因。曾經有一個與 集成的dhcpd,每個介面ifupdown執行一個實例。dhpcd

該項目的第 5 版改變了行為,使用單個實例處理所有介面。為了簡化升級,它被打包成一個全新的包;這允許管理員同時擁有兩個版本,並按照他們認為合適的方式處理配置升級。

dhcpcd符號連結仍由非 systemd 託管系統上的 init 腳本使用。

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