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发行版

目前主流的三大根发行版(即不源自任何其他发行版、从头创建的发行版)包括DebianArchRHEL(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作为默认包管理器,可自动处理软件包的安装、升级、删除及依赖关系。

  • 主要衍生发行版CachyOSManjaro(基于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等。

常用操作

基本命令 权限 进程管理 网络基础