Linux
Linux 是一种自由和开放源码的类 UNIX 操作系统。
Linux 英文解释为 Linux is not Unix。
Linux 是在 1991 由林纳斯·托瓦兹(Linus Torvalds )在赫尔辛基大学上学时创立的,主要受到 Minix 和 Unix 思想的启发。
Linux 遵循 GNU 通用公共许可证(GPL),任何个人和机构都可以自由地使用 Linux 的所有底层源代码,也可以自由地修改和再发布。
由于 Linux 是自由软件,任何人都可以创建一个符合自己需求的 Linux 发行版。
Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 UNIX 的多用户、多任务、支持多线程和多 CPU 的操作系统。
Linux 能运行主要的 UNIX 工具软件、应用程序和网络协议。它支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
Linux 内核是操作系统的底层核心。但内核本身并不提供用户直接使用的命令行环境、编译工具、文件操作命令或网络服务程序。
GNU
GNU 项目(1983 年由理查德·斯托曼发起)旨在开发一套完全自由的类 Unix 操作系统,迄今已提供了 GCC 编译器、glibc 标准库、Bash Shell、Coreutils 等一整套用户空间工具。
GNU/Linux
二者结合:1991 年,林纳斯·托瓦兹发布 Linux 内核,填补了 GNU 项目长期缺失的内核组件。GNU 工具链与 Linux 内核协同工作,才形成了一套完整可用的自由操作系统。因此,该系统的准确名称应为 GNU/Linux。
现实意义:绝大多数主流发行版(如 Debian、Ubuntu、Fedora、Arch 等)均属于 GNU/Linux 发行版,它们默认集成了 GNU 工具集。少数轻量级发行版(如 Alpine)采用其他工具链。
Note
Linux 学习路线与主题关系见 Linux知识地图。
Linux内核
Linux内核是Linux操作系统的核心,由林纳斯·托瓦兹(Linus Torvalds)于1991年发布,是一个兼容POSIX和单一UNIX规范的操作系统内核。截至最新版本,Linux内核已有超过4000万行代码,每个版本的贡献者超过1000人,是现存最大、最活跃的自由软件项目之一。内核支持真正的多任务处理、虚拟内存、共享库、按需加载、写时复制可执行文件、完善的内存管理以及IPv4和IPv6等多协议网络栈。Linux内核几乎可以运行在任何一种硬件体系结构上,从嵌入式设备到超级计算机均有其应用。
Linux系统组成
一个完整的Linux操作系统由以下两部分构成:
-
Linux系统内核:提供最核心的功能,包括调度CPU、管理内存、调度I/O流等硬件资源。
-
系统级应用程序:出厂自带的软件,如文件管理器、任务管理器、图片查看器、音乐播放器等。
系统及应用程序通过系统调用向内核发起请求,内核再调度硬件完成相应操作——应用程序调用内核,内核调用硬件。
Linux发行版
Linux内核遵循GNU通用公共许可证(GPL),免费且开源,这意味着任何人都可以修改内核代码,并自行集成系统级程序。将Linux内核与系统级应用程序、GNU工具链等打包封装的完整操作系统,即称为Linux发行版。
目前主流的三大根发行版(即不源自任何其他发行版、从头创建的发行版)包括Debian、Arch和RHEL(Red Hat Enterprise Linux)。这三大分支构成了Linux发行版生态的基石。
Debian系
Debian由Ian Murdock于1993年创建,是社区维护的发行版代表。Debian以稳定性和自由软件理念著称。Debian分为三个版本分支:stable(稳定版,主力发行版本)、testing(测试版,用于准备下一个稳定分支)和unstable(不稳定版,包含最新软件包但bug较多,适合桌面用户)。
-
包管理工具:使用
apt(Advanced Package Tool)作为高级包管理工具,底层为dpkg``apt可自动解决软件包依赖关系,支持从远程软件源获取软件包。软件包格式为.deb。软件源配置文件为/etc/apt/sources.list。 -
主要衍生发行版:Ubuntu(基于Debian,注重用户体验)、Linux Mint(基于Ubuntu,主打易用性)等。
Arch系
Arch Linux由Judd Vinet创建并启动,是一个独立开发的x86-64架构通用GNU/Linux发行版。Arch采用滚动更新(rolling release)模式,没有大版本概念,常规更新即可使系统保持最新状态。默认安装仅提供一个最小的基本系统,由用户自行添加所需软件。Arch由社区志愿者维护开发。
-
包管理工具:使用
pacman作为默认包管理器,可自动处理软件包的安装、升级、删除及依赖关系。 -
主要衍生发行版:CachyOS、Manjaro(基于Arch,注重易用性和用户友好度,提供预配置桌面环境和图形化工具)等。
RHEL系
RHEL(Red Hat Enterprise Linux)是由红帽公司(Red Hat)维护的商业发行版。RHEL以企业级稳定性、长周期支持和商业技术服务为核心优势,引入了systemd、firewalld、Ansible等先进技术。RHEL拥有完善的文档体系和商业支持。
-
包管理工具:使用RPM(Red Hat Package Manager)软件包格式。包管理器早期为
yum,自RHEL 8起,官方推荐使用新一代的dnf(Dandified Yum)。在RHEL 9中,yum命令实际是dnf的别名。 -
主要衍生发行版:Fedora(社区发行版,是RHEL的上游测试平台,用户可免费体验最新技术)、Rocky Linux等。