Skip to content

Linux 知识图谱 ​

本知识库以节点、关系和可验证证据组织 Linux,而不是按问答或命令手册堆砌内容。每个核心节点都连接前置知识、底层机制、观测命令、指标、故障现象、验证实验和官方来源。

高频面试题 ​

定位与读者 ​

  • 系统学习者:沿前置关系建立内核、用户空间和运维工具的整体模型。
  • SRE(Site Reliability Engineering,站点可靠性工程)与运维工程师:从现象节点进入指标、组件、命令、原因和修复链。
  • 性能与安全工程师:追踪跨 CPU、内存、I/O、网络、Cgroup 和安全控制的影响。
  • RAG(Retrieval-Augmented Generation,检索增强生成)系统:以稳定节点 ID 和独立 Markdown 页面切分、引用和溯源。

基线与边界 ​

  • 内核机制:面向当前受支持的 Linux 6.x 系列,版本敏感项单独标注。
  • 发行版:同时覆盖 Debian 13、Ubuntu 24.04 LTS 与 RHEL 9/10。
  • init:以 systemd 为主,明确它是用户空间实现而不是 Linux 内核组成。
  • Shell:区分 POSIX Shell、GNU Bash 和具体工具实现。
  • 实验:只读命令可在隔离 Linux 容器或虚拟机执行;危险写操作不自动执行。

总体图谱 ​

本体规范 ​

  • 图谱设计(开发工具)
  • 节点类型(知识图谱本体——开发工具)
  • 关系类型(知识图谱本体——开发工具)
  • Schema(知识图谱本体——开发工具)
  • ID 与命名规则(知识图谱本体——开发工具)

节点唯一 ID 使用 linux.<domain>.<concept>。关系方向使用主动语义,例如 Command -[:OBSERVES]-> KernelSubsystem,因果关系必须携带条件或证据。

领域目录 ​

领域核心节点范围
01 Linux 基础、定位与硬件边界4建立内核、发行版、用户空间、CPU 特权级、中断与异常的边界。
02 内核接口与系统调用4解释系统调用 ABI、调用路径、异常返回以及内核状态接口。
03 启动流程与 systemd4连接固件、Bootloader、内核、initramfs、PID 1 与服务依赖图。
04 进程、调度与 IPC6覆盖 task、进程/线程、创建回收、调度、信号与进程间通信。
05 虚拟内存与内存压力6连接地址转换、进程映射、页缓存、回收、Swap、OOM、NUMA 与压力指标。
06 文件系统、VFS 与 I/O5连接路径解析、inode、打开文件、挂载、文件系统实现和 I/O 路径。
07 块存储、LVM 与 RAID4解释块设备、分区、设备映射、LVM、RAID 与文件系统的层级关系。
08 身份、权限与安全控制6覆盖 DAC、ACL、特殊权限、Capabilities、PAM、SSH、LSM、Seccomp 与加固。
09 Linux 网络栈与虚拟网络5从 Socket 经 TCP/IP、路由、Netfilter 到网卡和容器虚拟网络。
10 Shell、工具链与定时任务4覆盖 Shell 解析、文本处理、动态链接、软件包、环境变量和调度。
11 日志、状态接口与可观测性4建立日志来源、/proc 与 /sys、经典工具、系统调用和 eBPF 的证据链。
12 性能工程与容量基线4坚持测量、定位、修改、回归的闭环,并区分利用率、饱和度和错误。
13 容器、Cgroup 与虚拟化4连接 Namespace、Cgroup、OverlayFS、容器运行时、虚拟机与宿主资源。
14 故障排查图谱18 条链路从现象到指标、组件、诊断、原因和修复

跨领域程序启动路径 ​

学习与排障入口 ​

  • 学习路径(开发工具)
  • 故障排查路径(开发工具)
  • 命令与底层对象映射(开发工具)
  • 跨领域可视化(开发工具)
  • 覆盖矩阵(开发工具)
  • 来源与验证报告(开发工具)

机器可读图数据 ​

图谱数据(开发工具) 提供 nodes.jsonl、edges.jsonl、CSV、JSON Schema 和 Neo4j Cypher 导入模板。JSONL 保留完整属性,CSV 用于交换和批量导入。

图数据库导入 ​

  1. 将 nodes.csv 与 edges.csv 放入 Neo4j import 目录。
  2. 执行 import.cypher,先按 id 合并节点,再按 source/target 创建 RELATED 关系。
  3. 关系真实类型保存在 relation 属性中,以避免动态 Cypher 和 APOC 依赖。
  4. 导入后检查节点数、关系数、孤立节点和重复 ID。

RAG 切分建议 ​

  • 主切分单位:一个核心节点 Markdown 文件。
  • 主键:frontmatter 的 id,禁止以文件名作为唯一业务键。
  • 元数据过滤:domain、type、difficulty、kernel_versions、verified_at。
  • 召回扩展:命中节点后沿 REQUIRES_KNOWLEDGE_OF、OBSERVES、DIAGNOSED_BY 和 NEXT_STEP 扩一跳。
  • 答案溯源:优先引用节点自身的官方来源,不把 Mermaid 当作事实数据源。

生成批次 ​

批次范围状态
01本体、Schema、命名、基础、系统调用、启动、进程已完成
02内存、文件系统、存储、权限与安全已完成
03网络、Shell、日志、性能、容器与虚拟化已完成
0418 条故障链、学习路径、可视化与覆盖矩阵已完成
05JSONL、CSV、Cypher、Schema 与自动校验已完成

来源与验证规则 ​

关键结论优先来自 Linux Kernel Documentation、man-pages、systemd、GNU/POSIX、RFC 和主流发行版官方文档。生成环境为 macOS,不能冒充 Linux 运行证据;已在隔离 Linux 容器验证的内容记录在验证报告,其余节点标记为来源核验或目标环境待验证。

ICP 备案号待补充 · Gitee 主页