Fedora 40 计划统一 /usr/bin 和 /usr/sbin
Phoronix报道称,"为Fedora40提交的最新变更提案之一是统一其/usr/bin和/usr/sbin位置"。"这是一项针对FedoraLinux的变更建议......"Fedora项目维基页面上强调。"作为变更流程的一部分,建议将公开发布,以接收社区反馈。只有获得Fedora工程指导委员会的批准,该提议才会实施。"
修改建议解释说:
"/usr/sbin目录成为bin的符号链接意味着/usr/bin/foo和/usr/sbin/foo等路径指向同一个地方。/bin和/sbin已经是/usr/bin和/usr/sbin的符号链接,因此/bin/foo和/sbin/foo实际上也指向同一个地方。/usr/sbin将从默认的$PATH中移除"。
多年前,Fedora合并了/bin和/usr/bin,作为最后一步,他们希望统一/usr/bin和/usr/sbin。
修改提案认为,通过这一修改,"Fedora将与其他发行版更加兼容"。
-我们有/sbin/ip,而Debian有/bin/ip
-我们有/bin/chmem和/bin/isosize,而Debian有/sbin/chmem和/sbin/isosize
-我们还有/sbin/{addpart,delpart,lnstat,nstat,partx,ping,rdma,resizeepart,ss,udevadm,update-alternatives},而Debian则将其放在/bin等下。
-Fedora与几年前进行合并的Arch更加兼容。
Fedora项目维基上的提案提供了以下摘要:
/bin和/sbin之间的分割并无用处,而且也未被使用。最初的拆分是为了将"重要"的二进制文件静态链接到/sbin,以便用于紧急救援操作。显然,我们现在已经不做静态链接了。后来,拆分的目的改为隔离只有管理员才能使用的"重要"二进制文件。虽然这在理论上似乎很有吸引力,但实际上很难对程序进行这样的分类,普通用户经常会从/sbin中调用程序。大多数需要root权限才能进行某些操作的程序,在无权限的情况下也能使用。即使需要权限,通常也是动态获取的,例如使用polkit。多年以来,用户的默认$PATH设置都包含这两个目录。随着systemd的出现,这种做法变得更加系统化:systemd会为所有用户和服务设置包含这两个目录的$PATH。因此,一般来说,所有用户和程序都能找到这两套二进制文件。
一般来说,所有用户会话和服务的$PATH都有两个目录,因此这种分割实际上没有任何作用。它的主要作用是,当人们需要使用绝对路径而又猜错了目录时,就会产生混乱。其他发行版会把一些二进制文件放在另一个目录中,因此绝对路径通常无法移植。此外,用户很容易在$PATH中把/sbin放在/bin之前,而管理员也很容易在$PATH中把/bin放在/sbin之前,从而造成混乱。如果放弃这一功能,系统就会变得简单一些,这对于不了解分割历史的新用户来说尤其有用。
踩一下[0]

站长云网
顶一下[0]