连载中 2/20

目录结构与一切皆文件:Linux 的世界观

2026-10-12 · 27 阅读 · 0 评论 · 0 赞

根目录地图:FHS 十分钟版

Windows 有 C、D、E 盘,Linux 只有一棵从 / 出发的树。常用目录就这几个,背下这张表能解决 90% 的找文件问题:

目录放什么后端高频场景
/etc系统与应用配置改 nginx.conf、ssh 配置
/var/log日志与可变数据排错第一站
/home普通用户家目录自己的脚本和文件
/rootroot 的家目录别乱进
/usr程序与库/usr/local 装自编译软件
/opt第三方大软件JDK、自研服务常放这
/tmp临时文件重启可能被清空
/proc /sys内核与进程的虚拟文件排错宝库,见下文

这套约定叫 FHS(文件系统层次标准)。它解决的是预期问题:任何一台 Linux,日志就在 /var/log,配置就在 /etc——闭着眼都能摸到。

一切皆文件

这是 Linux 最核心的设计哲学:硬盘是文件(/dev/sda)、键盘是文件、进程信息是文件、甚至网络连接也能当文件读。统一成文件的好处:一套 API(open/read/write/close)通吃一切设备,一套命令(cat/ls)通吃一切信息源。你在 Windows 里要用设备管理器、任务管理器、磁盘管理三个工具看的东西,Linux 里都是文件,cat 一下就行。

/proc:进程与内核的实时档案

$ cat /proc/cpuinfo | grep "model name" | head -1    # CPU 型号
$ cat /proc/meminfo | head -3                         # 内存详情
$ ls /proc/1234/                                      # PID 1234 进程的全部档案
    cmdline   ← 启动命令    cwd → 工作目录    fd/ → 打开的文件句柄
$ ls -l /proc/1234/fd | wc -l                         # 句柄数(排查 too many open files)

# 这些文件不在磁盘上,是内核现做的——读它们就是问内核要数据
# 这也是 "一切皆文件" 最实用的体现

记住这条排查线:进程异常时,先看 /proc/PID/fd(句柄泄漏)、再 cmdline(它到底是谁)。

挂载:把磁盘接进目录树

新插一块盘,Linux 不会像 Windows 那样自动出现个 F 盘——你得选个目录把挂上去:mount /dev/sdb1 /data,之后 /data 里的读写就落在那块盘上。开机自动挂载写进 /etc/fstab。云盘扩容、日志盘分离、数据盘迁移,本质都是挂载操作。理解了挂载,目录树只是挂载点的集合——这句话在磁盘管理篇会反复用到。

路径与家目录

/etc/nginx/nginx.conf     绝对路径:从 / 出发,永远有效
./logs/app.log            相对路径:从当前位置出发
~                         家目录缩写(/home/你的用户名)
~/.bashrc                 家目录下的配置(开头那个点 = 隐藏文件)
. 与 ..                   当前目录 / 上一级目录
cd -                      回到上一次所在的目录(很好用)

下一篇进入第一批实操命令:ls、cp、mv、rm 的安全姿势,以及找文件的神器 find。

☕
503

10 年全栈工程师 · 503咖啡馆主理人

#Linux目录#FHS#一切皆文件#proc#挂载

评论 (0)

热门推荐

连载中 11/22

主从搭建实操:从零配出一主两从

光讲原理不过瘾?手把手搭一主两从:my.cnf 六个参数、复制账号、GTID、CHANGE REPLICATION SOURCE TO、SHOW REPLICA STATUS 验收,附翻车排查清单。

#MySQL#主从复制#GTID#主从搭建#高可用
2026-05-07 · 10114 阅读 · 0 评论 · 0 赞
连载中 16/22

连接池:HikariCP 参数与连接风暴

连接池不是越大越好:8 核机器配 1000 连接反而更慢的数学原理,HikariCP 四个必调参数,maxLifetime 与 wait_timeout 的隐形陷阱。

#MySQL#连接池#HikariCP#maxLifetime#连接风暴
2026-05-10 · 9877 阅读 · 0 评论 · 0 赞
连载中 4/16

缓存穿透:恶意 ID 打穿 MySQL 的四道防线

请求的数据在缓存和数据库里都不存在时,缓存形同虚设。聊聊参数校验、空值缓存、布隆过滤器、限流熔断四道防线的原理与组合打法。

#Redis#缓存穿透#布隆过滤器#高可用
2026-05-16 · 9307 阅读 · 21 评论 · 287 赞