Linux 目录结构
RHEL 9 根目录与 FHS 常用路径:/etc、/var、/home、/usr、/tmp 等各自放什么,以及家目录与路径读法。
本页目录
Linux 没有 C 盘、D 盘的概念,一切从 /(根目录)长出来。考试和运维里,你不需要背下整棵 FHS 树,但必须在 5 秒内判断:配置该去哪改、日志去哪看、软件装到哪、用户文件在哪。本篇只讲这条「最小必备地图」。
系列:从 RHCSA 到 RHCE · 第 1 / 17 篇 下一篇:Linux 基础命令 总目录:系列索引
环境说明
- 系统:RHEL 9 / Rocky 9 / AlmaLinux 9
- 身份:实验可用 root;只读浏览普通用户也可以
- 前置:会登录系统即可;具体命令在下一篇展开
为什么目录长这样
Linux 遵循 FHS(Filesystem Hierarchy Standard):用统一约定告诉发行版和用户「什么东西该放哪」。好处是:
- 换一台 RHEL / Ubuntu,你仍知道配置大概在
/etc - 脚本、Ansible、RPM 包可以按固定路径安装文件
- 权限可以按目录分区管理(例如
/home各用户隔离)
Windows 用盘符划分存储;Linux 用一棵树划分职责。
一棵最小的目录树
/
├── bin/ sbin/ usr/ 系统命令与用户软件
├── boot/ 启动相关(内核、引导)
├── dev/ 设备文件
├── etc/ 主机配置(几乎全是文本)
├── home/ 普通用户家目录
├── root/ root 的家目录(不在 /home 下)
├── run/ 运行时数据
├── tmp/ 临时文件(重启可能清空)
├── var/ 会变化的数据:日志、缓存、spool
└── opt/ 可选的第三方软件(部分场景)
下面按「你一周内一定会用到」的频率排序。
高频目录速查
| 路径 | 放什么 | 你通常会… |
|---|---|---|
| /etc | 系统与服务配置文件 | vim /etc/ssh/sshd_config |
| /home | 普通用户家目录 | /home/tom |
| /root | root 的家目录 | root 登录后的 ~ |
| /var | 可变数据 | 日志在 /var/log |
| /var/log | 系统与服务日志 | 排障 less / tail |
| /tmp | 临时文件 | 实验、解压、中间文件 |
| /usr | 用户级程序与数据 | 多数命令在 /usr/bin |
| /bin /sbin | 基础命令(常链到 /usr/bin) | 系统启动也会用 |
| /boot | 内核、initramfs、grub | 一般不手改 |
| /dev | 设备即文件 | /dev/vda、/dev/null |
| /opt | 第三方可选软件 | 自编译或商业软件常见 |
| /srv | 本机对外服务数据 | 部分 Web/FTP 数据 |
RHEL 9 上
/bin、/sbin等多为指向/usr/*的符号链接(usr-merge),概念上仍按上表记即可。
配置:/etc
几乎所有「改了要重启服务才生效」的文本,都在 /etc:
/etc/hostname
/etc/hosts
/etc/passwd
/etc/shadow
/etc/fstab
/etc/ssh/sshd_config
/etc/yum.repos.d/
/etc/chrony.conf
/etc/firewalld/
特点:
- 文本为主,改完通常要
systemctl restart xxx - 子目录按服务划分(如
yum.repos.d、ssh) - 权限敏感:
/etc/shadow等普通用户不可读
考点:题目若说「修改配置文件」,九成在
/etc下;若说「查看日志」,九成在/var/log。
可变数据:/var
/var = variable,运行中会不断变大的东西:
| 路径 | 含义 |
|---|---|
| /var/log | 系统日志(messages、secure、各服务日志) |
| /var/tmp | 比 /tmp 更可能跨重启保留(仍视策略) |
| /var/spool | 队列(邮件、打印、cron 等) |
| /var/lib | 程序状态数据(如 RPM 库) |
| /var/www | httpd 默认网页根的常见位置 |
日志排障时:
ls /var/log
less /var/log/messages
tail -n 50 /var/log/secure
(具体命令下一篇与服务篇还会用到。)
家目录:/home 与 /root
| 用户 | 家目录 |
|---|---|
| root | /root |
| 普通用户 tom | /home/tom |
| 普通用户 lisi | /home/lisi |
登录后默认进入家目录;~ 就是当前用户的家目录。
[root@server ~]# pwd
/root
[tom@server ~]$ pwd
/home/tom
注意:
/root不在/home下面,权限通常仅 root 可进- 用户个人配置也常在自己家目录:
~/.bashrc、~/.ssh/ - 删除用户是否连家目录一起删,是用户管理篇的考点(
userdel -r)
临时目录:/tmp
- 给所有用户写实验中间文件用
- 有 sticky 特殊位:别人不能删你的文件(详见权限篇)
- 重启或 systemd-tmpfiles 策略可能清理部分内容
- 不要把唯一副本的重要数据只放在
/tmp
考试里解压、下载材料、写临时脚本,用 /tmp/xxx 很合适;正式部署别放这。
命令与软件:/bin、/sbin、/usr
| 路径 | 习惯含义 |
|---|---|
| /bin、/usr/bin | 所有用户可用的命令(ls、cp、vim…) |
| /sbin、/usr/sbin | 偏系统管理命令(reboot、ip 部分场景、sshd…) |
| /usr/lib、/usr/lib64 | 库文件 |
| /usr/share | 架构无关数据(文档、man 等) |
| /opt | 第三方可选软件包 |
用 which / type 查命令在哪(权限篇 sudo 也会用):
which ls
which useradd
RHEL 9 中
useradd等常在/usr/sbin;普通用户 PATH 可能不含 sbin,所以提权或用绝对路径时会写/usr/sbin/useradd——sudoers 里尤其常见。
设备:/dev
「一切皆文件」包括设备:
| 路径 | 含义 |
|---|---|
| /dev/vda、/dev/sda | 整块磁盘 |
| /dev/vda1 | 分区 |
| /dev/null | 黑洞,丢弃输出 |
| /dev/zero | 不断输出 0 |
| /dev/tty | 当前终端 |
存储与分区篇会大量出现 /dev/vdX;先记住:磁盘和分区在 /dev 下以文件名出现。
启动:/boot
内核镜像、initramfs、引导配置(grub)等。考试一般不要求手改 grub;误删 /boot 会导致系统起不来。做快照前不要动这个目录。
路径怎么读
| 写法 | 含义 | 例子 |
|---|---|---|
| 绝对路径 | 从 / 开始写全 | /etc/hosts |
| 相对路径 | 从当前目录算 | ../log、./script.sh |
| ~ | 当前用户家目录 | ~/notes.txt |
| .. | 上一级 | /var/log → .. 是 /var |
| . | 当前目录 | ./run.sh |
下一篇会大量练习 cd / ls;本篇先建立「地址簿」感:看到 /var/log/secure,应反应出——根 → 可变数据 → 日志 → 安全相关日志。
和考试场景的对应
| 题目表述 | 优先去哪 |
|---|---|
| 修改软件仓库 | /etc/yum.repos.d/ |
| 修改主机名相关 | hostnamectl;静态解析可看 /etc/hosts |
| 配置 SSH | /etc/ssh/sshd_config |
| 开机挂载 | /etc/fstab |
| 看认证失败 | /var/log/secure |
| 放网页 | /var/www/html(httpd 默认) |
| 临时解压 | /tmp |
| 用户家目录 | /home/用户名 或 /root |
推荐实验(10 分钟)
以 root 登录,只做观察(勿删系统文件):
pwd
ls /
ls /etc | head
ls /var/log | head
ls /home
ls /root
which ls
which reboot
ls -ld /tmp
ls /dev/vd* /dev/sd* 2>/dev/null
期望
ls /能看到etc、var、home、root、usr、tmp、boot等which ls有输出;reboot可能在/usr/sbin/tmp权限常见为drwxrwxrwt(末位t即 sticky)
速查表
| 一句话 | 路径 |
|---|---|
| 配置文件 | /etc |
| 日志 | /var/log |
| 普通用户家目录 | /home/用户名 |
| root 家目录 | /root |
| 临时文件 | /tmp |
| 命令程序 | /bin /usr/bin(管理命令 /sbin) |
| 磁盘分区设备 | /dev |
| 启动文件 | /boot |
| 第三方软件(可选) | /opt |
考点与易错
考点:
/etc配置、/var/log日志、/home与/root的区分——选择题和实操定位都爱考。 易错:把用户文件放到/root下却用普通用户去读,权限不够。 易错:以为/tmp重启后一定还在;重要数据只留/tmp。 易错:在/etc里找不到某服务配置——有时在/etc/服务名/子目录,用ls /etc | grep 服务名。 练习环境:课堂机若叫red,目录结构与本文一致。
小结
- 一棵树从
/开始:配置在/etc,日志在/var/log,用户在/home。 - root 的家目录是
/root,不是/home/root。 - 临时文件用
/tmp,设备文件在/dev,命令多在/usr/bin。 - 路径分绝对与相对;记不住细节时,先
pwd+ls上一级。
下一篇进入具体命令:在目录树里移动、增删文件,并把 ls -l 读成运维可用的信息。
系列导航:总目录 · 下一篇:Linux 基础命令