feat: expand linux curriculum to ops-focused full-scenario blueprint

This commit is contained in:
likingcode
2026-03-10 08:05:58 +08:00
parent 5ca924cadd
commit de7631985d
3 changed files with 291 additions and 320 deletions

359
COURSE.md
View File

@@ -1,274 +1,281 @@
# Linux 学习平台课程设计(重构版)
# Linux 学习平台课程设计(运维全场景重构版)
## 总目标
这套课程不再只是 Linux 命令入门,也不是答题闯关页,而是:
> **面向运维强相关场景的 Linux 系统学习平台**
目标是帮助学习者逐步形成三层能力:
1. **命令理解能力**:知道命令在解决什么问题
2. **系统认知能力**:知道 Linux 系统是怎么组织和运行的
3. **运维场景能力**:知道遇到问题时该用哪组命令排查和处理
---
## 设计原则
这次课程重构,目标不再是“闯关刷题”,而是建立一套**适合系统学习 Linux 的知识结构**。
核心原则:
- **先理解,再操作**
- **先场景,再命令**
- **先最小可用,再扩展参数**
- **练习服务于理解,不反客为主**
- **每个模块都能迁移到真实工作场景**
- **从经典 Linux / Unix 教材与运维认证体系中吸收结构感**
- **尽量覆盖运维强相关全场景**
---
## 课程结构
## 课程组织方式
课程分为 6 大模块,不再按简单等级推进,而按学习逻辑推进。
课程采用三层结构:
### 第一层:知识模块
按 Linux/运维核心领域拆分模块。
### 第二层:课时
每个课时围绕一个核心问题或一组密切相关命令展开。
### 第三层:练习
练习分为:
- 理解题
- 操作题
- 场景题
练习是为了巩固,不再主导整个平台体验。
---
## 完整课程蓝图10 大模块)
### 模块 1建立 Linux 基本认知
目标:搞清楚“我在哪、我看到什么、我怎么移动”
目标:搞清楚终端、路径、目录、文件的基本世界观
包含内容
- 什么是终端 / Shell
- 什么是当前目录
- 什么是绝对路径 / 相对路径
- `pwd`
- `ls`
- `cd`
- `echo`
- `cat`
包含:
- 终端与 Shell
- 绝对路径 / 相对路径
- pwd / ls / cd / cat / echo
输出能力:
-在目录中定位自己
-懂基路径
-查看基础文件内容
- 能定位自己
-懂基路径
-基础文件内容
---
### 模块 2文件与目录操作
目标:建立文件系统操作能力。
包含内容
- 文件目录的区别
- 创建 / 复制 / 移动 / 删除
- `mkdir`
- `touch`
- `cp`
- `mv`
- `rm`
- `stat`
包含:
- 文件目录的区别
- mkdir / touch / cp / mv / rm / stat
- 文件生命周期:创建、备份、迁移、清理
输出能力:
- 能完成日常文件
- 能理解“创建、备份、迁移、清理”四种动作
- 能完成基础文件
- 能理解文件操作的风险和意义
---
### 模块 3阅读与筛选信息
目标:学会从文件和日志中找信息
目标:建立日志、配置、文本信息处理能力
包含内容
- `head`
- `tail`
- `grep`
- `wc`
- `sort`
- `find`
- 日志查看思路
- 搜索与过滤思路
包含:
- head / tail / grep / wc / sort / find
- 搜索与筛选思路
- 日志阅读思路
输出能力:
- 能读日志
-关键词
- 能定位配置文件
-关键词
- 能定位文件
- 能做基础统计
---
### 模块 4系统状态与资源认知
目标:知道系统现在在干什么。
目标:知道一台 Linux 机器此刻在运行什么。
包含内容
- 进程是什么
- 磁盘 / 内存 / 挂载点是什么
- `ps`
- `top`
- `df`
- `du`
- `free`
- `mount`
- `history`
包含:
- 进程、负载、CPU、内存、磁盘、挂载点
- ps / top / uptime / free / df / du / mount / lsof
输出能力:
- 能做基础排查
-看懂资源占用
- 能理解系统运行状态
- 能做基础资源排查
-理解系统是否正常运行
---
### 模块 5网络与服务基础
目标:建立 Linux 运维里的连接意识
### 模块 5服务与日志排障
目标:围绕服务故障建立排查链路
包含内容
- 网络接口是什么
- 端口与监听是什么
- `ifconfig` / `ip addr`
- `ping`
- `ss` / `netstat`
- `curl`
- `wget`
- `which` / `whereis`
包含:
- systemd 基础
- 服务状态 / 启停 / 自启动
- journalctl
- 进程、端口、日志之间的关系
- systemctl / service / journalctl / kill / pkill / nohup
输出能力:
- 能处理“服务没起来 / 起了但不可用 / 日志报错”类问题
---
### 模块 6网络与连接排查
目标:建立网络、监听、请求和服务可达性的认知。
包含:
- 网卡 / IP / 端口 / 监听 / 连通性
- ifconfig / ip addr / ping / ss / netstat / curl / wget / traceroute / dig
输出能力:
- 能判断服务通不通
-理解“域名、端口、监听、请求”的基本关系
-区分网络层、端口层、HTTP 层的问题
---
### 模块 6:权限、习惯与实际运维思维
目标:从“会敲命令”过渡到“知道为什么这么做”。
### 模块 7:权限、用户与安全基础
目标:从“能执行”提升到“知道该不该执行”。
包含内容
- 权限模型基础
- `chmod`
- `chown`
- `chgrp`
- `alias`
- `export`
- `tar`
- `crontab`
- 常见运维习惯
- 风险命令认知
包含:
- 用户、组、权限模型
- chmod / chown / chgrp / whoami / id / passwd / sudo / su
- 最小权限原则
- 高风险命令意识
输出能力:
-理解权限修改的意义
-建立基础运维安全感
- 能开始形成 Linux 使用习惯
-处理基础权限问题
-理解安全边界
---
## 每个课时的新结构
### 模块 8软件包、环境与命令定位
目标:理解软件从哪里来、命令为什么能执行、版本怎么查。
每一课统一用下面 6 段结构
包含
- PATH 与命令查找
- which / whereis / env / export / alias
- apt / dpkg / yum / rpm
### 1. 学什么
一句话说清这个命令/主题在解决什么问题。
输出能力:
- 能定位命令来源
- 能查版本、查安装包、查环境变量问题
### 2. 为什么重要
它在真实 Linux 使用、开发、运维里有什么价值。
---
### 3. 核心知识点
包括:
- 命令作用
- 常见参数
- 常见组合
- 输出怎么看
- 容易误解的点
### 模块 9自动化、归档与运维习惯
目标:建立“批量处理、定时执行、可重复操作”的意识。
### 4. 最小示例
给 2~4 个最有代表性的示例。
包含:
- 重定向 / 管道
- crontab
- tar / gzip / zip / unzip
- history
- Shell 习惯
### 5. 常见场景
把命令放进真实场景里:
- 查配置
- 查日志
- 找文件
- 看资源
- 改权限
输出能力:
- 能做基础自动化
- 能做备份和简单定时任务
- 能形成更稳妥的命令行习惯
### 6. 练习题
练习题不再喧宾夺主,而是用于确认理解。
---
### 模块 10运维综合实战场景
目标:把前面所有能力真正串起来。
典型场景:
- 服务无法访问排查
- 磁盘爆满排查
- 登录失败排查
- Nginx / 应用日志排查
- 发布后服务未启动
- 备份与恢复演练
输出能力:
- 知道不是背命令,而是围绕问题组织命令链路
---
## 每课统一结构
每个课时都按下列结构组织:
1. **学什么**
2. **为什么重要**
3. **核心知识点**
4. **最小示例**
5. **常见误区**
6. **典型场景**
7. **练习题**
8. **课后总结 / 迁移建议**(后续补齐)
---
## 练习设计原则
练习题分成 3 类:
### A. 理解题
有没有理解命令用途。
例:
- 查看当前目录应该用什么命令?
- 为什么 `ls -a` 会比 `ls` 多看到东西?
有没有理解命令用途和思路
### B. 操作题
验能否正确写出命令。
例:
- 进入 `/tmp`
- 查找 `/etc` 下所有 `.conf` 文件
查是否能写出正确命令。
### C. 场景题
是否能把命令放进真实问题中。
例:
- 日志太大,不想全看,只看最后 20 行怎么办?
- 想找出包含 `error` 的日志应该怎么做?
是否能把命令放进真实运维问题中。
> 练习不是为了“刷过去”,而是为了确认:你是不是真的知道这个命令为什么存在。
---
## 页面呈现结构(学习优先)
## 页面结构原则
前端页面不再以“终端交互”为主,而改为:
### 左侧:课程目录
### 左侧:课程地图
- 模块
- 小节
- 学习进度
- 课时
- 学习路径
### 中间:学习正文
- 概念讲解
- 示例
- 场景
- 总结
### 中间:正文学习区
- 讲解优先
- 示例优先
- 场景优先
### 右侧:知识辅助
- 关键概念
### 右侧:辅助理解区
- 易错点
- 相关命令
- 推荐练习
- 场景提示
- 理解型问题
### 底部练习区
- 简洁练习,不抢正文
- 只做必要反馈
- 重点是“学完再练”
### 底部 / 内嵌:轻练习区
- 练习服务于学习
- 保持必要但不过分喧宾夺主
---
## 新平台定位
## 吸收的“教材气质”
重构后的 Linux 平台定位为
这套平台后续会持续内化这些来源的设计方法
- 经典 Linux / Unix 入门教材的结构感
- man / 官方文档的准确性
- RHCSA / RHCE / LPIC 一类认证体系的能力递进
- 真实运维工作流里的问题链路
> **Linux 系统学习平台 + 轻量练习环境**
不是搬教材,而是:
不是刷题站,也不是单纯命令模拟器。
目标用户看到平台后,应该感受到:
- 这是能认真学东西的
- 不是只会点按钮
- 不是只会猜答案
- 学完真的能迁移到实际 Linux 使用场景
> **把经典教材与运维经验内化后,重新设计成适合平台学习的课程。**
---
## 重构顺序
## 当前重构阶段
### 第一阶段:课程蓝图重构
- 重写课程结构
- 重写模块划分
- 重写题目组织方式
### 已完成
- 平台方向从交互优先改成学习优先
- 前 3 个模块已落到课程结构中
- 页面结构已切为知识正文型
### 第二阶段:前 3 个模块内容重写
- Linux 基本认知
- 文件与目录操作
- 阅读与筛选信息
### 第三阶段:页面重构
- 课程目录页
- 学习正文页
- 轻练习区
### 第四阶段:后续模块补齐
- 系统状态
- 网络基础
- 权限与运维习惯
### 下一步
- 扩完整个 10 模块蓝图到课程数据
- 逐步补模块 4~10 的详细课时
- 增加“场景专题”页,把命令真正串成运维链路
---
## 当前结论
## 一句话定位
这次不是“继续补旧平台”,而是:
> **把 Linux 平台从“交互导向”改造成“知识导向”的系统学习平台。**
后续所有改动,以这个文档为准。
> **这是一个吸收经典 Linux 教材与运维训练体系后,面向运维强相关全场景重构的 Linux 学习平台。**