目录下有很多文件夹,/
它们都是做什么用的?我知道一些类似的/dev
链接到系统中的设备,但/lost+found
或者/proc
我只是很好奇。
答案1
Linux 上的官方参考是文件系统层次结构标准。发行版大多遵循 FHS(目前为3.0版本),但有时会出现偏差。其他 Unix 变体有许多相似之处,但也可能有所不同。还有一个很好的总结在维基百科上。
我将总结典型 Linux 安装中每个目录的作用。有关每个目录的作用的更多详细信息,请参阅 FHS 或维基百科。
/bin
:适用于每个用户的系统程序。也可以看看/usr/bin
。/boot
:用于启动系统的文件:通常是引导装载程序, A内核映像,以及一些相关文件。这些文件在启动后大多不会被访问。/dev
:设备文件。这些是应用程序与硬件通信的方式,更一般地说,是与有关重新整理数据的内核功能通信的方式,例如磁盘分区、终端(包括虚拟终端)等。/etc
:系统配置文件。 (之所以如此命名,是因为它一开始是“不适合其他目录的东西”,但现在它专门用于 Linux 上的配置文件,并且大多数情况下(如果不是专门用于其他 Unix 变体上的配置文件)。其他东西现在位于 . 下/var
。)/home
:包含用户的目录主目录。例如,Alice 的文件通常位于/home/alice
.在具有许多用户的系统上,管理员可以选择更多级别(例如/home/faculty/alice
,/home/students/bob
,...)。一些站点的主目录位于不同的位置,例如/homes
,,,/users
.../lib
包含共享库。也可以看看/usr/lib
。
某些发行版还有其他目录,例如/lib32
和/lib64
来存储不同处理器架构的库。/lost+found
:用于从文件系统损坏中恢复的文件(但你很少这么幸运)。/media
: 包含挂载点对于可移动媒体。在某些系统上,安装点位于第三级,位于以用户命名的目录下。/mnt
:过去一直存在争议,是否/mnt
应该是一个可供系统管理员用作临时挂载点的目录,或者是否应该是一个管理员可以在其中创建子目录用作挂载点的目录。如今第一位置已经获胜,/media
扮演第二角色。/opt
:包含附加软件,每个软件包有一个子目录。有些发行版大量使用它,有些则根本不使用它。/proc
:每个进程包含一个子目录,公开有关进程的各种信息。这就是ps
和等工具top
获取信息的地方。并非所有 Unix 变体都存在(BSD 往往没有)。在 Linux 上,/proc
还包含有关系统的一般信息,但另请参阅/sys
。/proc
当应用程序读取内容时,内核会动态生成内容。/root
: 这根用户的主目录。并非所有系统上都存在;传统上 root 的主目录是/
./run
:内存中的文件系统,包含重新启动时不需要保留的系统文件,例如有关正在运行的服务的信息。下通常有每个用户的目录/run/user
。这是 Linux 的事情。/sbin
:仅适用于管理员的系统程序。也可以看看/usr/sbin
。/srv
:有点像/home
,但用于系统服务。的创造FHS这还没有被普遍采用。/sys
:与 类似/proc
,但提供有关内核驱动程序和硬件的信息(不推荐使用 来/proc
表示与进程无关的信息,但/proc
保留其中的文件/proc
以实现向后兼容性)。特定于Linux。/tmp
:临时文件,每个用户都可以访问。这通常是一个内存文件系统。/usr
:这是大多数软件的安装位置。/usr
包含子目录,例如/bin
、/lib
和/sbin
(但通常不包含/etc
)。区别在于 的子目录/
包含系统启动时所需的基本文件,并且/usr
包含所有其余文件。/usr
单独存在,因为有理由将其保留在单独的文件系统上(可以是只读的,并在多台机器之间共享),但区别并不总是相关的,并且随着时间的推移越来越少,因此例如/bin
可以是符号链接,/usr/bin
反之亦然。这个名字来自“用户”,但它已经很长时间/usr
没有与用户有任何关系了,今天/usr
包含系统文件,仅此而已。/var
:包含随时间变化的文件,与此相反,/usr
包含除了升级或安装软件之外不会变化的文件。与 不同的是/tmp
,下面的文件/var
(大部分)在系统重新启动时会被保留。/var
非常多样化:它包含缓存、有关已安装软件的元数据、打印机线轴、系统邮件、日志文件、临时文件(如/tmp
,但/var/tmp
在重新启动时始终保留,并且通常有更多空间)等。
答案2
以/为根,其他如下
笔记其中一些取决于您的发行版
/bin
:基本二进制文件(程序或可执行文件)/boot
:引导文件,即GRUB(或其他)引导加载程序所需的所有项目/cdrom
(取决于您的发行版):CD / DVD 驱动器的安装点/dev
:设备文件,这些文件代表(它们实际上是真实的文件)物理(或虚拟)连接的设备/etc
:配置文件/home
:用户的主文件夹/lib
:已安装二进制文件的共享库/lost+found
:恢复内核(或某些二进制文件)试图挽救的文件/media
:可移动媒体/mnt
:安装位置(但你可以安装在任何地方)/opt
:您想要安装的可选软件包在其他地方没有意义(尽管这是一个有争议的点)/proc
:内核和进程文件。类似于/dev。/root
:root用户主目录/run
:应用程序文件运行时将其状态保存在这里/sbin
:更多二进制文件(主要针对sudo
用户)/selinux
:如果使用 SELinux(Centos、Redhat Enterprise 等),包含 SELinux 使用的特殊文件/srv
:服务的数据目录,例如,Web 服务器可能使用它来存储要“服务”的文件/tmp
:临时文件/usr
:用户二进制文件/var
:/var/log 中的日志文件和其他数据文件。通常与 /usr 二进制文件相关
来源:https://www.howtogeek.com/117435/htg-explains-the-linux-directory-struct-explained/
(稍微转述一下)