Linux 的根目录(/
)是文件系统的起点,每个子目录都有特定的用途。以下是常见目录及其存放内容的详细说明:
核心目录
-
/bin
-
存放系统最基本的用户命令(如
ls
,cp
,bash
等)。 -
所有用户均可使用,通常是二进制可执行文件。
-
现代系统中多为
/usr/bin
的符号链接。
-
-
/boot
-
启动所需的文件:内核(
vmlinuz
)、初始化内存盘(initramfs
)、引导加载器(如 GRUB 的配置文件)。
-
-
/dev
-
设备文件:如硬盘(
/dev/sda
)、终端(/dev/tty
)、虚拟设备(/dev/null
)等。 -
由内核动态生成,用户或程序通过这些文件与硬件交互。
-
-
/etc
-
系统全局配置文件:
-
软件配置(如
/etc/nginx/nginx.conf
)。 -
系统配置(如
/etc/fstab
挂载表、/etc/passwd
用户账户)。 -
启动脚本(如
/etc/init.d/
或/etc/systemd/
)。
-
-
-
/home
-
用户主目录:每个用户拥有独立的子目录(如
/home/alice
),存放个人文件、配置(隐藏文件如.bashrc
)。
-
-
/lib
&/lib64
-
系统库文件(动态链接库
.so
):供/bin
和/sbin
中的程序使用。 -
现代系统中多为
/usr/lib
的符号链接。
-
-
/media
&/mnt
-
挂载点:
-
/media
:自动挂载可移动设备(如 U 盘、光盘)。 -
/mnt
:临时手动挂载文件系统(如网络存储)。
-
-
-
/opt
-
可选软件包:第三方大型软件(如 Oracle DB、MATLAB)通常安装在此,每个软件在独立子目录中。
-
-
/proc
-
虚拟文件系统:动态反映内核和进程信息(如
/proc/cpuinfo
、/proc/[PID]
)。 -
不占用磁盘空间,直接由内核生成。
-
-
/root
-
超级用户(root)的主目录,而非
/home/root
。
-
-
/run
-
运行时数据:存放系统启动后生成的临时文件(如 PID 文件、套接字)。
-
替代旧版的
/var/run
。
-
-
/sbin
-
系统管理命令(如
fdisk
,iptables
,init
)。 -
通常需要 root 权限执行,现代系统中多为
/usr/sbin
的符号链接。
-
-
/srv
-
服务数据:存放网站(
/srv/www
)、版本控制仓库(/srv/git
)等服务相关的文件。
-
-
/tmp
-
临时文件:所有用户可读写,系统重启后可能清空(部分发行版使用
tmpfs
内存文件系统加速访问)。
-
-
/usr
-
用户软件资源(UNIX System Resources):
-
/usr/bin
:大部分用户命令。 -
/usr/lib
:软件库文件。 -
/usr/local
:本地编译安装的软件(优先级高于系统包管理器)。 -
/usr/share
:架构无关的数据(如文档、字体)。
-
-
-
/var
-
可变数据:
-
日志(
/var/log
)。 -
缓存(
/var/cache
)。 -
邮件队列(
/var/spool/mail
)。 -
数据库文件(如
/var/lib/mysql
)。
-
-
其他目录
-
/lost+found
-
由
fsck
在文件系统修复时恢复的碎片文件。
-
-
/sys
-
虚拟文件系统,用于与内核交互(如管理设备、电源)。
-
现代变化
-
合并
/bin
,/sbin
,/lib
到/usr
:
许多发行版(如 Fedora、Arch)通过符号链接将这些目录合并到/usr
对应子目录,简化结构。 -
/etc
与/usr
分离:
即使软件安装在/usr
,其配置文件仍在/etc
中。
总结
-
系统必备:
/bin
,/boot
,/dev
,/etc
,/lib
,/sbin
。 -
用户相关:
/home
,/root
。 -
运行时数据:
/proc
,/run
,/sys
,/tmp
。 -
软件与数据:
/opt
,/usr
,/var
。
通过这种结构,Linux 实现了清晰的文件层级分工,便于管理和维护。不同发行版可能略有差异,但总体遵循 FHS(文件系统层级标准)。