
服务端开发的第一课,从理解 Linux 开始
在服务端开发领域,Linux 是绕不开的话题。无论是后端服务部署、数据库运维,还是云原生基础设施,几乎都运行在 Linux 之上。
对于习惯了 Windows 或 macOS 图形界面的开发者来说,刚接触 Linux 时往往会感到不适应——怎么什么都要敲命令?为什么没有统一的界面?这篇文章从零开始,帮你理清 Linux 的版本体系、核心概念,并手把手搭建一个可用的虚拟机环境。
一、为什么 Linux 是服务端的首选
根据市场统计,超过 90% 的公共云服务器运行着 Linux 系统。我们日常使用的各类 App 和网站,后台几乎都部署在 Linux 服务器上。
几个关键特性让它成为企业首选:
- • 稳定性:Linux 服务器可以连续运行数年而不需要重启,这对线上业务至关重要。
- • 安全性:严格的权限模型和开源社区快速的安全响应,使得 Linux 在安全性上表现出色。
- • 命令行操作:虽然命令行有学习曲线,但一旦掌握,批量操作、远程管理、自动化运维的效率远超图形界面。
对于服务端开发或运维人员来说,掌握 Linux 是必备技能,而非加分项。
二、Linux 到底是什么
Linux 有两个层面的含义:
- • 狭义:指由 Linus Torvalds 开发的开源操作系统内核。
- • 广义:指基于该内核的完整操作系统(即内核 + 各种系统工具和应用软件)。
Linux 内核是操作系统的核心,负责管理硬件资源(CPU、内存、磁盘、网络等),并为上层应用程序提供运行环境。而一个完整的 Linux 操作系统,则是在内核之上,由 GNU 工具链、图形界面(可选)、各类系统服务等共同构成。
了解创始人的故事也有助于理解 Linux 的文化。Linus Torvalds 是芬兰程序员,他在 1991 年发布了 Linux 内核的第一个版本。他的自传《只是为了好玩》值得一读,可以帮你理解 Linux 的发展历程和开源文化的起源。
三、Linux 的版本体系:内核版本与发行版
刚接触 Linux 时,最容易混淆的就是"内核版本"和"发行版本"。这两者是完全不同的概念。
3.1 内核版本
内核版本由 Linus 领导的团队维护,官方网站是 kernel.org。内核版本号采用三段式结构:主版本号.次版本号.末版本号,例如 5.1.1。
其中,次版本号的奇偶性有特殊含义:
目前内核官网提供多种分支:stable(最新稳定版)、mainline(主线开发版)、longterm(长期支持版)。生产环境应优先选择 stable 或 longterm 版本。
3.2 主流发行版
由于 Linux 内核是开源的,各大厂商和社区可以在内核基础上打包自己的系统工具和软件,形成不同的"发行版"。国内最常见的有以下五种:
Red Hat Enterprise Linux(RHEL)由 Red Hat 公司开发维护,经过严格测试,提供商业技术支持。适合企业级生产环境,但需要付费授权。
FedoraRed Hat 通过社区免费发布的发行版,软件版本较新,但稳定性相对较低,适合技术爱好者尝鲜。
CentOS基于 RHEL 源代码重新编译,移除了 Red Hat 商标后免费提供。兼具 RHEL 的稳定性和免费优势,曾是国内互联网公司最常见的服务器系统之一。(注:CentOS 8 已于 2021 年停止维护,目前社区转向了 CentOS Stream 或 Rocky Linux / AlmaLinux。)
Ubuntu专为易用性优化,桌面版界面华丽,适合个人电脑使用。服务器版也非常流行,拥有庞大的社区和丰富的软件源。
Debian以稳定性和自由软件哲学著称,支持图形界面,适合 PC 端日常使用,也是很多其他发行版(包括 Ubuntu)的母版。
对于初学者:建议选择 CentOS 7、Ubuntu 20.04 LTS 或 Debian 11 进行学习。这三个版本资料丰富,遇到问题更容易找到解决方案。
四、搭建 Linux 虚拟机环境
学习 Linux,最好的方式是在虚拟机中反复练习。直接在物理机上装双系统风险较高,而 Windows Subsystem for Linux(WSL)虽然方便,但缺少完整的系统管理体验。虚拟机方案可以随时快照、随时回滚,试错成本几乎为零。
4.1 选择虚拟机软件
推荐使用 VirtualBox(开源免费,跨平台),同样也可以使用 VMware Workstation Player(免费版功能足够)。
4.2 安装 CentOS 7 的关键步骤
- 1. 下载镜像:从国内镜像站(如阿里云、中科大)下载 CentOS 7 的 ISO 文件。
- 2. 新建虚拟机:在 VirtualBox 中点击"新建",设置名称(如
centos7)、类型(Linux)、版本(Red Hat 64-bit)。 - 3. 分配资源:建议分配 2GB 内存、2 个 CPU 核心、20GB 硬盘(动态分配即可)。
- 4. 启动并安装:挂载 ISO 镜像启动,按提示选择语言(建议英文,避免字符显示问题)、时区(Asia/Shanghai)、磁盘分区(自动分区即可)。
- 5. 设置 root 密码:安装过程中会提示设置 root 密码,务必记住。
- 6. 创建普通用户:建议创建一个普通用户用于日常登录,避免直接使用 root。
4.3 切换到命令行模式
带图形界面的 CentOS 启动后默认进入桌面。学习阶段建议切换到命令行模式:
- • 按
Ctrl + Alt + F2 到 F6 可切换到不同 tty 终端。 - • 在命令行中执行
init 3 可直接关闭图形界面,进入纯命令行模式。(如果需要恢复图形界面,执行 init 5 即可)
实际工作中,大部分服务器都不安装图形界面,所以尽早习惯命令行操作会很有帮助。
五、终端提示符与常用目录
登录系统后,首先看到的是命令行提示符。理解提示符的含义,有助于判断当前身份和所在位置。
5.1 提示符的含义
[root@localhost ~]# # root 用户,提示符为 #[user@localhost ~]$ # 普通用户,提示符为 $
root 是 Linux 的超级管理员,拥有系统最高权限,日常操作应尽量避免直接使用 root。普通用户的提示符以 $ 结尾,root 用户以 # 结尾。
5.2 几个关键目录的作用
| |
|---|
/root | |
/home/username | |
/etc | |
/bin | |
/sbin | 存放系统管理命令(如 fdisk、ifconfig) |
/usr/bin | |
初学者容易混淆 /(根目录)和 /root(root 家目录),需要特别留意:/ 是整个文件系统的起点,而 /root 只是 / 下面的一个目录。
六、给初学者的几点建议
6.1 掌握正确的学习方法
很多 Linux 教程只是罗列命令参数,容易让人望而生畏。更有效的学习方式是:先理解设计思想,再通过实践巩固。
- • "一切皆文件":在 Linux 中,硬件设备、进程、网络连接等都被抽象为文件,用统一的文件操作接口来管理。
- • 学习顺序:不要试图一次性学会所有命令。先掌握
ls/cd/pwd/mkdir/rm/cp/mv 这 7 个最基础的命令,能熟练操作文件和目录后,再逐步扩展。
6.2 手敲命令,忌复制粘贴
学习初期,所有命令都手动敲一遍。复制粘贴看起来快,但敲过和没敲过的记忆深度完全不同。顺手记住几个快捷键会提高效率:Tab 补全路径、↑↓ 查看历史命令、Ctrl+C 终止当前进程。
6.3 搭建自己的练习环境
- • 快照功能:在 VirtualBox 中,每次练习前打一个快照,做错了可以一键恢复。
- • 多终端练习:同时打开两个终端窗口,一个执行操作,另一个用
man 命令查看手册(如 man ls)。
结语
Linux 的学习曲线确实比 Windows 陡峭,但一旦跨过命令行这道门槛,你会发现它带来的效率和掌控感是图形界面无法比拟的。
这篇文章只完成了 Linux 环境的搭建和基本概念梳理。后续我们会深入系统的文件操作、用户与权限、服务管理、Shell 脚本等核心内容,逐步建立起完整的 Linux 知识体系。如果你想跟着这个系列继续往下走,建议先在自己电脑上把虚拟机环境跑起来。下一篇我们会从最常用的文件操作命令开始,逐步带你进入 Linux 的命令行世界。