在 Windows 操作系统中,主分区和逻辑分区也被称为驱动器,会被分配一个驱动器字母(如C、D、E),每个驱动器都有自己的根目录结构。与 Windows 操作系统有所不同,Linux 文件系统不使用驱动器这个概念,而且 Linux 文件系统使用单一的根目录结构,所有的分区都挂载到单一的 “/” 目录上。
“/”目录也称为根目录,位于 Linux 文件系统目录结构的顶层。在很多系统中,“/”目录是系统中的唯一分区。如果还有其他分区,必须挂载到“/”目录下某个位置。整个目录结构呈树形结构,因此也称为目录树。
/bin
目录为命令文件目录,也称为二进制目录,包含了供系统管理员及普通用户使用的重要的 Linux 命令的二进制(可执行)文件,包括 Shell 解释器等。该目录不能包含子目录。目录 /usr/bin
存放了大部分的用户命令。
/boot
目录中存放系统的内核文件和引导装载程序文件。例如 CentOS7 的内核文件为 vmlinuz-3.10.0-693.e17.x86_64
。
/dev
目录也称设备(device)文件目录,存放连接到计算机上的设备(终端、磁盘驱动器、光驱及网卡等)的对应文件,包括字符设备和块设备等。
/etc
目录存放系统的大部分配置文件和子目录。X-Window 系统的文件保存在 /etc/X11
子目录中,与网络有关的配置文件保存在 /etc/sysconfig
子目录中。该目录下的文件由系统管理员来使用,普通用户对大部分文件有读取权限。
/home
目录中包含系统上各个用户的主目录,子目录名称即为各用户名。
/lib
目录下存放了各种编程语言库。典型的 Linux 系统包含了 C、C++ 和 FORTRAN 语言的库文件。用这些语言开发的应用程序可以使用这些库文件。这就使软件开发者能够利用那些预先写好并测试过的函数。/lib
目录下的库映像文件可以用来启动系统并执行一些命令。目录 /lib/modules
包含了可加载的内核模块。/lib
目录存放了所有重要的库文件,其他的库文件则大部分存放在 /usr/lib
目录下。
/lib64
目录用来存放与 /lib
不同格式的二进制函式库,支持64位的函式库。
/media
目录是指系统设置的自动挂接点,如 CDROM 光盘
或 U 盘
的自动挂接点,而 /mnt
一般是指手动挂接点目录。
/opt
目录表示的是可选择的意思,某些第三方应用程序通常安装在这个目录,有些软件包也会被安装在这里。
/root
目录为系统管理员的主目录。
/usr
目录是 Linux 系统中最大的目录之一,很多系统中,该目录是作为独立分区挂载的。该目录中主要存放不经常变化的数据,以及系统下安装的应用程序目录。
如果想要暂时挂载某些额外的装置,一般可以放置在 /mnt
目录中。早期,这个目录的作用与 /media
相同,后来有了 /media
,这个目录就用来暂时挂载用了。
/proc
目录是一个虚拟的文件系统,该目录中的文件是内存中的映像。可以通过查看该目录中的文件获取有关系统硬件运行的详细信息,例如,使用 more
或 less
命令查看 /proc/interrupts
文件以获取硬件中断(IRQ)信息,查看 /proc/cpuinfo
文件以获取 CPU 的型号、主频等信息。
/sbin
目录下保存系统管理员或者 root 用户的命令文件。/usr/sbin
存放了应用软件,/usr/local/sbin
存放了通用的根用户权限的命令。
/tmp
目录存放了临时文件,一些命令和应用程序会用到这个目录。该目录下的所有文件会被定时删除,以避免临时文件占满整个磁盘。
/var
目录以及该目录下的子目录中通常保存经常变化的内容,如系统日志、邮件文件等。
早期的 FHS 规定系统开机后所产生的各项信息应该放在 /var/run
目录下,新版的 FHS 则规范到 /run
下。由于 /run
可以使用内存来仿真,因此效能上会好很多。例如,CentOS7 系统的自动识别 CDROM 光盘映像文件则加载到 /run/media/
目录下。
根据 FHS(Filesystem Hierarchy Standard,文件系统层次化标准),所有的 Linux 文件系统都有标准的文件和目录结构。那些标准的目录又包含一些特定的文件。因此,了解 Linux 操作系统常见目录的作用,对维护和管理 Linux 系统有着重要作用。