Linux 基础入门:版本与重要概念
Linux 基础入门:版本与重要概念
Linux 并不是一个单独的软件包,而是一个以 Linux 内核为核心、围绕工具链、包管理器、服务管理和桌面环境构建出来的操作系统生态。对于初学者来说,先理解 Linux 的版本划分,再掌握几个关键概念,会更容易建立整体认知。
Linux 版本
提到 Linux 版本时,通常可以分成两个层面来看:
- 内核版本
- 常见发行版本
内核版本
Linux 内核是操作系统最核心的部分,负责硬件管理、进程调度、内存管理、文件系统支持、设备驱动等工作。
内核版本通常采用类似下面的格式:
1 | 6.6.21 |
一般可以这样理解:
- 第一位表示主版本号
- 第二位表示功能演进中的大版本
- 第三位表示修复补丁版本
内核版本关注的是底层能力,例如:
- 是否支持新的硬件
- 调度器和内存管理是否优化
- 某些文件系统和驱动是否得到增强
- 安全漏洞是否已修复
在企业场景中,经常会接触到两类内核:
- 稳定内核:更注重兼容性和稳定性,适合服务器环境
- 长期支持内核(LTS):维护周期更长,适合生产环境长期使用
也就是说,内核版本决定了 Linux 底层“能做什么”和“做得是否稳定”。
常见发行版本
只有内核还不够,用户还需要命令工具、软件包管理器、安装程序、服务管理工具和默认配置。这些组合在一起,就形成了不同的 Linux 发行版。
常见发行版包括:
- Ubuntu:对新手友好,社区活跃,桌面和服务器都很常见
- Debian:稳定性高,很多发行版都基于它演进
- CentOS:过去在服务器场景非常常见
- Rocky Linux:CentOS 之后较常见的企业替代选择之一
- AlmaLinux:同样是面向企业兼容场景的常见选择
- Fedora:版本较新,适合体验新特性
- Red Hat Enterprise Linux(RHEL):企业级商业发行版
- Arch Linux:更强调自定义和滚动更新,适合有一定基础的用户
这些发行版的主要差异通常体现在:
- 软件包管理方式不同,例如
apt、dnf、yum、pacman - 默认目录和配置习惯有差异
- 软件版本的新旧程度不同
- 稳定性和更新策略不同
- 社区支持或商业支持不同
可以把它们理解为:
- Linux 内核像“发动机”
- 发行版像“整车方案”
不同发行版可能使用相近的内核,但给用户提供的使用体验和运维方式会明显不同。
Linux 重要概念
理解 Linux 时,下面这些概念最重要。
1. 一切皆文件
Linux 中很多资源都可以通过文件形式进行访问和操作,例如:
- 普通文本文件
- 目录
- 设备文件
- 管道
- 套接字
这意味着 Linux 倾向于用统一的方式来处理各种资源,学习成本会更低,脚本化也更方便。
2. 目录结构
Linux 使用树形目录结构,所有内容都从根目录 / 开始。
常见目录含义如下:
/home:普通用户的家目录/root:超级管理员 root 的家目录/etc:系统配置文件/bin:基础命令/usr:用户层程序和共享资源/var:日志、缓存等经常变化的数据/tmp:临时文件
学习 Linux 时,不仅要会执行命令,也要逐步熟悉目录分工。
3. 用户与权限
Linux 是一个多用户操作系统,不同用户拥有不同的访问权限。
常见权限对象有三类:
u:文件所有者g:所属用户组o:其他用户
常见权限类型有三种:
r:读w:写x:执行
例如:
1 | chmod 755 demo.sh |
表示:
- 所有者可读、可写、可执行
- 同组用户可读、可执行
- 其他用户可读、可执行
权限机制是 Linux 安全模型的基础。
4. 进程
程序运行起来之后,就变成了进程。Linux 会为每个进程分配进程号(PID),并由内核统一调度。
常见相关理解包括:
- 一个程序可以启动多个进程
- 进程有前台和后台之分
- 进程之间会竞争 CPU 和内存资源
- 服务程序本质上也是持续运行的进程
日常经常会用到的命令有:
1 | ps |
5. Shell
Shell 是用户和操作系统之间的命令解释器,常见的有:
bashzshsh
用户在终端输入命令后,Shell 负责解析命令并交给系统执行。很多自动化运维工作,实际上就是通过 Shell 脚本完成的。
6. 软件包管理
Linux 安装软件通常不是直接双击安装包,而是通过包管理器完成。
常见工具有:
apt:Debian、Ubuntu 常用yum/dnf:RHEL、CentOS、Rocky Linux、AlmaLinux 常用pacman:Arch Linux 常用
包管理器可以帮助我们:
- 安装软件
- 升级软件
- 卸载软件
- 自动处理依赖关系
7. 服务与守护进程
Linux 中很多功能是通过后台服务提供的,例如:
- Web 服务
- 数据库服务
- SSH 服务
这类长期运行在后台的程序通常称为守护进程。现代 Linux 发行版中,很多服务通过 systemd 管理,常见命令包括:
1 | systemctl start nginx |
8. 文件系统
文件系统决定了数据如何被组织和存储。常见文件系统有:
ext4xfsbtrfs
不同文件系统在性能、可靠性、快照能力和扩展能力上会有差异。对开发者来说,先知道“磁盘不是直接裸用的,而是通过文件系统组织数据”就足够了。
总结
学习 Linux,可以先抓住两条主线:
- 版本层面:分清内核版本和发行版
- 使用层面:理解目录、权限、进程、Shell、包管理和服务
如果把 Linux 比作一套完整系统,那么:
- 内核决定底层能力
- 发行版决定使用方式
- 权限、进程、文件系统等概念决定你能否真正用好它
对于入门阶段,不需要一开始就记住所有命令,先建立正确的整体框架更重要。后续再继续学习常用命令、用户管理、网络配置和服务部署,会轻松很多。