/lib
和/usr/lib
和有什么不一样/var/lib
?有些文件是“复制”其他目录内容的符号链接。
答案1
其他人可能可以用更多细节和历史参考来解释这一点,但简短的答案是:
/lib
是存放必要标准库的地方。考虑系统运行所需的库。如果某些内容在/bin
或/sbin
需要一个库,则该库可能位于/lib
.
/usr/lib
顾名思义,该/usr
目录通常是一个基于用户的目录。在这里您可以找到系统上用户使用的东西。因此,如果您安装需要库的应用程序,它们可能会转到/usr/lib
.如果二进制文件位于/usr/bin
或/usr/sbin
需要库,则它可能位于/usr/lib
.
/var/lib
该目录是通常要求只读的目录/var
的可写对应目录。/usr
所以/var/lib
会有类似的目的,/usr/lib
但有能力写信给他们。
答案2
/lib
和中的文件/usr/lib
大部分是只读的并且在系统之间是相同的。 (如果是容器映像,它们可以完全只读并在系统之间共享;在独立系统上,它们需要可写才能安装更新。)
中的文件/var
特定于本地系统,并且经常包含由系统操作生成的数据。
通常,配置文件模板的分发版本可以在 中找到/usr/lib
,并可用于在/etc
或可能中创建配置文件的本地化版本/var
。
/lib
我不确定为什么和之间会有重复的文件/usr/lib
,更可能的是它们是符号链接而不是重复的。 (我当前的系统上没有这样的文件,只有一个符号链接。)
从历史上看,像这样的目录/usr/lib
/usr/bin
实际上是创建的,因为/usr
它们位于单独的磁盘上,并且东西被放在那里,因为/bin
它们/lib
位于根磁盘上,而根磁盘太小而无法容纳所有内容,而留在根磁盘上的东西对于引导足够远以安装至关重要/usr
。当然,这个概念已经过时了,并且有一个将它们合并的运动。