🏆 本文收录于 《滚雪球学 Ubuntu》 专栏。
本专栏面向有一定计算机基础,但尚未系统学习 Linux / Ubuntu 的读者,采用“滚雪球式学习法”:先装好、再会用、再理解、再优化、再实战,带你从第一次进入 Ubuntu 桌面 / 终端开始,逐步掌握 Ubuntu 的日常使用、命令操作、软件安装、系统配置、开发环境搭建与服务器部署能力。
🎯适合人群:Linux 初学者、Ubuntu 新手、计算机专业学生、后端 / 运维 / 测试入门同学、想搭建 Linux 开发环境的开发者、准备学习服务器部署的同学,以及想从 Windows 过渡到 Ubuntu 工作流的用户。从“会打开终端”到“能管理系统”,从“复制命令”到“理解 Linux 思维”,这一次,我们不零散学,而是一路滚雪球!
🎉限时福利:当前专栏活动中,一次订阅,终身阅读,后续更新章节全部免费解锁👉 立即查看👈️
演示环境说明:
- 开发工具:Visual Studio Code / JetBrains 系列 IDE / Vim / Nano
- Ubuntu版本:Ubuntu 22.04 LTS / Ubuntu 24.04 LTS,推荐 Ubuntu 24.04 LTS
- Linux内核版本:Linux Kernel 6.x 或更高
- 终端环境:Bash / Zsh
- 包管理工具:APT / Snap / Flatpak
- 远程连接工具:OpenSSH / Windows Terminal / MobaXterm / Termius
- 虚拟化环境:VMware Workstation / VirtualBox / WSL2 / 云服务器
- 容器环境:Docker / Docker Compose
- 操作系统:Ubuntu Desktop / Ubuntu Server
全文目录:
- 一、前言:一个发行版背后的力量
- 二、本文要解决什么问题
- 三、先搞清楚"生态"这个词的含义
- 四、Ubuntu 背后的公司:Canonical 是谁?
- 4.1 Canonical 的诞生与 Ubuntu 的起源
- 4.2 Canonical 做了哪些你可能不知道的事
- 4.3 Canonical 的商业模式
- 五、Ubuntu 的社区生态:开源世界的真正根基
- 5.1 Ubuntu 社区的组成结构
- 5.2 Ask Ubuntu:你最该常去的地方
- 5.3 Ubuntu 论坛与邮件列表
- 5.4 Launchpad:Ubuntu 的代码与协作中心
- 5.5 Ubuntu Wiki 与 Ubuntu Help
- 5.6 Ubuntu 本地用户组(LoCo Teams)
- 六、Ubuntu 的软件生态:包管理、仓库与 Snap
- 6.1 APT 与 Debian 软件仓库体系
- 6.2 Ubuntu 软件仓库的四个组成部分
- 6.3 PPA:第三方软件的合法补充
- 6.4 Snap:Canonical 力推的跨发行版包格式
- 6.5 Flatpak 与 AppImage:其他选择
- 6.6 软件生态对比表
- 七、Ubuntu 的平台生态:不只是桌面与服务器
- 7.1 Ubuntu Desktop:桌面用户的核心场景
- 7.2 Ubuntu Server:云时代的主力选手
- 7.3 Ubuntu Core:专为物联网设计的最小化系统
- 7.4 Ubuntu on WSL:Windows 上的 Linux 真香
- 7.5 Ubuntu on Cloud:主流云平台的默认选项
- 7.6 Ubuntu on Raspberry Pi:硬件极客的好伙伴
- 八、Ubuntu 的商业支持体系:企业用户的底气
- 8.1 Ubuntu Pro:从安全更新到合规支持
- 8.2 Landscape:企业级系统管理平台
- 8.3 MAAS:裸机自动化部署神器
- 8.4 Juju:应用编排与服务部署工具
- 8.5 Canonical 认证与培训
- 8.6 Ubuntu Advantage 与企业 SLA
- 九、Ubuntu 与主流技术栈的生态整合
- 9.1 Ubuntu 与 Docker/Kubernetes 生态
- 9.2 Ubuntu 与云原生工具链
- 9.3 Ubuntu 与 AI/ML 工具链
- 9.4 Ubuntu 与主流编程语言生态
- 十、实验环境准备
- 十一、案例一:探索你的 Ubuntu 系统信息与软件仓库结构
- 第一步:查看系统基本信息
- 第二步:查看软件仓库配置
- 第三步:配置国内镜像源(国内用户强烈推荐)
- 第四步:查看已安装软件包统计
- 十二、案例二:PPA 的正确使用方式——以安装最新版 Git 为例
- 背景:为什么需要这个 PPA?
- 第一步:验证当前 Git 版本
- 第二步:添加 Git 官方 PPA
- 第三步:安装最新版 Git
- 第四步:查看 PPA 是否正确配置
- 第五步:验证 Git 来源
- 第六步(可选):移除 PPA
- 十三、案例三:启用 Ubuntu Pro 免费个人版并查看安全补丁状态
- 前提条件
- 第一步:查看当前系统的安全状态
- 第二步:获取 Ubuntu Pro Token 并附加
- 第三步:查看 Ubuntu Pro 启用后的状态
- 第四步:查看具体哪些软件包受到 ESM 保护
- 第五步:了解 Livepatch 的工作状态
- 十四、Ubuntu 生态核心机制解析
- 14.1 APT 软件安装流程详解
- 14.2 Ubuntu Pro 的安全补丁流水线
- 14.3 Snap 包的沙箱机制
- 十五、常见问题与踩坑总结
- Q1:Ubuntu Desktop 和 Ubuntu Server 有什么区别?
- Q2:为什么 Ubuntu 推荐使用 LTS 版本?
- Q3:apt update 和 apt upgrade 有什么区别?
- Q4:为什么有些命令需要 sudo?
- Q5:root 用户和普通用户有什么区别?
- Q6:为什么安装软件时提示 Unable to locate package?
- Q7:为什么修改配置后服务没有生效?
- Q8:systemctl restart 和 systemctl reload 有什么区别?
- Q9:为什么端口已经开放,但外部还是访问不了?
- Q10:ufw 开了以后为什么 SSH 连接不上?
- Q11:为什么环境变量配置了但命令还是找不到?
- Q12:为什么不推荐随便执行网上复制来的 shell 脚本?
- Q13:为什么 Linux 中文件删除后不像 Windows 那样进入回收站?
- Q14:如何判断一个 Ubuntu 系统问题是网络问题、权限问题还是服务问题?
- Q15:初学者如何判断自己的 Ubuntu 学习路径是否合理?
- 十六、Ubuntu 生态使用最佳实践
- 版本选择
- 软件安装优先级
- 配置文件修改习惯
- 用户与权限设计
- SSH 安全建议
- 服务管理规范
- 防火墙配置原则
- 日志查看方法
- 备份意识
- 故障排查思路
- 十七、扩展知识点
- Ubuntu 与 Debian 的关系
- Ubuntu 的版本命名规则
- Ubuntu 社区决策机制:SABDFL
- Ubuntu 贡献者的成长路径
- 十八、完整操作流程回顾
- 十九、总结
- 🧧 学习福利 · 限时开放 🧧
- 🫵 Who am I?
一、前言:一个发行版背后的力量
我第一次认真用 Ubuntu 的时候,是大学宿舍里一台老旧的 ThinkPad。装上系统,连接网络,输入sudo apt install git,然后 Git 就装好了。当时我并没有想太多,只觉得这比在 Windows 上到处找安装包、点下一步下一步要爽得多。
但后来我开始思考一个问题:为什么 Ubuntu 上的软件这么容易装?为什么每次遇到问题,Stack Overflow 或 Ask Ubuntu 上总有人遇到过同样的麻烦?为什么主流云厂商、容器镜像、CI/CD 平台,默认推荐的 Linux 系统往往是 Ubuntu?
这背后有一套完整的答案,叫做生态。
Ubuntu 不只是一个操作系统,它是一个有公司支撑、有社区驱动、有商业服务、有广泛工具链整合的开源平台。理解这个生态,不只是为了知识上的完整性,更是为了在实际工作中更聪明地使用 Ubuntu——知道遇到问题去哪里找答案,知道企业用 Ubuntu 的底气从哪里来,知道什么时候该用免费社区版,什么时候该考虑商业支持。
这一节我们就专门来聊这件事。
二、本文要解决什么问题
很多人学 Ubuntu,上来就是装系统、敲命令,对背后的生态、社区和商业体系几乎一无所知。这没有什么问题,但当你开始遇到以下场景时,你会发现这部分知识很有用:
- 遇到系统问题,不知道去哪里找靠谱的解决方案
- 公司项目要在服务器上跑 Ubuntu,领导问"有没有官方支持"