一直搞不清 binary 应该放在哪,周末研究了下。
Long story short,就是一开始 Unix 的开发者是用 / 的,后来磁盘不够用了,就加了 /usr,再后来又不够用了,就加了个 /home 存放真正的 user 文件,但是 /bin 和 /usr/bin 后来就有了不同的解释...
关于详细的故事和解释,分享下原文: https://www.kawabangga.com/posts/3777
1
littleshy 2019-11-18 15:51:16 +08:00 1
到底 usr 是不是 user 的缩写?
|
2
scukmh 2019-11-18 15:51:19 +08:00
有点意思。
|
3
lazyfighter 2019-11-18 15:59:03 +08:00
@littleshy 同好奇
|
4
joshua7v 2019-11-18 16:02:48 +08:00 1
usr 不是 Unix System Resources 的缩写么
|
5
scriptB0y OP @littleshy
@joshua7v @lazyfighter 中午正好在 TLDP 看到这段解释。 /usr 是存放用户数据的地方,相对于系统数据。但是范围有所演变: “所有和用户相关的东西” --> “所有用户的 程序和数据” 所以,一开始 /usr 的意义确实是 User 的,根据现在存放的东西,有些人就解释成:User System Resources Source: > In current Unices, /usr is where user-land programs and data (as opposed to 'system land' programs and data) are. The name hasn't changed, but it's meaning has narrowed and lengthened from "everything user related" to "user usable programs and data". As such, some people may now refer to this directory as meaning 'User System Resources' and not 'user' as was originally intended. https://www.tldp.org/LDP/Linux-Filesystem-Hierarchy/html/usr.html |
6
Beebird 2019-11-18 16:13:06 +08:00 1
Unix 里头好多典故,我也补一个,一些 Unix 系统比如 Solaris 有些程序放在 /usr/ucb 目录, 开始不明所以,后来才知道这个 ucb 是 University of California, Berkeley 的缩写。这应该也算是 ucb 在计算机科学发展史上留下的烙印之一吧。
|
7
jasonyang9 2019-11-18 16:14:45 +08:00 1
sysfs,就是`/sys`,和`/proc`也有很多类似的典故,反正就是个大杂烩系统,历史包袱沉重
|
8
Rasphino 2019-11-18 16:17:13 +08:00 1
不是 binary 一般放在 /opt 里,自己 make install 的程序在 /usr/local/bin 里吗
|
9
scriptB0y OP @Rasphino 是的,我在文中也说了:
> Anyway,自从有了这两个文件夹,人们便开始赋予它们含义:/ 用来存放上游的文件,/usr 放本地的内容;后来演变成 / 放从 AT&T 官方发行的内容,/usr 放发行版的内容,那时是 IBM AIX 或 Dec Ultrix,/usr/local 放自己本地的内容;再后来人们觉得 /usr/local 放安装的新 package 不够好,那再加一个 /opt ! 将来说不定还有 /opt/local。 |
10
abmin521 2019-11-18 20:46:53 +08:00 via iPhone
@jasonyang9 不妨详谈?
|
11
LFUNWF 2019-11-18 23:37:47 +08:00 via Android
还有~/bin
|
15
scriptB0y OP |
16
MrBearAndFlower 2019-12-24 13:47:32 +08:00 1
@littleshy 我还以为是 Unix Software Resource 呢
|