Linux 目录结构

微信公众号:编程笔记本

点击上方蓝字关注我,我们一起学编程
欢迎小伙伴们分享、转载、私信、赞赏

今天我们来介绍 Linux 下 Filesystem Hierarchy Standard (FHS)的 目录结构

从上到下,你所看到的目录如下

/bin

系统有很多放置可执行文件的目录,但/bin比较特殊。因为/bin放置的是在单人维护模式下还能够被操作的指令。在 /bin 下面的指令可以被 root 与一般用户所使用,主要有:cat, chmod, chown, date, mv, mkdir, cp, bash 等常用的指令。

/boot

该目录包含系统启动所需要的文件。包括 Linux 核心文件、开机菜单与开机所需配置文件等等。

/dev

该目录包含设备文件。在 Linux 系统上,任何设备都是以文件的型态存在于这个目录当中的。你只要通过存取这个目录下面的某个文件,就相当于在操作某个设备。

/etc

系统主要的配置文件几乎都放置在这个目录内,例如人员的帐号密码档、各种服务的启始档等等。一般来说,这个目录下的各文件属性是可以让一般使用者查阅的, 但是只有 root 有权限修改。

/lib

该目录是库文件所在的地方。系统的函数库非常的多,而 /lib 放置的则是在开机时会用到的函数库, 以及在 /bin 或 /sbin 下面的指令会调用的函数库。

/media

当你插入外部存储器试图访问它时,将自动在 /media 目录中挂载它。即当计算机正在运行时动态地插入和检测存储(U 盘、USB 硬盘、SD 卡、外部 SSD 等)。

/mnt

如果你想要暂时挂载某些额外的设备,一般建议你可以放置到这个目录中。在早些时候,这个目录的用途与 /media 相同!只是有了 /media 之后,这个目录就用来暂时挂载用了。

/opt

该目录通常是你编译软件的地方。应用程序最终会出现在 /opt/bin 目录,库会在 /opt/lib 目录中出现。应用程序和库的另一个地方是 /usr/local,在这里安装软件时,也会有 /usr/local/bin 和 /usr/local/lib 目录。开发人员如何配置文件来控制编译和安装过程,这就决定了软件安装到哪个地方。

/proc

/proc 就像 /dev 是一个虚拟目录。它包含有关你的计算机的信息,例如关于你的 CPU 和你的 Linux 系统正在运行的内核的信息。与 /dev 一样,文件和目录是在计算机启动或运行时生成的,因为你的系统正在运行且会发生变化。

/home

这是系统默认的使用者主文件夹(home directory)。在你新增一个一般使用者帐号时, 默认的使用者主文件夹都会规范到这里来。比较重要的是,主文件夹有还有一种代号:~,代表目前这个使用者的主文件夹。

/root

系统管理员(root)的主文件夹。之所以放在这里,是因为如果进入单人维护模式而仅挂载根目录时, 该目录就能够拥有 root 的主文件夹,所以我们会希望 root 的主文件夹与根目录放置在同一个分区中。

/run

/run 是另一个新出现的目录。系统进程出于自己不可告人的原因使用它来存储临时数据。这是另一个不要动它的文件夹。

/sbin

/sbin 与 /bin 类似,但它包含的应用程序只有超级用户才需要。你可以使用 sudo 命令使用这些应用程序,该命令暂时允许你在许多 Linux 发行版上拥有超级用户权限。/sbin 目录通常包含可以安装、删除和格式化各种东西的工具。

/usr

/usr 目录是在 UNIX 早期用户的主目录所处的地方。然而,正如我们上面看到的,现在 /home 是用户保存他们的东西的地方。如今,/usr 包含了大量目录,而这些目录又包含了应用程序、库、文档、壁纸、图标和许多其他需要应用程序和服务共享的内容。
你还可以在 /usr 目录下找到 bin,sbin,lib 目录,它们与挂载到根目录下的那些有什么区别呢?现在的区别不是很大。在早期,/bin 目录(挂载在根目录下的)只会包含一些基本的命令,例如 ls、mv 和 rm ;这是一些在安装系统的时候就会预装的一些命令,用于维护系统的一个基本的命令。 而 /usr/bin 目录则包含了用户自己安装和用于工作的软件,例如文字处理器,浏览器和一些其他的软件。
但是许多现代的 Linux 发行版只是把所有的东西都放到 /usr/bin 中,并让 /bin 指向 /usr/bin,以防彻底删除它会破坏某些东西。因此,Debian、Ubuntu 和 Mint 仍然保持 /bin 和 /usr/bin (和 /sbin 和 /usr/sbin )分离;其他的,比如 Arch 和它衍生版,只是有一个“真实”存储二进制程序的目录,/usr/bin,其余的任何 bin 目录是指向 /usr/bin 的“假”目录。

/srv

该目录包含服务器的数据。如果你正在 Linux 机器上运行 Web 服务器,你网站的 HTML 文件将放到 /srv/http(或 /srv/www)。 如果你正在运行 FTP 服务器,则你的文件将放到 /srv/ftp。

/sys

这个目录其实跟 /proc 非常类似,也是一个虚拟的文件系统,主要也是记录核心与系统硬件信息较相关的信息。 包括目前已载入的核心模块与核心侦测到的硬件设备信息等等。

/tmp

该目录包含临时文件,通常由正在运行的应用程序放置。文件和目录通常(并非总是)包含应用程序现在不需要但以后可能需要的数据。你还可以使用 /tmp 来存储你自己的临时文件。/tmp 是少数挂载到根目录下而你可以在不成为超级用户的情况下与它进行实际交互的目录之一。

/var

该目录包含频繁更改的数据。如:/var/log 目录包含了日志文件。日志是记录系统中发生的事件的文件。如果内核中出现了什么问题,它将被记录到 /var/log 下的文件中;如果有人试图从外部侵入你的计算机,你的防火墙也将记录尝试。它还包含用于任务的假脱机程序。这些“任务”可以是你发送给共享打印机必须等待执行的任务,因为另一个用户正在打印一个长文档,或者是等待递交给系统上的用户的邮件。

注:本文内容选摘自互联网,不开放公众号打赏功能,仅作 mark 用途。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值