Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

🐧 Explain Linux

用架构视角讲清楚 Linux —— 从按下电源键到登录桌面

Explain Linux by architecture, not by memorizing commands.

License: MIT PRs Welcome Author


这是什么

一份面向初学者的 Linux 知识地图

不讲"背下这 100 个命令",而是回答一个更根本的问题:

我按下了电源键,屏幕上出现了一个能打字的命令行 —— 这中间到底发生了什么?每一层是谁在负责?出问题是哪一层的锅?

大多数 Linux 教材的问题是按命令分类(文件命令 / 网络命令 / 权限命令),结果初学者学完还是不知道一块网卡从通电到能 ping 通要经过哪些组件。本仓库反过来,按系统分层来讲,每一章回答三个问题:

  1. 这一层是干什么的,为什么必须有它?
  2. 它的关键组件和配置文件在哪里?
  3. 它坏了会表现出什么症状,怎么排查?

全书心智模型

一台 Linux 机器从通电到可用,是一条自下而上的链条。把它记住,后面每一章都只是往链条上挂细节:

flowchart TD
    A["① 固件 UEFI / BIOS"] --> B["② 引导程序 GRUB"]
    B --> C["③ 内核 Kernel + initramfs"]
    C --> D["④ init 系统 systemd (PID 1)"]
    D --> E["⑤ 内核子系统:进程/内存/文件系统/网络/cgroup"]
    D --> F["⑥ 用户空间服务:网络、日志、SSH、桌面"]
    F --> G["⑦ 登录会话 Shell / 桌面"]

    E -.->|procfs / sysfs 暴露接口| H["/proc /sys"]
    H -.-> D
Loading

三个关键认知(新手最容易缺的):

认知 说明
内核只有一份,发行版有无数 发行版 = 内核 + 用户态工具 + 包管理 + 默认配置。Debian 和 Arch 的差异 90% 在用户态。
一切皆文件,但文件不都是磁盘 /proc/sys/dev 是内核开的窗口,读写它们等于给内核下命令。
systemd 不只是一个 init 它同时是服务管理器、日志系统、定时器、会话管理、网络配置器。现代 Linux 的"中央调度室"。

目录

第一部分 · 系统启动链路

# 章节 关键词 状态
00 总览:一台 Linux 机器是怎么跑起来的 分层模型、开机全景 🚧
01 引导与内核 UEFI、ESP、GRUB、initramfs、Kconfig、/proc/cmdline、cgroup 🚧
02 系统初始化与进程管理 PID 1、systemd、unit、target、journal、signal 🚧
03 文件系统与存储 分区、fstab、ext4/xfs/btrfs、LVM、inode 🚧

第二部分 · 使用与开发

# 章节 关键词 状态
04 用户、权限与安全 用户组、sudo、PAM、ACL、SELinux/AppArmor 🚧
05 Shell 与命令行 bash/zsh/fish、管道、重定向、脚本 🚧
06 发行版与包管理 Debian/RHEL/Arch/Alpine、apt/dnf/pacman/apk 🚧
11 运行时与开发工具链 libc/glibc、动态链接、binutils、gcc 🚧

第三部分 · 网络

# 章节 关键词 状态
07 网络基础与配置 接口、路由、DNS、nsswitch.conf、DHCP、netplan/NetworkManager 🚧
08 网络服务与应用 nginx、DNS 服务、NTP 客户端、CUPS 打印 🚧
09 防火墙与内核网络参数 netfilter、iptables、nftables、firewalld、ufw、sysctl 🚧

第四部分 · 图形与运行时

# 章节 关键词 状态
10 图形桌面栈 Xorg/Wayland、DM/DE/WM、D-Bus、输入法、字体 🚧

第五部分 · 虚拟化、容器与运维

# 章节 关键词 状态
12 虚拟化 KVM、QEMU、libvirt、virsh 🚧
13 容器 namespace、cgroup、docker、containerd、podman 🚧
14 远程访问与文件传输 ssh、scp、rsync、隧道 🚧
15 日志、排障与性能观测 journalctl、dmesg、perf、eBPF 🚧

附录

# 附录 内容
A 命令速查表 按场景索引的高频命令
B 术语中英对照 易混淆术语辨析

状态说明:🚧 已有骨架待补充细节 · ✅ 已完成 · ⬜ 未开始


怎么读

三条路线,按你的目标选一条:

路线 适合谁 阅读顺序
使用者路线 刚装完 Linux,想能干活 05 → 06 → 04 → 07 → 14
运维路线 要管服务器 01 → 02 → 07 → 09 → 08 → 15
架构路线 想搞懂原理(推荐) 00 → 01 → 02 → 03 → 13 → 12

建议的读法:读每一章时开着终端,用 man--helpsystemctl status 去验证文档里说的东西。本仓库不替代 man,它是 man 的索引和地图。


约定

  • 命令前的 $ 表示普通用户,# 表示 root。
  • 示例默认在 Debian/Ubuntu 系上验证,其他发行版差异会在正文标注。
  • 涉及修改 /etc 的操作一律标注 ⚠️
  • 本仓库只讲"这件事的结构和原理",具体调优参数请查阅对应官方文档。

如何参与

发现错误、有更好的讲法、想补一章 —— 都欢迎:

  • Issue 指出问题或提需求
  • 提 PR 直接改进内容(每章末尾的「待补充」列表就是可以直接认领的 TODO)
  • 觉得有用请点个 Star ⭐,这是持续更新的动力

License

MIT © 2026 LeisureLinux

Enjoy Life, Enjoy Linux.

About

用架构视角讲清楚 Linux:从固件引导到容器运维的完整分层知识地图(面向初学者)

Topics

Resources

Stars

6 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors