Arch Linux

本页使用了标题或全文手工转换,现处于中国大陆简体模式
求闻百科,共笔求闻
Arch Linux
开发者Judd Vinet (2001-2007)
Aaron Griffin 小组 (2007-2020)
Levente Polyak与其他人
操作系统家族类Unix系统
运作状态支持中
源码模式开源自由软件
首次发布2002年3月11日,​22年前​(2002-03-11
最新版本滚动更新) / Installation CD 2022.01.01
更新方式Pacman
软件包管理系统Pacman
支持平台x86-64i686(官方已停止支持,改由Arch Linux 32项目维护)、ARM(非官方支持,由Arch Linux ARM项目维护)
内核类别单内核Linux
默认用户界面命令行界面
许可证多种(GPL 及其他协议)[1]

Arch Linux(或 Arch /ˈɑːr/)[2])是一款基于 x86-64 架构的 Linux发行版 [3]。系统主要由自由开源软件[4]组成,支持社区参与。系统设计以 KISS原则(保持简单和愚蠢)为总体指导原则,注重代码正确、优雅和极简主义,期待用户愿意去理解系统的运作[5]。Arch Linux 采用pacman作为预设的软件包管理器

Arch Linux 采用滚动发行模式,即没有所谓的大版本更新,每次常规更新都会将系统和软件保持在最新状态。Arch 发行的系统安装映像也只是简单地包含最新的基本系统组件。[6]

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

历史

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

设计及原则

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

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

原则

以下原则构成了通常所指的 Arch 之道,或者说 Arch 的哲学。

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

安装

Arch Linux网站提供ISO镜像,可以从CD或USB运行。[18]不属于基本系统的额外软件包(例如,桌面环境)的安装,可以在启动(或[[chroot]ing])到新安装的系统后,用pacstrap或Pacman来完成。 [19][20][21]

Neofetch output of an Arch Linux Installation.

除了使用CD或USB镜像进行安装外,还有一种方法是使用静态版本的软件包管理器Pacman,从另一个基于Linux的操作系统中进行安装。[22]用户可以挂载他们新格式化的分区,并使用pacstrap(或带有适当命令行交互的Pacman来安装基本包和附加包,目标设备的装载点是其操作的root。这种方法在将Arch Linux安装到U盘或属于其他系统的临时挂载设备上时非常有用。

无论选择哪种安装类型,在新系统可以使用之前,都需要进行进一步的操作,最主要的是安装bootloader和配置新系统的系统名、网络连接、语言设置和图形用户界面。[23]

Arch Linux不安排特定日期的发布,而是采用"滚动发布"系统,每天都会提供新的软件包。它的软件包管理允许用户轻松地保持系统更新。[24]

偶尔,某些更新需要手动干预,说明发布在Arch Linux网站的新闻部分。[25]

引导式自动安装脚本

自2021年以来,所有发布的Arch ISO镜像中都包含一个名为archinstall的实验性指导安装程序。它允许用户轻松安装和配置Arch Linux,包括驱动程序磁盘分区、网络配置、账户设置和桌面环境的安装。[26][27]

优势

使用GNOME的Arch Linux
  • Arch Linux是针对特定处理器而优化过的,能够更好地利用CPU周期以提高性能。Arch Linux简单的设计让它容易被轻松扩展和配置成为任何想要的系统类型。
  • 通过二进制包管理系统pacman,仅需一个命令就能完成安装、升级等多个操作。同时也附带一个类似ports的包构建系统ABS(Arch Build System)。
  • Gentoo类似,不同于其他大部分主流Linux发行版比如FedoraUbuntu。Arch Linux不采跨版本升级而采用“滚动更新”,故Arch Linux的软件包时常会维持在开发者的最新版本。

缺点

  • 安装过程简陋,缺乏直观的错误处理与图形化安装界面,需要用户有一定的Linux环境常识才能正确安装使用。
  • 包管理系统pacman在升级过程缺乏对系统核心组件的回溯保护,比如当用户升级到错误的内核会造成系统无法启动。
  • 系统软件缺乏严谨的测试管理机制,稳定性、可靠性不如RedhatCentOSDebian等发行版[28],难以在企业用户中推广。

软件包管理

Pacman

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

软件仓库

现时存在以下官方仓库:[29]

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

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

  • testing,包含为coreextra准备的软件包。
  • community-testing,包含为community准备的软件包。
  • multilib-testing,包含为multilib准备的软件包。

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

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

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

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

Arch 编译系统

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

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

Arch 用户软件仓库

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

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

派生发行

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

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

历史版本

Arch Linux 的首个版本发行于 2002 年,但是发行周期较不规律 [34],从 2012 年 7 月开始安装介质改为每月发行一次。目前 Arch Linux 安装是采用网络进行下载与升级。

发行日期 版本 内核版本
2022-01-01 2022.01.01 -
2021-12-01 2021.12.01 -
2021-11-01 2021.11.01 -
2021-10-01 2021.10.01 -
2021-09-01 2021.09.01 -
2021-08-01 2021.08.01 -
2021-07-01 2021.07.01 -
2021-06-01 2021.06.01 -
2021-05-01 2021.05.01 -
2021-04-01 2021.04.01 -
2021-03-01 2021.03.01 -
2021-02-01 2021.02.01 -
2021-01-01 2021.01.01 -
2020-12-01 2020.12.01 -
2020-11-01 2020.11.01 -
2020-10-01 2020.10.01 -
2020-09-01 2020.09.01 -
2020-08-01 2020.08.01 -
2020-07-01 2020.07.01 5.7.6
2020-06-01 2020.06.01 5.6.15
2020-05-01 2020.05.01 5.6.8
2020-04-01 2020.04.01 5.5.13
2020-03-01 2020.03.01 5.5.6
2020-02-01 2020.02.01 5.4.15
2020-01-01 2020.01.01 5.4.6
2019-12-01 2019.12.01 5.3.13
2019-11-01 2019.11.01 5.3.8
2019-10-01 2019.10.01 5.3.1
2019-09-01 2019.09.01 5.2.11
2019-08-01 2019.08.01 5.2.5
2019-07-01 2019.07.01 5.1.15
2019-06-01 2019.06.01 5.1.5
2019-05-02 2019.05.02 5.0.10
2019-05-01 2019.05.01 5.0.10
2019-04-01 2019.04.01 5.0.5
2019-03-01 2019.03.01 4.20.13
2019-02-01 2019.02.01 4.20.6
2019-01-01 2019.01.01 4.20.0
2018-12-01 2018.12.01 4.19.4
2018-11-01 2018.11.01 4.18.16
2018-10-01 2018.10.01 4.18.9
2018-09-01 2018.09.01 4.18.5
2018-08-01 2018.08.01 4.17.11
2018-07-01 2018.07.01 4.17.3
2018-06-01 2018.06.01 4.16.12
2018-05-01 2018.05.01 4.16.5
2018-04-01 2018.04.01 4.15.14
2018-03-01 2018.03.01 4.15.6
2018-02-01 2018.02.01 4.14.15
2018-01-01 2018.01.01 4.14.9
2017-12-01 2017.12.01 4.13.12
2017-11-01 2017.11.01 4.13.9
2017-10-01 2017.10.01 4.13.3
2017-09-01 2017.09.01 4.12.8
2017-08-01 2017.08.01 4.12.3
2017-07-01 2017.07.01 4.11.7
2017-06-01 2017.06.01 4.11.3
2017-05-01 2017.05.01 4.10.13
2017-04-01 2017.04.01 4.10.6
2017-03-01 2017.03.01 4.9.11
2017-02-01 2017.02.01 4.9.6
2017-01-01 2017.01.01 4.8.13
2016-12-01 2016.12.01 4.8.11
2016-11-01 2016.11.01 4.8.6
2016-10-01 2016.10.01 4.7.5
2016-09-03 2016.09.03 4.7.2
2016-08-01 2016.08.01 4.6.4
2016-07-01 2016.07.01 4.6.3
2016-06-01 2016.06.01 4.5.4
2016-05-01 2016.05.01 4.5.1
2016-04-01 2016.04.01 4.4.5
2016-03-01 2016.03.01 4.4.1
2016-02-01 2016.02.01 4.3.3
2016-01-01 2016.01.01 4.3.3
2015-12-01 2015.12.01 4.2.5
2015-11-01 2015.11.01 4.2.5
2015-10-02 2015.10.01 4.2.2
2015-09-01 2015.09.01 4.1.6
2015-08-01 2015.08.01 4.1.3
2015-07-01 2015.07.01 4.0.7
2015-06-01 2015.06.01 4.0.4
2015-05-01 2015.05.01 4.0.1
2015-04-01 2015.04.01 3.19.2
2015-03-01 2015.03.01 3.18.6
2015-02-01 2015.02.01 3.18.4
2015-01-01 2015.01.01 3.17.6
2014-12-01 2014.12.01 3.17.4
2014-11-01 2014.11.01 3.17.1
2014-10-01 2014.10.01 3.16.3
2014-09-03 2014.09.03 3.16.1
2014-08-01 2014.08.01 3.15.7
2014-07-03 2014.07.03 3.15.3
2014-06-01 2014.06.01 3.14.4
2014-05-01 2014.05.01 3.14.1
2014-04-01 2014.04.01 3.13.7
2014-03-01 2014.03.01 3.13.5
2014-02-01 2014.02.01 3.12.9
2014-01-05 2014.01.05 3.12.6
2013-12-01 2013.12.01 3.12.1
2013-11-01 2013.11.01 3.11.6
2013-10-01 2013.10.01 3.11.2
2013-09-01 2013.09.01 3.10.10
2013-08-01 2013.08.01 3.10.3
2013-07-01 2013.07.01 3.9.8
2013-06-01 2013.06.01 3.9.4
2013-05-01 2013.05.01 3.8.10
2013-04-02 2013.04.01 3.8.4
2013-03-01 2013.03.01 3.7.9
2013-02-01 2013.02.01 3.7.5
2013-01-04 2013.01.04 3.6.11
2012-12-01 2012.12.01 3.6.8
2012-11-01 2012.11.01 3.6.4
2012-10-06 2012.10.06 3.5.5
2012-09-07 2012.09.07 3.5.3
2012-08-04 2012.08.04 3.4.7
2012-07-15 2012.07.15 3.4.4
2011-08-19 2011.08.19 3.0.3
2010-05-16 2010.05 2.6.33.4
2009-08-17 2009.08 2.6.30.4
2009-02-16 2009.02 2.6.28
2008-06-24 2008.06 2.6.25.6
2007-10-07 2007.08-2 2.6.22.9
2007-09-10 2007.08.1 2.6.22.6
2007-08-05 2007.08 2.6.22.1
2007-05-28 2007.05-Linuxtag2007 2.6.21.3
2007-05-17 2007.05 2.6.21.1
2007-03-28 0.8 2.6.20.4
2006-05-18 0.7.2 2.6.16.16
2006-01-05 0.7.1 2.6.15
2005-01-24 0.7 2.6.10
2004-03-01 0.6 2.6.3
2003-07-21 0.5 2.4.21
2002-12-18 0.4 2.4.20
2002-08-07 0.3 2.4.19
2002-04-17 0.2 2.4.18
2002-03-12 0.1 2.4.18

参看

注释

  1. Licenses, wiki.archlinux.org, [2013-06-14] 
  2. Aaron Griffin. Pronnounciation [sic] of our beloved distribution's name. Osdir.com. 2005-08-24 [2009-10-19]. 
  3. About. Arch Linux. [2011-09-27]. 
  4. Explaining Why We Don't Endorse Other Systems. GNU Project. [2011-09-28]. 
  5. The Arch Way. ArchWiki. 2009-10-09 [2013-03-18]. 
  6. Ivan Jelic. Rolling with Arch Linux. LWN.net. 2010-03-10 [2011-09-30]. 
  7. Smith, Jesse. Arch Linux - Feature Story. 2015-12-21 [2016-01-17]. 
  8. ArchWiki:About. ArchWiki. Arch Linux. [2016-01-17]. 
  9. Linton, Susan. Debian Project Lead: Snappy and Mir Bad Ideas. OStatic. 2015-07-17 [2017-02-04]. One of the first questions wondered if McGovern was jealous of anything from any other distro. To that he answered Arch's wiki calling it "an absolutely amazing resource" that he himself uses. 
  10. The Arch Linux wiki is awesome and I would like to thank it's contributors • r/linux. reddit. [2017-08-09] (英语). 
  11. Arch Leadership / Announcements, Package & Security Advisories / Arch Linux Forums. bbs.archlinux.org. [2017-07-27] (英语). 
  12. Arch Linux - News: Install media 2012.07.15 released. www.archlinux.org. [2017-07-27] (英语). 
  13. Arch Linux - News: Phasing out i686 support. www.archlinux.org. [2017-07-27] (英语). 
  14. Arch Linux - News: The end of i686 support. www.archlinux.org. [2019-10-26]. 
  15. OSNews.com. OSNews.com. 2004-02-10 [2009-10-19]. 
  16. PolishLinux.org Wiki: Archlinux. Wiki.polishlinux.org. [2009-10-19]. 
  17. Arch Linux - ArchWiki. wiki.archlinux.org. [2017-07-27] (英语). 
  18. 引证错误:<ref>标签无效;未给name(名称)为2012.07.15的ref(参考)提供文本
  19. [_00 pacman - ArchWiki] 请检查|url=值 (帮助). wiki.archlinux.org. [2019-09-13]. 
  20. General recommendations - ArchWiki. wiki.archlinux.org.  已忽略文本“url_01” (帮助);
  21. 引证错误:<ref>标签无效;未给name(名称)为pacman的ref(参考)提供文本
  22. 从现有Linux中安装. ArchWiki. 2009年11月21日 [2009年12月5日]. 
  23. 安装指南 - ArchWiki. wiki.archlinux.org. [2019-09-13]. 
  24. Arch Linux Review. DVD-Guides.com. 2007.  已忽略文本“urlhttps://www.dvd-guides.com/dvdguides/index.php/linux-reviews/212-arch-linux-review ” (帮助);
  25. [_00 新闻] 请检查|url=值 (帮助). archlinux.org. [2018-08-15].  已忽略未知参数|url-atus= (帮助)
  26. [_00 archinstall - ArchWiki] 请检查|url=值 (帮助). wiki.archlinux. org. [2021-04-12]. 
  27. Nestor, Marius. Latest Arch Linux ISO Release Comes with the ArchInstall CLI Guided Installer. 9to5Linux. 2021-04-11 (美国英语).  已忽略文本“urlhttps://9to5linux.com/latest-arch-linux-iso-release-comes-with-the-archinstall-cli-guided-installer” (帮助);
  28. Arch Compared to Other Distributions. [2012-11-26]. 
  29. Official Repositories, wiki.archlinux.org, [2012-11-23] 
  30. Arch Linux Newsletter 08-04-2008. Archlinux.org. 2008-08-04 [2009-10-19]. 
  31. Unofficial user repositories - ArchWiki. wiki.archlinux.org. [2017-07-27] (英语). 
  32. Arch Linux - News: Deprecation of ABS tool and rsync endpoint. www.archlinux.org. [2017-07-27] (英语). 
  33. Arch-based_distributions_(简体中文)#活跃的. wiki.archlinux.org. [2020-07-14]. 
  34. Arch Linux - Releases. www.archlinux.org. [2017-07-27] (英语). 

外部链接

社群