了解 Linux 文件系统目录/层次结构
我已经写过关于文件系统的概念信息,尤其是数据结构和相关术语,它们可以帮助您成为一名成功的系统管理员。但是我确实收到了一些电子邮件,询问 /opt 目录或 /usr 或 /lost+found 目录及其在系统中的用途。
探索 Linux 文件系统层次结构
典型的 Linux 系统具有以下目录:
=> /:这是根目录。
=> /bin:此目录包含单用户模式所需的可执行程序以及启动或修复系统所需的可执行程序。
=> /boot:包含引导加载程序的静态文件。此目录仅保存引导过程中所需的文件。
=> /dev:特殊文件或设备文件,指的是硬盘、键盘、显示器、鼠标和调制解调器等物理设备
=> /etc:包含机器本地的配置文件。一些较大的软件包(如 Apache)可以在 /etc 下拥有自己的子目录,即 /etc/httpd。/etc 中的一些重要子目录:
- /etc/skel:当创建一个新的用户帐户时,该目录中的文件通常会被复制到用户的主目录中。
- /etc/X11:X11 窗口系统的配置文件。
- /etc/sysconfig:SysV 脚本使用的重要配置文件,存储在 /etc/init.d 和 /etc.rcX 目录中
- /etc/cron.*:cron 守护进程配置文件,用于执行计划的命令
=> /home:您存储数据和其他文件的温馨家园。然而,在大型安装中,/home 目录的结构取决于本地管理决策。
=> /lib:此目录应保存启动系统和运行根文件系统中的命令所需的共享库。
=> /lib64:启动系统和运行根文件系统中的命令所需的 64 位共享库。
=> /mnt:此目录包含临时挂载文件系统的挂载点
=> /opt:此目录应包含附加包,例如安装下载 Firefox 或静态文件
=> /proc:这是 proc 文件系统的挂载点,提供有关正在运行的进程和内核的信息。
=> /root:此目录通常是 root 用户的主目录。
=> /sbin:与 /bin 类似,此目录包含启动系统所需的命令,但这些命令通常不由普通用户执行,root / admin 用户特定的命令都放在这里。
=> /tmp:此目录包含临时文件,这些文件可能会被删除而不需要通知,例如通过常规作业或在系统启动时。
=> /usr:此目录通常从单独的分区安装。它应该只保存可共享的只读数据,以便它可以由运行 Linux 的各种机器安装(适用于无盘客户端或多用户 Linux 网络,如大学网络)。所有与用户相关的程序的程序、库、文档等。
=> /var:此目录包含大小可能发生变化的文件,例如假脱机文件和日志文件。
=> /lost+found:每个分区的上层目录中都有一个 lost+found。故障期间保存的文件都在这里,例如用于 ext2/ext3 fsck 恢复。
如何从命令提示符获取有关每个目录的信息?
上面的列表只是总结了重要的目录,您可以通过输入以下命令来获取列表以显示文件系统层次结构的描述(在所有其他 UNIX 类系统(如 HP-UX)下有效):
$ man hier
以树状格式列出目录内容
ls 命令是探索文件系统的基本工具。您可以使用 tree 命令来递归列出目录。它会生成深度缩进的文件列表。
$ tree
输出:
|-- DIR_COLORS |-- DIR_COLORS.xterm |-- Muttrc |-- Muttrc.local |-- NetworkManager |-- X11 | |-- Xmodmap | |-- Xresources | |-- applnk | |-- fs | | `-- config ..... ....... ..
find 是另一个在目录层次结构中搜索文件的有用命令。