首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Debian中有两个` `dhcpcd`‘文件--为什么?

Debian中有两个` `dhcpcd`‘文件--为什么?
EN

Unix & Linux用户
提问于 2020-08-23 02:06:50
回答 2查看 810关注 0票数 0

我在深入研究dhcpcd的行为,我发现了一些让我困惑的东西:dhcpcddhcpcd5

代码语言:javascript
复制
$ which dhcpcd
/sbin/dhcpcd

但是dhcpcd只是一个链接:dhcpcd -> /etc/alternatives/dhcpcd,它反过来指向:dhcpcd -> /sbin/dhcpcd5。所以- dhcpcddhcpcd5 -都在sbin

在我的Raspberry上,dhcpcd显然是在启动时从/etc/systemd/system/dhcpcd.service.d/wait.conf调用的,使用的命令是:ExecStart=/usr/lib/dhcpcd5/dhcpcd -q -w。AFAIK,系统中的任何其他地方都不调用dhcpcddhcpcd5

我猜想这一切一定是有原因的,但在寻找之后,我找不到任何解释。为什么dhcpcd被重命名为dhcpcd5?另外,如果systemd在引导时只调用一次,那么为什么所有的链接都是替代/同义词呢?

EN

回答 2

Unix & Linux用户

回答已采纳

发布于 2020-08-23 03:15:22

这一切都是出于历史原因。过去有一个dhcpd套餐ifupdown集成,每个接口运行一个dhpcd实例。

项目的第5版改变了行为,只有一个实例处理所有接口。为了简化升级,它被打包为作为一个全新的包;这允许管理员并行地拥有两个版本,并根据他们认为合适的情况处理配置升级。

init脚本仍然在非系统管理系统上使用dhcpcd符号链接。

票数 1
EN

Unix & Linux用户

发布于 2020-08-23 07:23:35

这是正在实施的“替代”制度。在这个系统中,程序的常规名称是指向/etc/alternatives/的符号链接,而实际的程序二进制文件是其他地方不同名称的文件。

您可以在设置为使用“替代”系统的其他程序中看到这一点。例如:虽然/usr/bin/vim是VIM的传统名称,但是"alternatives“系统允许在不同的/usr/bin/vim.tiny/usr/bin/vim.nox等之间切换的实际程序二进制文件。

在这种情况下,过去有两种选择,/sbin/dhcpcd5这个dhcpcd5套餐提供,/sbin/dhcpcd3这个dhcpcd套餐提供。在安装后维护程序包的脚本(dhcpcd5 杜克)中,他们每个人都会使用update-alternatives来使“替代”系统在常规名称下创建dhcpd符号链接,从而选择安装的底层二进制文件的最高优先级。

正如M. Kitt所指出的,提供dhcpcd3的包裹已经被移除。因此,这现在是一个“替代”配置,只有一个可能的选择。☺

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/605831

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档