bin -> usr/bin
sbin -> usr/sbin
有什么讲究吗
啊?按我理解,带 /usr 的不是用户的命令,根目录下是全局的么?所以没有全局了?
挺好的,最好把 lib 再链接到 /usr/lib 去
centos7 就已经这样了。
早该这么干了,现在没有人把 /usr 和根目录分开不同分区乃至存储设备了,恢复环境用的也都是在 initram 里,所以分离 /bin 和 /usr/bin 已经没有意义了
不带 usr 的一般是管理命令给 root 用户用的
CentOS 早就这样了 lib lib64 也是
usr 目录只是因为当年硬盘不足搞出来的 workaround,usr 本身并没有意义。
你说的应该是 sbin 相对于 bin 。
/bin 和 /sbin 里的软件需要被任何用户、任何启动方式下运行;
/usr/bin 和 /usr/sbin 包括不需要在「单用户模式」下运行的系统软件;
/usr/local/bin 和 /usr/local/sbin 是具体到本台机器上为所有用户安装的自定义程序,前面的两个层次的软件都是由 Linux 分发版厂商安装的。
不知道你说「 usr 本身没有意义」来源是哪里,是历史还是现状。我查到 FHS 2.3 标准里,/usr 是根目录下主要目录之一,用于包含大部分只读的系统文件。现在 Ubuntu 把根目录下的许多文件夹搬到了 /usr 下面,不也说明 /usr 越来越重要了吗。
systemd 一直都是建议这么做的: https://www.freedesktop.org/software/systemd/man/file-hierarchy.html/sbin/, /usr/sbin/ 指向 /usr/bin/
/lib/, /lib64/ 指向 /usr/lib/
/var/run/ 指向 /run/
可以去了解下 FHS 的发展历史。最早 /bin 和 /sbin 都直接在根目录分区,但当时硬盘空间有限,工具多了放不下,所以新加了 /usr 是单独挂载的额外硬盘,然后也整了一套对应的 /usr/bin 和 /usr/sbin 。但当时为了避免出故障时无法挂载 /usr,所以要保证把最必须的工具放在根目录。但现在这个空间限制基本不成立了,也不会有人单独把 /usr 单独挂载了,所以合并是大势所趋,抛弃历史包袱。
补充一个链接 http://lists.busybox.net/pipermail/busybox/2010-December/074114.html
实质上很多使用方法是后来望文生义了
但是就很好奇,为啥不是去掉 usr 目录下的 /usr/bin /usr/sbin,保留根目录的 /bin /sbin……
usr 并不是指 user,而是 Unix System Resources 的简写
去掉哪个无所谓啊,毕竟还是要有软链接保证对标准的兼容。合并的关键是省去开发者和打包者纠结该把程序搁在哪。激进点的 Arch 甚至把 /sbin 和 /usr/sbin 也直接合并到 /usr/bin 了
这就是为了高大上硬凑的例子了
FHS 是很后面的事情了。usr 的起源要追溯到 50 年前。
你可能接触这个比较晚
usr 目录是生造出来的,当年存储设备空间小,集成的东西越来越多,所有都放 /bin 和 /sbin 放不下
需要挂多个硬盘 然后做出来 /usr/sbin /usr/bin 就是为了把日益增长的东西新工具新命令放过去
而 /sbin /bin 只放最基本的 任何时候包括恢复模式下都必须的东西放进去
lib 也是这样
不知道真实的历史哪个是对的,我之前在鸟哥的书上看的
哈哈,本来我已经信了你说的了,看到你们争论我去搜索了一下,找到这个:
https://www.tldp.org/LDP/Linux-Filesystem-Hierarchy/html/usr.html
In the original Unix implementations, /usr was where the home directories of the users were placed (that is to say, /usr/someone was then the directory now known as /home/someone).
这么看来 /usr 就是 user 的意思
对,usr 刚开始是用户的 home 目录,后来根目录硬盘满了以后文件开始往 usr 目录里堆,再后来加了一块新硬盘以后所有的 home 目录都扔进了 /home,usr 就这么留下来放根目录放不下的东西了。
所以现在 usr 本身已经没有意义了,因为原本放在 usr 下的东西已经搬走了,usr 其实应该叫 second_drive 或者叫 d 盘更合适。
https://unix.stackexchange.com/questions/103347/pronunciation-for-usr-directory
再发展发展,把根目录下的目录再弄少一点
看了下我的,貌似没变
哦,看错了。
最早只有 /
然后扩展到 /usr
然后 /usr 也被很多系统用了
又来了个 /usr/local
然后很多软件也喜欢装到了 /usr/local
然后又有了个 /opt
还是习惯问题,看 /usr 挂载点在哪 如果和 /在一个挂载点就无所谓,如果是独立挂载点,单、恢复模式就好玩了