Arch Linux

提供:LinuxJapanWiki

Arch Linuxは、簡潔さ、現代性、実用性、ユーザー中心性、多様性に焦点を当てて開発が行われている、独立系のLinuxディストリビューション。

簡潔さとは、Arch Linuxの言うところでは「不必要な追加・修正、あるいは複雑化を伴わない」ことであり、それは初心者の立場よりも開発者の立場からの見たものだとしている。

Arch Linux
ファイル:Archlogo.png
開発者 Levente Polyak ら
系統 Arch Linux
開発状況 開発中
初版 2002年3月11日
最新安定版 ローリングリリース / インストール用ISOイメージは毎月初旬に更新
アップデート方式 pacman
パッケージ管理 pacman
カーネル種別 インストール時に選択
既定のシェル bash(ライブ環境ではzsh)
ライセンス 様々
ウェブサイト https://www.archlinux.jp/
テンプレートを表示



概要[編集 | ソースを編集]

Arch Linuxは、2002年3月にジャッド・ヴィネットにより設立された。
ジャッドは、別の最小主義ディストリビューションであるCRUXから着想を得てArchの開発を思い立った。
2007年10月以降はアーロン・グリフィンが、2020年2月以降はレベンテ・ポリアクがプロジェクトを率いている。

Arch Linuxの公式リポジトリは、x86-64マイクロプロセッサを対象にしたバイナリパッケージをベースとしている。かつてはi686向けのパッケージも存在したが、2017年11月をもって廃止された。また、BSD系のPortsやGentoo Linuxのebuildのように、ソースコードのビルドおよびバイナリパッケージの作成を自動化するArch Build System(ABS)も提供されている。

Arch Linuxは、シンプルで無駄の無いシステムに焦点を当てており、「素早くアクセスして編集できるように配置され、簡明なコメントが付けられた、きれいで能率的な構成ファイル群が整備されている」とされる。

管理や構築を複雑なツールに頼るシステムはエンドユーザにとって害になるだろう。

(中略)
「複雑なシステムを隠そうとすれば、その結局もっと複雑なシステムになってしまうのが落ち」だ。
中身を隠すための抽象化レイヤーは決して良いものではない。

その代わりに、隠さないで済むように中身を設計すべきなのだ。 — アーロン・グリフィン


Arch Linuxは、2012年11月4日以降公式のinitシステムとしてsystemdを採用しているが、それ以前はBSDスタイルのinitが使われていた。

これは、柔軟性と引き換えに簡潔さを得るもので、起動時にロードしたいモジュールや実行したいサービスは中心的設定ファイルの /etc/rc.conf に単純に列挙していた。

インストール[編集 | ソースを編集]

Arch Linuxのウェブサイトでは、CDもしくはUSBから起動できるISOイメージが提供されている。

Arch Linuxのインストール作業はコマンドライン環境で行われる。
パーティションの作成、ファイルシステムの作成・マウントなどを行い、pacstrapという小さなシェルスクリプトを実行して基本システムをインストールする。

カーネルはbaseパッケージに含まれていないため、pacstrapによるインストールの段階でカーネルを選択することが出来る。

インストール後のシステムの設定やデスクトップ環境などのソフトウェアの追加は、手動で行う必要がある。

2021年4月以降、Pythonで書かれたテキストベースのインストーラー「archinstall」が付属するようになった。

パッケージ管理[編集 | ソースを編集]

pacman[編集 | ソースを編集]

すべてのパッケージは、Arch Linuxのために開発されたpacmanパッケージマネージャを使用して管理される。
pacmanは、パッケージのインストール・アップグレード・削除・ダウングレードを処理するとともに、依存関係の自動解決を行う。

公式のパッケージはArch Linuxのパッケージツリーから取得される。
パッケージは基本的にtar.xz形式で提供されているが、2020年1月4日、tar.zst形式に切り替える方針が示された。

リポジトリ[編集 | ソースを編集]

  • core - 基本システムをセットアップするために必要なすべてのパッケージが収容される。
  • extra - 基本システムでは必要とされないパッケージが収容される。デスクトップ環境とそのプログラムはこれに含まれる。2023年5月下旬から、後述の「community」リポジトリと統合。
  • multilib - x86-64ユーザのためのリポジトリで、32bitアプリケーションを64bit環境で容易に実行できるように提供されている。

かつては「community」と呼ばれるリポジトリがあった。そこにはコミュニティによりビルドされたパッケージが収容され、中にはAURにて十分な数の投票を受けて「トラステッドユーザ」(trusted user) により採用されたものが含まれていた。
この他に、メインのリポジトリに収容される前のテスト段階のパッケージを提供するためのリポジトリがある。

  • core-testing - 「core」リポジトリ用。
  • extra-testing - 「extra」リポジトリ用。
  • multilib-testing - 「multilib」リポジトリ用。


加えて、破損したパッケージがtestingリポジトリに置かれることを回避するために、試験的なリビルドを行うための「staging」リポジトリが用意されている。
過去に存在したunstableリポジトリは2008年7月をもって停止され、ほとんどのパッケージは他のリポジトリへ移動した。

これらの公式リポジトリに加え、AURなどの利用者が提供する非公式リポジトリが存在する。

リポジトリのセキュリティ[編集 | ソースを編集]

過去のArch Linuxでは、電子署名付きパッケージがサポートされておらず、ダウンロード、インストールのプロセスにおいて、パッケージとメタデータの真正性が検証されていなかった。 したがって、改ざんされた、もしくは悪意を持つリポジトリミラーによってシステムが危険に晒される可能性があった。

pacmanバージョン4から、データベースとパッケージの検証が可能になった。
2011年11月より公式リポジトリにおいて新規パッケージへの署名が強制され、2012年3月の時点ではすべてのパッケージが署名され、2012年6月よりパッケージ署名検証の運用が正式に開始された。

Arch Build System[編集 | ソースを編集]

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

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

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

これによって作成されたパッケージは、公式のパッケージと同様に、pacmanを使ってインストールおよび管理を行うことができる。

Arch User Repository[編集 | ソースを編集]

Arch User Repository(AUR)では、一般ユーザによって作成された、公式リポジトリには存在しないパッケージのPKGBUILDスクリプトが提供されている。

これによりユーザは、ソースコードのビルドを簡略化することができ、さらにソフトウェアをpacmanのパッケージとしてインストールすることができる。
これらのPKGBUILDスクリプトはAURのウェブサイトからダウンロードしてABSのmakepkgコマンドで利用できるが、「Yay」のようなヘルパープログラムを使うことで、パッケージの検索・ダウンロード・ビルドのプロセスをさらに自動化することもできる。

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

  • ライセンスの問題
    再配布は認められていないが利用はフリーなソフトウェアはAURに収容できる。
    AURには実際にそれらのソフトウェアを提供サイトから直接ダウンロードするPKGBUILDスクリプトが収容されている。
    例えばGoogle ChromeやMicrosoft Edgeなどが該当する。
  • 公式パッケージに変更を加えたもの
    AURには公式パッケージの様々なバリエーションも収容される。
    公式パッケージのベータバージョンなどもこれに該当する。


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

リリース[編集 | ソースを編集]

Arch LinuxはGentoo Linux同様、ローリングリリースと呼ばれるリリースモデルを採用しており、明確な「バージョン番号」や「リリーススケジュール」を持たない。
リポジトリ上のソフトウェアパッケージは日々新しいバージョンへと更新されており、定期的にソフトウェアアップデートを行うことで、システムを常に最新の状態に保つことができる。

インストール用のイメージファイルは定期的に更新されているが、これは基本的にシステムパッケージ群の最新スナップショットに過ぎない。

ISOイメージリリース2009.02以降、最適なハードウェアサポートを行うために、インストール用イメージのリリースはカーネルのバージョンアップにあわせて行われることになった。

派生ディストリビューション[編集 | ソースを編集]


コメント欄[編集 | ソースを編集]

コメント欄の利用に関してはコメント欄の利用を参照して下さい。
  • 本ページに無関係な内容のコメントは一律して削除されます。
    Wiki運営に関してはWiki運営掲示板にお願いします 。
  • 投稿されているコメントへの返信の際は、必ず返信したいコメントの [返信] を使って返信して下さい。
Loading comments...
Cookieは私達のサービスを提供するのに役立ちます。このサービスを使用することにより、お客様はCookieの使用に同意するものとします。