来水一帖!
/ 根目录

文件系统的起点

包含系统运行所必需的所有文件和目录结构。
/root

超级用户(root)的主目录,与普通用户的/home目录功能类似,但位置独立。

只有 root 用户可以访问和修改此目录下的内容。

/boot

存放系统启动相关文件,如内核镜像(vmlinuz-)、初始化内存盘(initrd.img-)、引导加载程序配置(如 GRUB 的配置文件)。

系统启动时,BIOS/UEFI 会加载此处的文件来启动 Linux 内核。

/bin

binary,存放基本可执行的程序;

例如:ls、cp、mv、cat等命令;

/sbin

system binary存放系统管理类可执行程序,主要用于系统管理和配置。

例如:ifconfig、ip、reboot等命令

/etc

全称 “etcetera”,存放系统配置文件,包括系统服务、应用程序的配置信息。

例如/etc/passwd(用户账户信息)、/etc/group(用户组信息)、/etc/fstab(文件系统挂载配置)、/etc/hosts(主机名与 IP 地址映射)、/etc/sysctl.conf(内核参数配置)等

/usr

全称 “Unix System Resources”,存放用户相关的应用程序和文件,是系统中最大的目录之一。

/usr/bin:存放非基本的用户可执行程序(如gcc编译器、wget下载工具等)。

/usr/sbin:存放非基本的系统管理程序(如httpd网页服务器、vsftpdFTP 服务器等)。

/usr/lib:应用程序的库文件(类似 Windows 的 DLL 文件)。

/usr/share:共享数据,如文档、图标、字体等(如/usr/share/doc存放软件文档)。

/usr/local:通常用于存放用户自行编译安装的软件,其内部结构与/usr类似(有bin、sbin、lib等子目录)。

/var

全称 “variable”,存放经常变化的文件,如日志、缓存、临时邮件等。

/var/log:系统和应用程序的日志文件(如/var/log/syslog系统日志、/var/log/auth.log认证日志)。

/var/spool:队列文件,如邮件队列(/var/spool/mail)、打印队列(/var/spool/cups)等。

/var/www:许多 Web 服务器(如 Apache)默认的网页根目录。

/var/tmp:比/tmp更持久的临时文件(系统重启后可能保留)。

/tmp

存放临时文件,供系统和应用程序使用。

该目录下的文件在系统重启后会被清空,任何用户都可以读写此目录下的文件。

/dev

存放设备文件

,Linux 中所有硬件设备(如硬盘、键盘、鼠标、打印机等)都被抽象为文件,通过这些文件可以访问硬件。

字符设备(按字节读写,如/dev/tty终端、/dev/input/mouse0鼠标)。

块设备(按块读写,如/dev/sda第一个硬盘、/dev/nvme0n1NVMe 固态硬盘)。

特殊文件(如/dev/null空设备,写入的数据会被丢弃;/dev/zero零设备,可生成无限的空字节)。

/dev/null可以当作垃圾站

/proc

虚拟文件系统,存放系统进程和内核状态的动态信息,不占用实际磁盘空间。

/sys

虚拟文件系统,主要用于暴露硬件设备的信息和控制接口,与/proc类似,但组织更清晰,更专注于硬件相关信息。

例如/sys/class/net下包含网络接口的信息,/sys/block下包含块设备的信息。

/lib和 /lib64

存放系统启动和运行时必需的共享库文件

/lib对应 32 位系统或 64 位系统中的 32 位库,/lib64则专门用于 64 位系统的 64 位库。

/mnt和/media

用于临时挂载文件系统(如 U 盘、移动硬盘、光盘等外部存储设备)。

/mnt:通常由管理员手动挂载设备时使用。

/media:现代 Linux 系统通常自动挂载外部设备(如插入 U 盘后,会自动挂载到/media/用户名/设备名)。