Arch_Linuxとは何? わかりやすく解説 Weblio辞書 (original) (raw)

Arch Linux

Arch is a rolling release, so there is no specific version.
開発者 Levente Polyák
OSの系統 Unix系,Linux
開発状況 活動中
ソースモデル FLOSS
初版 2002年3月11日 (23年前) (2002-03-11)
最新安定版 ローリングリリース / インストール用ISOイメージは毎月初旬に更新[1]
リポジトリ git.archlinux.org
対象市場 汎用
アップデート方式 pacman
パッケージ管理 pacman
プラットフォーム x86-64
カーネル種別 モノリシックカーネル
ユーザランド GNU
影響を受けたOS Artix Linux, EndeavourOS, Manjaro, Garuda Linux and others
既定のUI Bash
ライセンス 様々
ウェブサイト https://archlinux.org/
サポート状況
サポート中です。
テンプレートを表示

Arch Linux(アーチ・リナックス[2][3])は、Linuxディストリビューション[4]の1つであり、「シンプリシティ」、「ミニマリズム」、「エレガンス」さ、コードの正しさに焦点を当てて開発されている[5]。「シンプリシティ」(Simplicity、簡潔さ)とは、Arch Linuxの言うところでは「…不必要な追加・修正、あるいは複雑化を伴わない…」ことであり、それは初心者の立場よりも開発者の立場からの見たものだとしている[6]

Arch Linuxは、ローリングリリースと呼ばれるリリースモデルを採用しており、他のLinuxディストリビューションで見られるような明確な「バージョン番号」や「リリース・スケジュール」を持たない。リポジトリ上のソフトウェアパッケージは日々新しいバージョンへと更新されており、定期的にソフトウェアアップデートを行うことで、システムを常に最新の状態に保つことができる。インストール用のイメージファイルは定期的に更新されているが、これは基本的にシステムパッケージ群の最新スナップショットに過ぎない[7]

歴史

Arch Linuxは、2002年3月にジャッド・ヴィネットにより設立され、最初のリリースである 0.1(コードネーム Homer)は2002年3月11日に公開された。ジャッドは、別の最小主義ディストリビューションであるCRUX(英語版)から着想を得てArchの開発を思い立った。彼は2007年10月1日までプロジェクトを率いたが、自身の時間不足を理由に辞任し、それ以降はアーロン・グリフィンがプロジェクトを率いている[8]

デザインと理念

Arch Linuxの公式リポジトリはバイナリパッケージをベースとしている。これらのパッケージは、近代的なハードウェアのパフォーマンスを引き出すために、x86-64マイクロプロセッサを対象にしている。Portsebuildのように、ソースコードのビルドおよびバイナリパッケージの作成を自動化するArch Build System(ABS)も提供されている。

Arch Linuxは、シンプルで無駄の無いシステムに焦点を当てており、ユーザを支援するために行なわれている努力はグラフィカルインタフェースの提供ではない(たとえば、パッケージマネージャのグラフィカル・フロントエンドは公式に提供されていない)。その代わりに、「素早くアクセスして編集できるように配置され、簡明なコメントが付けられた、きれいで能率的な構成ファイル群が整備されている」としている[5]

管理や構築を複雑なツールに頼るシステムはエンドユーザにとって害になるだろう。(中略)「システムの複雑さを隠そうとすれば、より複雑なシステムになってしまうのが落ちだ」。中身を隠すための抽象化レイヤーは決して良いものではない。その代わりに、隠さないで済むように中身を設計すべきなのだ。
—アーロン・グリフィン

initフレームワーク

Arch Linuxは、2012年11月4日より公式のinitシステムとしてsystemdを採用した[9]

過去のArch LinuxではBSDスタイルのinitが使われていた。これは、柔軟性と引き換えにシンプリシティを得るもので、起動時にロードしたいモジュールや実行したいサービスは中心的設定ファイルの /etc/rc.conf に単純に列挙していた[10]

インストール

Arch Linuxのウェブサイトでは、CDもしくはUSBから起動できるISOイメージが提供されている。Arch Linuxのインストール作業はコマンドライン環境で行われる。パーティションの作成、ファイルシステムの作成・マウントなどを行い、pacstrapという小さなシェルスクリプトを実行して基本システムをインストールする[11]。(以前はAIFというcursesベースの対話的インストーラが提供されていたが、メンテナの不足を理由に2012.07.15版よりインストール用イメージから削除された[12])。インストール直後の状態では、必要最小限のGNU/Linux環境 — すなわちLinuxカーネルGNUツールチェーン、少数の追加モジュールとライブラリ、およびbashシェルのみが存在する[13]。その後のシステムの設定やデスクトップ環境などのソフトウェアの追加は手動で行う必要がある。

パッケージ管理

Pacman

pacmanの使用例

すべてのパッケージは、Arch Linuxのために開発されたPacmanパッケージマネージャを使用して管理される。Pacmanは、パッケージのインストール・アップグレード・削除・ダウングレードを処理するとともに、依存関係の自動解決を行う[14]。公式のパッケージはArch Linuxのパッケージツリーから取得され、それらはx86-64用に最適化されている。パッケージは基本的にtar.xz形式で提供されている[15]が、2020年1月4日、tar.zst形式に切り替える方針が示された[16]

リポジトリ

2025年2月時点で、以下の公式リポジトリが用意されている[17]

core

基本システムをセットアップするために必要なすべてのパッケージが収容されている。

extra

coreリポジトリに含まれないすべてのパッケージが収容される。デスクトップ環境やそのためのパッケージなどはこれに含まれる。

multilib

WineSteamといった32ビットアプリケーションを64ビット環境で実行およびビルドできるようにするためのパッケージが収容されている。

この他に、メインのリポジトリに収容される前のテスト段階のパッケージを提供するためのリポジトリがある。

core-testing

coreリポジトリ用。

extra-testing

extraリポジトリ用。

multilib-testing

multilibリポジトリ用。

加えて、破損したパッケージがtestingリポジトリに置かれることを回避するために、試験的なリビルドを行うための「core-staging」および「extra-staging」リポジトリが用意されている。

また、特定のデスクトップ環境の最新バージョンを含むリポジトリが2つある。

gnome-unstable

extra-testingリポジトリにリリースされる前のGNOMEのプレリリース版と安定版のパッケージが収容されている。

kde-unstable

extra-testingリポジトリにリリースされる前のKDE Plasmaおよびそのアプリケーションの最新のベータ版またはリリース候補版のパッケージが収容されている。

過去に存在したunstableリポジトリは2008年7月をもって停止され、ほとんどのパッケージは他のリポジトリへ移動した[18]。また、過去に存在したcommunityリポジトリは2023年5月をもってextraリポジトリと統合された[19]

これらの公式リポジトリに加え、利用者が提供する非公式リポジトリが存在する。この例としてArch User Repository (AUR) がある。

リポジトリのセキュリティ

過去のArch Linuxでは、電子署名付きパッケージがサポートされておらず[20]、ダウンロード-インストールのプロセスにおいて、パッケージとメタデータの真正性が検証されていなかった。したがって、改ざんされた、もしくは悪意を持つリポジトリミラーによってシステムが危険に晒される可能性があった[21]pacmanバージョン4から、データベースとパッケージの検証が可能になった。2011年11月より公式リポジトリにおいて新規パッケージへの署名が強制され、2012年3月の時点ではすべてのパッケージが署名され[22]、2012年6月よりパッケージ署名検証の運用が正式に開始された[23][24]

Arch Build System

Arch Build System(ABS)は、ソースコードのビルドおよびPacman用バイナリパッケージの作成を自動化するための「Portsライクな」システムである[25]。ABSが提供するツールは、公式リポジトリのパッケージ作成に使われているだけでなく、一般のユーザも利用できる。

ABSでは、パッケージの構築に必要な情報をPKGBUILDという名前のBashスクリプトとして記述する。PKGBUILDスクリプトには、ソースコードのダウンロード元、パッケージのメタデータ(名前やバージョン番号など)、ビルド時に必要なパッケージの一覧や、インストール時の依存関係、ソースコードをビルドするスクリプト、ファイルシステムへの配置を決めるスクリプトなどが、定められた仕様に従って記述される。

PKGBUILDスクリプトはABSのmakepkgツールによって処理される。makepkgは、PKGBUILDスクリプトの内容をもとに、ソースコードのダウンロードおよびビルド、Pacman用バイナリパッケージの作成を自動で行うシェルスクリプトである。これによって作成されたパッケージは、公式のパッケージと同様に、Pacmanを使ってインストールおよび管理を行うことができる。

Arch User Repository

Arch Build Systemによって、一般のユーザもソースコードからPacman用のバイナリパッケージを構築できる。この機能性をもとに、一般ユーザによって作られたPKGBUILDを収容するためのArch User Repository(AUR)という補完的なリポジトリが提供されている。

AURでは、一般ユーザによって作成された、公式リポジトリには存在しないパッケージのPKGBUILDスクリプトが提供されている。PKGBUILDスクリプトには、依存パッケージのリストと、ソースをArch Linuxのアーキテクチャに適合させるための構成処理が記述されている。これによりユーザは、ソースコードのビルドを簡略化することができ、さらにソフトウェアをPacmanのパッケージとしてインストールすることができる。これらのPKGBUILDスクリプトはAURのウェブサイトからダウンロードしてABSのmakepkgコマンドで利用できるが、「yaourt」のようなヘルパプログラムを使うことで、パッケージの検索・ダウンロード・ビルドのプロセスをさらに自動化することもできる[26]

AURでは、以下の理由によりリポジトリに収容されないパッケージも提供されている。

ライセンスの問題

再配布は認められていないが利用は自由なソフトウェアはAURに収容できる。AURには実際にそれらのソフトウェアを提供サイトから直接ダウンロードするPKGBUILDスクリプトが収容されている。例えばGoogle EarthRealPlayerなどが該当する。

公式パッケージに変更を加えたもの

AURには公式パッケージの様々なバリエーションも収容される。公式パッケージのベータバージョンなどもこれに該当する。

いかなるソフトウェアであっても一般ユーザによってPKGBUILDが提供されうる。あらゆるPKGBUILDは、ライセンスの問題や方針などのために意図的にAURに置く場合を除いて、ユーザから十分な投票を受けることでcommunityリポジトリに登録される可能性がある。

バージョン

ローリングリリース

Arch Linuxは、Gentoo Linuxなどのように、ディストリビューションの明確なバージョン名やリリース日を持たない「ローリングリリース」システムを採用している。リポジトリ上のパッケージは個別に日々更新されており、定期的なアップデートを行っていれば、システムを常に最新の状態に保つことができる[27]。Arch Linuxのインストール用イメージファイルは定期的にリリースされるが、これはパッケージ集合の最新スナップショットに過ぎず(インストール用ソフトウェアが修正されることはある)、各リリースごとにユーザの移動を奨めるものではない。パッケージおよび各種設定ファイルの更新を行えば、どのリリースをインストールしても違いが生じることはない。

ISOイメージリリース2009.02以降、最適なハードウェアサポートを行うために、インストール用イメージのリリースはカーネルのバージョンアップにあわせて行われることになった。これは、およそ3、4ヶ月ごとに新たなリリースが行われることを意味する[28]

派生ディストリビューション

Pacman系派生版一覧に掲載されるもの。

配布版 説明
ArchBang(英語版 Arch Linuxを母体に、インストールメディアおよび標準のウィンドウマネージャにOpenboxを採用したもの[29]
Artix Linux(英語版 systemdの代わりにOpenRC、runitまたはs6 initを使用するArch Linuxに基づくディストリビューション[30]
ArchLabs(英語版 Openboxウィンドウマネージャを採用した最小限のLinuxディストリビューション。
BlackArch Linux Arch Linuxを母体とした侵入テストを目的としたもの。
Chakra Linux(英語版 KDE複数の機能をまとめたKDEmodデスクトップ環境を標準とし、Qt母体のグラフィカルユーザインタフェースインストーラや更新機能、パッケージマネージャ(Pacmanのフロントエンド)などを提供し、Arch Linuxよりも扱いやすいディストリビューションを目標としている[31][32]
EndeavourOS Antergosの後継ディストリビューション[33]
Garuda Linux ゲーミング重視のユーザー向けに設計されているLinuxディストリビューション。
LinHES(英語版 ホームシアター PC (HTPC) の構築を目的としているオペレーティングシステム。
Manjaro Arch Linuxを母体に、標準のウィンドウマネージャXfceKDEを採用したもの。コミュニティ版としてCinnamonMATELXDEEnlightenmentOpenBoxが提供されている。
Parabola_GNU/Linux-libre Linux-libreカーネルを使用しており、自由ソフトウェアのみで構成されている。
SteamOS Valveが開発したオペレーティングシステム。主にゲームプレイに特化している。Steam DeckSteam Machinesに搭載され、KDE Plasmaを採用している。
SystemRescue(英語版 ストレージからブートできないOSのレスキュー用Live CDディストリビューション。

その他の派生版

※原則、DistroWatchのほかパソコン雑誌、他言語版を含めWikipediaに記事が存在しないものは掲載しない。

脚注

  1. ^Arch Linux Downloads”. 2015年7月19日閲覧。
  2. ^ 麻生二郎「PlugApps Linuxとは日経Linux:ITpro
  3. ^[arch] Pronnounciation of our beloved distribution's name”. 2008年9月7日閲覧。
  4. ^Arch Linux - ArchWiki”. 2013年2月18日閲覧。
  5. ^ a bThe Arch Way”. 2013年2月18日閲覧。
  6. ^phraktured.net: Archway”. 2008年9月7日閲覧。
  7. ^Rolling with Arch Linux”. lwn.net (2010年3月10日). 2011年9月30日閲覧。
  8. ^Arch Linux Forums / Arch Leadership”. 2008年9月7日閲覧。
  9. ^End of initscripts support”. archlinux.org (2012年11月4日). 2013年2月1日閲覧。
  10. ^Rc.conf”. wiki.archlinux.org. 2009年10月19日閲覧。
  11. ^Installation Guide”. Arch Wiki. 2013年2月1日閲覧。
  12. ^Arch Linux - News: Install media 2012.07.15 released”. 2012年9月28日閲覧。
  13. ^ArchWiki :: Beginners Guide - ArchWiki”. 2008年9月7日閲覧。
  14. ^ArchWiki :: Pacman - ArchWiki”. 2008年9月7日閲覧。
  15. ^ Pierre Schmitz (2010年3月23日). “Switching to xz compression for new packages”. Archlinux.org. 2010年3月23日閲覧。
  16. ^ Robin Broda (2020年1月4日). “Now using Zstandard instead of xz for package compression”. Archlinux.org. 2020年1月7日閲覧。
  17. ^ Official Repositories, wiki.archlinux.org, https://wiki.archlinux.org/title/Official_repositories 2025年2月4日閲覧。
  18. ^ “Arch Linux Newsletter 08-04-2008”. https://web.archive.org/web/20080827113821/http://www.archlinux.org/static/newsletters/newsletter-2008-Aug-04.html 2008年9月7日閲覧。
  19. ^ “Git migration announcement”. https://archlinux.org/news/git-migration-announcement/ 2025年2月4日閲覧。
  20. ^FS#5331 - Signed packages”. 2011年8月7日閲覧。
  21. ^Attacks on Package Managers”. cs.arizona.edu (2008年7月10日). 2010年9月5日時点のオリジナルよりアーカイブ。2010年9月14日閲覧。
  22. ^ Allan McRae (2011年12月17日). “Pacman Package Signing – 4: Arch Linux”. 2012年2月29日閲覧。
  23. ^Having pacman verify packages”. Gaetan Bisson (2012年6月4日). 2012年6月4日閲覧。
  24. ^Install media 2012.07.15 released”. archlinux.org (2012年7月22日). 2012年8月13日閲覧。
  25. ^ArchWiki :: ABS - The Arch Build System - ArchWiki”. 2008年9月7日閲覧。
  26. ^Intervju: Arch Linux: Popular KISS distro”. [1]. 2008年10月24日閲覧。
  27. ^DVD-Guides.com - Arch Linux Review”. 2008年9月7日閲覧。
  28. ^ Aaron Griffin (2009-02-16), 2009.02 ISO Release, https://www.archlinux.org/news/434/
  29. ^ ArchBang
  30. ^ Artix Linux
  31. ^ Chakra
  32. ^ DistroWatch, DistroWatch.com: Chakra GNU/Linux, distrowatch.com, https://distrowatch.com/table.php?distribution=chakra 2011年9月1日閲覧。
  33. ^ EndeavourOS
  34. ^ Arch Linux ARM
  35. ^ Audiophile Linux Distrowatch
  36. ^ Bluestar Linux Distrowatch

外部リンク

ウィキメディア・コモンズには、Arch Linuxに関連する**メディアおよびカテゴリ**があります。

関連項目

Linux
Linux 採用 批判 デスクトップLinux(英語版歴史 カーネル リーナスの法則 Linux Foundation Tux vmlinux kernel.org Linuxカーネルメーリングリスト
Linuxディストリビューション Linuxディストリビューション 比較 ネットブックでの比較(英語版軽量Linuxディストリビューション Live CD Live USB パッケージフォーマット
GNU フリーソフトウェア財団 GNU GNU GPL GNU/Linux名称論争 GNUプロジェクト
Xウィンドウマネージャ AfterStep Blackbox CTWM Enlightenment FVWM Hackedbox IceWM Metisse OLVWM PLWM Sawfish(英語版) vtwm wm2 wmx Xmonad
ユーザインタフェース CLI GUI GNOME KDE Xfce LXDE Cinnamon MATE Pantheon
アプリケーション デスクトップ(英語版) デバイス(英語版組み込み ゲーム LAMP MEAN シンクライアント
メディア Free Software Magazine Linux.com Linux Format Linux Gazette(英語版Linux Journal Linux Magazine Linux Outlaws(英語版LugRadio LWN.net O3 Magazine(英語版) Phoronix(英語版
一覧 デバイス(英語版) ディストリビューション(英語版) Live CD(英語版) Linux対応プロプライエタリソフトウェア(英語版
システムの配置と特徴 起動過程(英語版Linux kernel oops コンソール(英語版) フレームバッファ(英語版カーネルモジュール zram
モバイル Access Linux Platform Android Firefox OS KaiOS LiMo Foundation LiMo Platform Linux Phone Standards Forum Sailfish OS MeeGo Mer(英語版Maemo Moblin Mobilinux オープン・ハンドセット・アライアンス Openmoko OPhone webOS SHR Tizen Bada Ubuntu Mobile Ubuntu Touch
セキュリティ Linuxにおけるマルウェア en:Comparison of antivirus software Clam AntiVirus
その他 Linuxカンファレンス(英語版Linuxドキュメンテーションプロジェクト Linux Standard Base Linuxユーザーグループ (LUG)(英語版Revolution OS SCO・Linux論争 アンドリュー・タネンバウムとリーナス・トーバルズの議論
カテゴリ ウィキブックス