ls /etc系统和服务的配置文件几乎都在这里,如 /etc/ssh、/etc/nginx。
约 1137 字大约 4 分钟
2026-05-14
Windows 把磁盘分成 C 盘、D 盘,Linux 不是这样——它只有一棵从 / 开始的目录树,所有磁盘、设备、配置、日志都挂在这棵树的不同位置。知道“配置在哪、日志在哪、谁不能乱动”,是排查问题时少走弯路的前提。
理解从 / 开始的目录树,知道配置、日志、程序、用户数据各自放在哪里,遇到问题能直奔对应目录。
ls /etc系统和服务的配置文件几乎都在这里,如 /etc/ssh、/etc/nginx。
ls /var/log服务日志、系统日志的默认位置,排障第一站。
du -sh /var/*磁盘满时,逐层用 du 找出膨胀的子目录。
cat /proc/cpuinfo/proc 是内核暴露的虚拟文件,不占磁盘。
/ 开始Linux 没有盘符。/ 是唯一的根,往下分出 /etc、/var、/home 等目录。插一块新硬盘,不会多出个 “E 盘”,而是被“挂载”到树上的某个目录(比如 /mnt/data),从此访问那个目录就是访问那块盘。这个机制见 挂载与 fstab。
| 目录 | 放什么 | 你什么时候会去 |
|---|---|---|
/etc | 系统与服务的配置文件 | 改 nginx、ssh、网络配置 |
/var/log | 各种日志 | 服务报错、排查异常 |
/var | 可变数据:日志、缓存、队列、数据库文件 | 磁盘被写满时排查 |
/home | 普通用户的家目录 | 用户的个人文件、配置 |
/root | root 用户的家目录 | 注意不是 /home/root |
/usr/bin、/bin | 系统命令和程序 | which 命令时会看到 |
/usr/local | 手动安装的软件 | 区分系统自带和自己装的 |
/tmp | 临时文件,重启可能被清空 | 别把重要东西放这里 |
/opt | 第三方大型软件 | 商业软件、自带打包的程序 |
/proc 和 /sys:不在磁盘上的目录/proc 和 /sys 看起来是目录,其实是内核实时生成的“虚拟文件系统”。cat /proc/cpuinfo 看到的是当前 CPU 信息,/proc/1234/ 是 PID 1234 进程的实时状态。它们不占磁盘空间,也不能像普通文件那样备份——是内核开给你的一扇观察窗口。
目录结构的价值在于“把现象映射到位置”:
/var/log 里它的日志,再看 /etc 里它的配置/ 开始 du -sh /*,逐层下钻找膨胀点(多半在 /var)which 看它在不在 /usr/bin 等 PATH 目录/proc/<PID>/系统目录不要乱动
/etc、/usr、/bin、/var 是系统的“骨架”。改 /etc 下的配置前先 cp 备份原文件;不要把业务数据塞进系统目录(放 /home、/srv 或专门挂载的盘);更不要为了腾空间去删 /var 下不认识的子目录——先确认它属于哪个服务。
| 误区 | 更稳妥的做法 |
|---|---|
把业务数据、上传文件堆在 /、/usr 等系统目录 | 用 /home、/srv 或单独挂载的数据盘 |
磁盘满了就删 /var 下不认识的目录 | 先 du -sh 定位、确认归属,多半是日志可清理 |
以为 /tmp 里的文件会一直在 | /tmp 可能在重启或定时任务里被清空 |
改 /etc 配置不留退路 | 改之前 cp xx.conf xx.conf.bak,出错能秒回滚 |
版权归属:Shuo Liu