# Arch Terminology (日本語)

このページは Arch Linux コミュニティで広く使われている共通語をわかりやすく説明するページです。自由に単語を追加・修正してかまいませんが、特定のセクションの編集オプションを使うようにしてください。新しい単語を追加する場合は、アルファベット順で並べて下さい。

## Arch Linux

Arch は以下のように表記されます:

- Arch Linux
- Arch (Linux を省略)
- archlinux (UNIX ネーム)

Archlinux, ArchLinux, archLinux, aRcHlInUx, などは全ておかしな突然変異体です。

公式に、"Arch Linux" の 'Arch' は /ˈɑrtʃ/ と発音されます。これは "archer"/bowman (射手) や "arch-nemesis" (好敵手) と同じで、"ark" (アーク) や "archangel" (アークエンジェル) とは違います。

## ABS

Arch Build System (ABS) は以下のことに使われます:

- パッケージがまだ存在しないソフトウェアの新しいパッケージを作成する
- 既存のパッケージをあなたのニーズに合わせてカスタマイズ・修正する (オプションを有効化・無効化する)
- Gentoo 流に ("a la Gentoo")、あなたのコンパイラフラグを使ってシステム全体をリビルドする
- あなたのカスタムカーネルで動作するカーネルモジュールを取得する

ABS は Arch Linux を使うのに必須ではありませんが、役に立ちます。

## ARM

Arch Rollback Machine はパッケージの旧バージョンを削除しないミラーで、システムをダウングレードする必要がある場合にとても有用です。

## AUR

Arch User Repository (AUR) はコミュニティによって運営されている Arch ユーザーのためのリポジトリです。初め AUR はもっと広いコミュニティの間で PKGBUILD の共有をまとめるために創設され、ユーザーが作ったパッケージが AUR の [community] リポジトリを通して [core] や [extra] リポジトリに入るのを促進していました。

AUR は新しい Arch パッケージの出生地です。ユーザーは AUR に自分のパッケージを寄与することができます。AUR コミュニティはお気に入りのパッケージに投票をして、パッケージが十分な投票を集めると、AUR の Trusted User がそのパッケージを [community] リポジトリに持って行き、最終的に pacman や ABS からアクセスできるようになります。

Arch Linux ユーザーコミュニティリポジトリにはここからアクセスすることができます。

## PKGBUILD

PKGBUILD は Arch Linux のパッケージをビルドするのに使われる小さなスクリプトです。詳細は Creating Packages (日本語) を参照してください。

## TU, Trusted User

Trusted user は AUR や [community] リポジトリの管理をしている人のことです。 Trusted User はたくさん投票されたパッケージを [community] リポジトリに移動する権限を持っています。 今いる TU による多数の投票によって TU は任命されます。

Trusted user は AUR Trusted User ガイドラインと TU by-laws を守っています。

## bbs

電子掲示板 (Bulletin board system) のことですが、Arch の場合、ここにあるサポートフォーラムを示します。

## community/[community]

[community] リポジトリは Trusted User によって作成されたビルド済みパッケージが利用できるリポジトリです。[community] にあるパッケージのほとんどは AUR 出身です。

[community] リポジトリにアクセスするには、`/etc/pacman.conf` 内の community をアンコメントしてください。

## core/[core]

[core] リポジトリには Arch Linux システムに必要な最低限のパッケージが含まれています。コマンドラインのシステムを動かすために必要な全てが [core] に置かれています。

## カスタム・ユーザーリポジトリ

誰でもリポジトリを作ってそれを他のユーザーに提供することができます。リポジトリを作成するには、パッケージ一式と、あなたのパッケージ用の pacman 互換のデータベースファイルが必要です。ファイルをオンラインでホストすれば、標準リポジトリとして追加することで誰でもあなたのリポジトリを使うことができるようになります。

Custom local repository (日本語) を見て下さい。

## 開発者 (developer)

Arch を改善するために無償で働いている半神です。開発者の上に立っているのは私達の神、Judd Vinet と Aaron Griffin だけで、さらに彼らに勝るのはタコスしかありません。

## extra/[extra]

Arch の公式パッケージセットは公平に合理化されていますが、これに加えて core パッケージセットに入っていないものを沢山詰めた "extra" リポジトリが提供されています。このリポジトリは私達のコミュニティから投稿されたパッケージによって絶えず成長しています。 デスクトップ環境・ウィンドウマネージャ・その他一般的なプログラムはここにあります。

## hwd

hwd はハードウェア検出ツールと Arch Linux 用の `xorg.conf` ジェネレータです。自動設定スクリプトを動作させるのとは違い、hwd は既存の設定を変更しません。ハードウェアとモジュールを検知し、手動で変更する方法の情報を提供します。ユーザーはシステムのコントールを保つことができます。これは Arch Linux の基本理念です。

## hwdetect

hwdetect は主に `/etc/mkinitcpio.conf` で使うモジュールをロードしたり一覧するために使われるハードウェア検出スクリプトです。このスクリプトは Linux カーネルで使われている sysfs サブシステムによってエクスポートされた情報を利用します。

## initramfs

mkinitcpio (日本語) を参照してください。

## initrd

特別なファイル `/dev/initrd` は読み込み専用のブロックデバイスです。デバイス `/dev/initrd` はカーネルが起動する前にブートローダーによって初期化される RAM ディスクです。カーネルはブロックデバイス `/dev/initrd` の中身を使うことで2段階のシステム起動ができます。

最初の起動段階では、カーネルが起動し initial root ファイルシステムを `/dev/initrd` の中身からマウントします。次の段階で、追加のドライバーや他のモジュールが initial root デバイスの中からロードされます。追加のモジュールがロードされた後、新しい root ファイルシステム (つまり通常の root ファイルシステム) が他のデバイスからマウントされます。

## makepkg

makepkg はあなたのためにパッケージをビルドします。makepkg は PKGBUILD ファイルから必要なメタデータを読み込みます。 必要なものはビルド可能な Linux プラットフォーム、wget、そしていくつのかのビルドスクリプトだけです。スクリプトを使ったビルドの利点は実行は一度のみでいいということです。パッケージのビルドスクリプトを入手さえすれば、makepkg を実行すれば後は makepkg が残りを全て行ってくれます: ソースファイルのダウンロード・検証、依存関係のチェック、ビルド時設定、パッケージのビルド、一時 root へのパッケージのインストール、カスタマイズ、メタ情報の生成、そして pacman で使うパッケージの作成。

## namcap

namcap は Arch Linux のパッケージや PKGBUILD ファイルの問題を見つけ出すパッケージ解析ユーティリティです。ファイルリスト・ファイルそれ自体・各 PKGBUILD ファイルにルールを適用することができます。

ルールはメッセージのリストを返します。メッセージはそれぞれ3つのタイプに分けられます: error, warning, information (メモやコメントだと思って下さい)。エラー ('E:' と表示されます) は namcap が確実に間違っていると判断したもので修正しなくてはなりません。警告 ('W:' と表示されます) は namcap が変更するべきだと判断したもので、問題がないのであればそのままにしておいてかまいません。インフォメーション ('I:' と表示されます) はあなたが info 引数を使ったときだけ表示されます。インフォメーションメッセージは訳に立つ情報を提供しますが変更が必要なものではありません。

## パッケージ (package)

パッケージには以下が含まれています

- アプリケーションの (コンパイル済みの) ファイルの全て
- アプリケーションのメタデータ、アプリケーションの名前・バージョン・依存関係など
- インストールファイルと pacman 用のディレクティブ
- (任意) 生活を楽にする追加ファイル、起動・停止スクリプトなど

Arch のパッケージマネージャ pacman を使ってパッケージをインストール・更新・削除することができます。自分自身でプログラムをコンパイル・インストールするのと比べパッケージを使うことには多くの利点があります:

- 簡単にアップデート可能: アップデートがきたらすぐに pacman でパッケージを更新できます
- 依存関係のチェック: pacman があなたのために依存関係を管理します、プログラムを指定するだけで pacman は他の必要なプログラムを全てインストールします
- クリーンな削除: pacman はパッケージの全てのファイルのリストを保持しています。このため、パッケージを削除するときに残ってしまうファイルはありません

Note: GNU/Linux ディストリビューションはそれぞれ別のパッケージ・パッケージマネージャを使っています、つまり Arch の pacman を使って Debian のパッケージをインストールすることはできないということです。

## パッケージメンテナ

パッケージメンテナの役割は、アップストリームで新しいバージョンが来た時にパッケージを更新して、パッケージのバグに関する質問に上手く答えることです。「パッケージメンテナ」という単語は以下の全ての場合で使うことができます:

- 公式リポジトリ (core, extra, testing) にあるソフトウェアパッケージを管理しているコア Arch Linux 開発者。
- サポートされていない・非公式の community リポジトリにあるソフトウェアパッケージを管理しているコミュニティの Trusted User。
- PKGBUILD と AUR のローカルソースファイルを管理している一般ユーザー。

パッケージのメンテナは一般的にそのパッケージを担当している人です。以前のメンテナはパッケージに貢献した他の人と一緒に貢献者として PKGBUILD に表記されているはずです。

## pacman

pacman パッケージマネージャは Arch Linux の最重要点のひとつです。シンプルなバイナリパッケージフォーマットを使いやすいビルドシステムと結びつけています (ABS を見て下さい)。Pacman はパッケージの簡単な管理とカスタマイズを可能にします、パッケージが公式 Arch リポジトリ由来のものであろうとユーザー自身で作ったものであろうと関係ありません。リポジトリシステムによってユーザーは自分自身のカスタムパッケージリポジトリを作成・管理することができ、コミュニティの成長と貢献を促進します (AUR を見て下さい)。

マスターサーバーとパッケージリストを同期することで Pacman はシステムの状態を最新に保つことができ、セキュリティに配慮したシステムの管理を用意にします。このサーバー・クライアントモデルではシンプルなコマンドでパッケージをダウンロード・インストールすることができ、必要な依存関係を完全に補完します (Debian の apt-get に類似)。

NB: Pacman は Arch Linux の創始者である Judd Vinet によって書かれました。pacman は FrugalWare, Rubix, UfficioZero (イタリア語、Ubuntu ベース) など他のディストリビューションでもパッケージ管理ツールとして使われており、勿論、Archie や AEGIS など Arch ベースのディストリビューションでも使われています。

## pacman.conf

pacman の設定ファイルです。`/etc` の中にあります。何ができるのか完全な説明を見たいときは、コマンドラインに次を入力してください:

    man pacman.conf

## リポジトリ (repository/repo)

リポジトリには一つあるいは（通常）複数の PKGBUILD のコンパイル済みのパッケージが含まれています。公式リポジトリは

- [core]: 完全な CLI システムに必要なパッケージの最新バージョンが含まれています
- [extra]: システムを動作させるのに必須ではないが楽しいシステムにするために必要なパッケージの最新バージョンが含まれています ;)
- [community]: AUR からユーザーによる投票を一定以上獲得したパッケージが含まれています

Pacman はこれらのリポジトリを使ってパッケージを検索したりインストールします。リポジトリはローカル (つまりあなたのコンピューター上) にもリモート (つまりインストールする前にパッケージがダウンロードされるところ) どちらにも存在できます。

## RTFM

「マニュアルを読んで下さい」 "Read The Fucking (or Fine) Manual" の略。新規の Linux/Arch ユーザーがプログラムの機能について質問したとき、プログラムのマニュアルにはっきりと書かれている場合、このシンプルなメッセージが多くのユーザーに返されます。

この言葉はユーザーが問題を解決する方法を探す努力を全く怠っているときによく使用されます。誰かがあなたにこういった場合、彼らはあなたに嫌な思いをさせようとしているのではありません。あなたが努力しないことにただフラストレーションを感じているのです。

もしマニュアルを読むように言われたのなら、するべきことはマニュアルページを読むことです。

- 特定のプログラムのプログラムマニュアルを読むには、コマンドラインに次を入力してください:

    man PROGRAM-NAME

PROGRAM-NAME はあなたが情報を必要としているプログラムの名前に置き換えて下さい。

プログラムマニュアルの中にあなたの質問の答えが見つからない場合、答えを探す方法はもっとあります:

- wiki を検索する
- forum を検索する
- mailing lists を検索する
- web を検索する

## taurball

インストール可能なバイナリパッケージを makepkg で作成するのに必要な、PKGBUILD とローカルソースファイルを tarball でまとめたもの。この名前は、tarball を AUR にアップロードする慣習、つまり "tAURball" から由来しています。

## testing/[testing]

メインリポジトリでリリースする前に主要なパッケージ・パッケージのアップデートを保持しておくリポジトリです。バグテストがあったりアップグレードの問題が存在することがあります。デフォルトでは無効になっていますが `/etc/pacman.conf` で有効にすることができます。

## udev

udev は現在のデバイスのファイルだけを含む動的なデバイスディレクトリを提供します。`/dev` ディレクトリにデバイスノードファイルを作成・削除したり、ネットワークインターフェースの名前を変更します。

通常 udev は udevd(8) として動いていてデバイスがシステムに追加・削除されたときカーネルから直接 uevent を受け取っています。

udev がデバイスイベントを受け取った場合、sysfs で提供されている利用可能なデバイス属性と設定済みのルールをマッチングしてデバイスを認識します。ルールは追加のデバイス情報を提供したりデバイスノードや複数のシンボリックリンクの名前を指定したり、デバイスイベント管理の一部として udev に追加のプログラムを実行させたりします。

## wiki

ここです! Arch Linux のドキュメントを探す場所。誰でも文章の追加・修正ができます。

Category:

- About Arch (日本語)