我正在研究类Unix文件系统结构,特别是FHS(文件系统层次标准)。无论如何我知道最近 FHS/var/run
被转移到了/run
。
我不明白 lib 和 run 之间的区别。有人可以举例说明一下吗?
答案1
看该网站提供更多详细信息。 简而言之:
答案2
/var/run
(或者,最近,/run
)代表“自系统启动以来描述系统的系统信息数据“。此类系统信息包括 PID 文件和命名套接字。示例:
sshd
PID 文件dockerd
套接字文件autofs
命名管道rpcbind
锁定文件
/var/run
请注意系统信息。对于特定于程序的短暂数据,/tmp
或者/var/tmp
更适合。
/var/lib
代表“[保存] 与应用程序或系统相关的状态信息“。因此,该目录非常适合持久存储应用程序数据。示例:
- Docker 将容器、镜像和卷存储在
/var/lib/docker
- NFS 将操作详细信息存储在
/var/lib/nfs
- 包管理器喜欢在调用之间在这里存储状态
dnf
。apt
logrotate
在这里追踪其之前的运行。
中的文件/var/lib
应该是程序内部的,不用于用户交互或操作。