Arch Linux(或Arch /ˈɑːrtʃ/))是一款基于x86-64架构的Linux发行版。系统主要由自由和开源软件组成,支持社区参与。系统设计以KISS原则(保持简单和愚蠢)为总体指导原则,注重代码正确、优雅和极简主义,期待用户能够愿意去理解系统的操作。Arch Linux系统安装、删除和更新软件的软件包管理器叫做pacman。

Arch Linux采用滚动发行模式来获取系统更新和软件的最新版本。系统安装映像只简单地包含系统主要组件。

Arch Linux以社区Wiki的形式提供文档,称为ArchWiki。该Wiki经常编有特定主题的最新信息,受到了Linux社区的广泛认可,内容也应用在Arch Linux以外的领域。

外文名

Arch Linux

提出者

个人,松散组织的团队等

统称

\"distro\"

性质

集成管理器

上线时间

2002年3月11日(0.1版)

软件授权

自由和开源软件

历史

  • 由加拿大程序员兼吉他手Judd Vinet从2001年早期开始开发Arch Linux,并在2002年3月11日正式发行0.1版。
  • 2007下半年,Judd Vinet退出了Arch Linux的开发而交给Aaron Griffin接手。
  • 2012年7月发行的Arch Linux安装ISO映像开始放弃安装框架转为使用不同的辅助脚本。并逐步开始将初始化系统迁移至Systemd。
  • 2017年1月,宣布将逐步放弃i686架构的支持,2017年2月发布的安装介质中将不再包含i686环境。

设计及原则

Arch Linux是由二进制软件包组成的,这些软件包会针对x86-64优化以配合硬件。类似Ports/ebuild也在Arch Linux上发展,也就是“Arch Build System”。

Arch Linux项目注力于简洁主义(对开发者而言),其贡献在于对发行版的组件提供具有良好注释的配置文件,而非带有图形界面的配置工具。这也为其赢得适合“不惧怕命令行的中高级Linux用户”的发行版称号。

Arch Linux哲学

  • 简洁:避免任何不必要的添加、修改和复杂增加。
  • 现代:尽全力保持软件处于最新的稳定版本,采用滚动升级策略,安装之后可以持续升级。
  • 实用:开发者依赖基于事实的技术分析和讨论,避免政治因素,不会被流行观点左右。仓库中既提供了开源、自由的软件,也提供了闭源软件。实用性大于意识形态。
  • 以用户为中心:Arch Linux 适用于乐于自己动手的用户,他们愿意花时间阅读文档,解决自己的问题。也鼓励每一个用户参与和贡献,报告和帮助修复,提供软件包补丁和参加核心,活跃的贡献者也有机会成为开发人员。

优势

Arch Linux是针对特定处理器而优化过的,能够更好地利用CPU周期以提高性能。相比Debian/Ubuntu、SUSE、RedHat/Fedora等其他发行版,Arch Linux属于轻量级选手,其简单的设计让它容易被轻松扩展和配置成为任何想要的系统类型

特有的包管理系统

通过二进制包管理系统pacman,仅需一个命令就能完成安装、升级等多个操作。同时也附带一个类似ports的包构建系统ABS(Arch Build System)。

滚动更新

与Gentoo类似,不同于其他大部分主流Linux发行版比如Fedora和Ubuntu。Arch Linux并没有跨版本升级的概念,通过更新,任何时期的Arch Linux都可以滚动更新到最新版本。

缺点

  • 安装过程简陋,缺乏智能直观的错误处理,需要用户有一定的Linux环境常识才能正确安装使用。
  • 包管理系统pacman在升级过程缺乏对系统核心组件的回溯保护,如升级的Kernel有问题,即导致系统无法启动。
  • 系统软件缺乏严谨的测试管理机制,稳定性、可靠性不如Redhat、CentOS、Debian等发行版,难以在企业用户中推广。

包管理系统

Pacman

pacman是 Arch Linux 的软件包管理器,具有依赖处理和构建软件包的功能。

软件仓库

现时存在以下官方仓库:

  • core,包含启动系统所必需的、链接互联网时可能需要的、编译软件包时需要的、检查、修复文件系统的工具、在安装过程中可能用到的软件包和它们的依赖。
  • extra,提供基本系统不需要的软件包,包括桌面环境和其他程序。
  • community,提供由社区构建和投票的软件包,包括因有足够投票而被“trusted user”所收养的
  • multilib,为x86_64用户提供的支持在64位环境下使用32位软件的集中化仓库

此外,也存在testing仓库,包含还未进入其他仓库的候选包。现时存在以下测试仓库:

  • testing,包含为core和extra准备的软件包
  • community-testing,包含为community准备的软件包
  • multilib-testing,包含为multilib准备的软件包

尚处于开发阶段的GNOME和KDE有时会被放在以下专门的测试仓库中:

  • gnome-unstable,包含不稳定版GNOME的软件包
  • kde-unstable,包含不稳定版KDE的软件包

staging、multilib-staging和community-staging被用来进行一些软件包的重新构建,以避免损坏testing中的软件包。

unstable仓库已在2008年7月撤销,其中的大部分软件包也已移动至其他仓库。在官方仓库以外还存在一些非官方的用户仓库,其中最知名的是托管在Arch Linux站点上的Arch User Repository(AUR)。此外也有不少用户独立创建的非官方仓库。

ABS

ABS (Arch Build System),Arch 构建系统。它是一套像(BSD)Ports 一样的体系,能从 source(源代码)来构建一个软件。Pacman 是 Arch 下特定的二进制安装包管理工具(也包括管理那些从 ABS 构建的二进制安装包),而 ABS 则是 Arch 下特定的编译工具,将源代码编译为一个可供安装的 .pkg.tar.xz 包。

2017年5月15日,Arch Linux宣布放弃支持ABS,并推荐用户切换到 ASP。

AUR

Arch Linux社区用户软件仓库(Arch Linux User-community Repository, AUR)是一个面对广大Arch用户、以社区为主导的软件仓库。AUR的初衷是组织社区内分享PKGBUILD,并且促使热门的用户贡献软件包进入community软件库。

AUR被称为Arch的新软件包的发源地,在AUR里用户贡献出他们自己的软件包。AUR社区对它们进行投票或反对,一旦某个软件包拥有足够多的票数,AUR的受信用户就会将它加入到[community]软件库,使得可以通过pacman和ABS来使用它们。

派生发行

官方的Arch安装程序是基于CLI命令行界面,对于那些需要GUI图形界面安装环境的用户,可以选择这些Live CD:

  • ArchBang- 一个默认使用OpenBox桌面环境的发行
  • Manjaro Linux- 一个默认使用XFCE桌面环境的发行
  • Chakra GNU/Linux- Chakra 项目发布的半滚动发行版
  • Antergos- 一个提供包括GNOME 3(默认),Cinnamon,Razor-qt,Base,KDE和Xfce多种桌面环境安装的发行(安装时可选)
  • Parabola GNU/Linux-libre- 基于 Arch Linux 的一个完全自由的 GNU/Linux 发行版。

其他流行的派生发行版包括Arch Linux ARM等。

历史版本

Arch Linux 的首个版本发行于 2002 年,但是发行周期较不规律,从 2012 年 7 月开始安装介质改为每月发行一次。现有的 Arch Linux 用户可以通过网络升级 Arch Linux 安装。