本文收录于 《滚雪球学 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
一、前言:我们为什么要搞清楚这个关系?
我刚开始学 Linux 的时候,每次在网上搜索资料都会碰到一个让人头疼的现象:有些文章说"Linux 系统如何如何",有些文章说"Ubuntu 如何如何",还有些人说"我在 CentOS 上用的命令,你 Ubuntu 上跑不了"。
当时我心里非常困惑:Ubuntu 和 Linux 到底是不是同一个东西?我学的是 Linux,还是 Ubuntu?网上那些 Linux 教程,我能直接用在我的 Ubuntu 上吗?
这种困惑让很多初学者在最开始就走了弯路。有人把 Ubuntu 和 Linux 完全等同,结果在 CentOS 系统上照搬 Ubuntu 命令,踩了一堆坑。有人把两者看成毫不相关的两个系统,结果学了 Ubuntu 还以为自己没学到 “真正的 Linux”,白白浪费了很多精力在心理建设上。
实际上,这个问题的答案是非常清晰的,只是需要从操作系统的基本结构讲起,才能真正讲透。理解了 Ubuntu 和 Linux 的关系,你不仅能学好 Ubuntu,还能在以后碰到 CentOS、Debian、Rocky Linux 等其他发行版时,快速上手,举一反三。
这篇文章就是专门解决这个问题的。我会从操作系统内核说起,一路讲到 Ubuntu 的具体组成,再通过实际命令让你感受这个关系在真实系统里是如何体现的。读完这篇,你对"我在学什么"这个问题,心里会有一个非常清晰的答案。
二、本文要解决什么问题?
在进入正题之前,我先把本文要解决的具体问题列出来,方便你对照自己的疑惑,看看这篇文章是否适合你:
概念层面: |