33 - Debian 运维学习计划(3–12 个月进阶路线)
目标人群与阶段规划
| 阶段 | 时间跨度 | 目标定位 | 每周投入建议 |
|---|---|---|---|
| 入门 | 0–3 个月 | 能独立完成一台 Debian 服务器的部署、安全加固、基本服务搭建 | 15–25 小时 |
| 中级 | 3–6 个月 | 能运维中小型生产环境,完成自动化脚本、容器化、简单高可用 | 12–20 小时 |
| 高级 | 6–12 个月 | 能设计与实施集群、云原生迁移、多云混合运维、故障演练 | 10–15 小时 |
| 持续精进 | 12 个月以后 | 成为团队运维骨干或 SRE | 5–10 小时 |
第一阶段:0–3 个月(打牢基础)
目标:能从零交付一台安全可用的 Debian 12 服务器。
| 时间段 | 覆盖章节 | 阶段性目标 |
|---|---|---|
| 第 1 周 | 第 1–3 章(部署、apt、常用命令) | 在 VMware 中完成 Debian 12 最小化安装,国内源配置,基本命令熟练 |
| 第 2–3 周 | 第 4–9 章(时间同步、编辑器、网络、用户、SSH、安全) | SSH 端口改 2222 + 密钥登录 + fail2ban + ufw 能独立写规则 |
| 第 4–6 周 | 第 10–14 章(systemd、内核参数、AppArmor、防火墙、端口扫描) | 能写 nftables 规则、看懂 AppArmor DENIED 日志、用 nmap 自检 |
| 第 7–9 周 | 第 15–19 章(磁盘、LVM、NFS/Samba、备份、日志) | 能自己规划 LVM + 快照回滚 + rsync/borg 定时备份 + logrotate 自定义 |
里程碑:能独立交付一台"安全、可备份、可监控"的 Debian 服务器。
推荐补充资源:
- Debian 官方 Handbook(官网提供中文版)
- OverTheWire Bandit(命令行练习闯关)
man手册:养成遇到命令先看man的习惯
第二阶段:3–6 个月(业务服务 + 自动化入门)
目标:能部署常见业务栈,开始自动化运维。
| 时间段 | 覆盖章节 | 阶段性目标 |
|---|---|---|
| 第 10–12 周 | 第 20–22 章(Web、数据库、邮件) | Nginx + MariaDB 联动部署;Postfix + Dovecot 能本地收发邮件 |
| 第 13–14 周 | 第 23–25 章(VPN、高可用、容器) | WireGuard VPN 连通;HAProxy + Keepalived VIP 漂移;Docker 跑业务容器 |
| 第 15–18 周 | 第 26–28 章(云 CLI、Ansible、Packer) | 用 Ansible 批量管理 3 台节点;Packer 输出一个可启动的 qcow2 镜像 |
里程碑:能用 Ansible + Packer 实现"一条命令出一台标准化服务器"。
推荐补充资源:
- Ansible 官方文档(docs.ansible.com,免费且权威)
- HashiCorp Packer 官方文档
- Docker 官方入门教程(docs.docker.com/get-started)
第三阶段:6–12 个月(高级运维与生产实践)
目标:具备生产级运维能力,能独立负责中型系统。
| 时间段 | 覆盖内容 | 阶段性目标 |
|---|---|---|
| 第 19–20 周 | 第 29–30 章(系统升级、Git 管理) | 能安全完成 Debian 11→12 升级;所有运维文档和脚本纳入 Git 管理 |
| 第 21–22 周 | 第 31–32 章(附录 + 考点总结) | 能独立完成本教程全部实践任务,无需查阅文档 |
| 第 23–30 周 | 真实项目实践 | 选择 1–2 个开源项目完整部署(见下方推荐)并维护 |
真实项目推荐:
| 项目 | 技术栈 | 练习重点 |
|---|---|---|
| Gitea(自建 Git 服务) | Go + MariaDB + Nginx | 反向代理、数据库、备份 |
| Nextcloud | PHP + MariaDB + Nginx + Redis | LAMP 栈、存储、证书 |
| Vaultwarden(密码管理器) | Rust + Docker + Nginx | 容器化、HTTPS、备份 |
| Jellyfin(媒体服务器) | .NET + Docker | 容器化、存储挂载、网络 |
里程碑:能独立负责一个中型生产环境(10–30 台服务器),有完整的备份、监控、变更管理流程。
进阶方向(按兴趣选择一个深耕):
| 方向 | 核心技术 | 参考资源 |
|---|---|---|
| 云原生 | Kubernetes(k3s 入门)、Helm | Kubernetes 官方文档 |
| 配置管理 | Terraform + Ansible | HashiCorp 官方文档 |
| 可观测性 | Prometheus + Grafana + Alertmanager | Prometheus 官方文档 |
| CI/CD | GitHub Actions / GitLab CI | 各平台官方文档 |
| 安全 | Lynis、Trivy、Falco | 各工具官方文档 |
学习方法建议
做比看重要
每学完一章必须亲手在虚拟机上操作一遍。遇到报错不要绕过,报错信息本身就是最好的学习材料。截图记录关键输出,写简短的操作日志。
建立个人知识库
将本教程所有文件、自己的实践记录、踩坑总结,统一放入一个 Git 仓库:
debian-ops/
├── chapters/ # 本教程内容
├── labs/ # 实验记录(按日期)
├── notes/ # 踩坑与解决方案
├── scripts/ # 自己写的脚本
└── README.md
定期输出
每完成 3–5 个章节,写一篇简短的总结(博客、笔记均可)。输出的过程会暴露理解不清晰的地方,这是查漏补缺的最有效方式。
找真实场景
帮朋友或团队搭建服务(NAS、Git 服务器、VPN)是比虚拟机练习更有价值的学习方式,真实环境中的问题远比教程中复杂,解决真实问题的成就感也更持久。
求助方式
遇到问题时,优先顺序:man <命令> → 官方文档 → journalctl -xe 日志 → 搜索引擎(包含完整报错信息)→ 社区提问(提问时附上:操作系统版本、执行的命令、完整报错输出、已尝试的解决方案)。
12 个月后的预期能力
- 能独立完成从裸机 / 云实例到生产级 Debian 服务器的全流程部署
- 能用 Ansible + Packer + Git 管理 10 台以上服务器的配置与变更
- 熟悉容器化部署(Docker / Podman)和基础高可用方案
- 有个人运维知识库(Git 仓库)和至少 1–2 个完整项目经验
- 能自信参与中型公司运维岗位面试或内部晋升评审