Beginners' Guide (日本語) - ArchWiki

# Beginners' Guide (日本語)

Tip: このガイドは分割して見ることもできます。そうする場合はここから始めて下さい。

関連記事

- :Category:アクセシビリティ
- インストールガイド
- ディスクレスシステム
- SSH からインストール
- 全般的な推奨事項
- 一般的なトラブルシューティング

この文章では Arch Install Scripts を使って Arch Linux をインストールする方法を解説します。インストールする前に、FAQ を一読することをおすすめします。

コミュニティによって管理されている Arch wiki は有用な資料であり、問題が発生したらまず wiki を読んでみましょう。wiki で答えが見つからないときは、IRC チャンネル (irc://irc.freenode.net/#archlinux) やフォーラムを使って下さい。また、Arch Way に従って、知らないコマンドの `man` ページを見るようにしましょう。`man コマンド` で見ることができます。

## インストールの準備

Note: 既存の GNU/Linux ディストリビューションからインストールする場合、このページを参照してください。VNC や SSH を使用してリモートで Arch をインストールする場合、特に役立つでしょう。SSH によるリモート接続を介して Arch Linux をインストールしようとしているユーザーは SSH からインストールを読んで下さい。

### 動作環境

Arch Linux は i686 互換の、最低 64MB の RAM を積んだマシンで動作します。また、基本的なインストールに必要な base グループに含まれる全てのパッケージをインストールするには約 800MB のディスク容量が必要です。使える容量が少ない場合、この数値をかなり切り詰めることが可能ですが、どうやるかは調べる必要があります。

### 最新のインストールメディアを準備する

最新の Arch の公式インストールメディアはダウンロードページから入手できます。ひとつの ISO で32ビットと64ビット両方のアーキテクチャをサポートしています。出来るだけ一番新しい ISO を使って下さい。

Tip: archboot の ISO イメージはこのガイドで説明している手順のいくつかをインタラクティブに行うことができます。詳しくは Archboot を見て下さい。

- インストールイメージには署名がされており、使用する前に署名を検証するのが推奨されています: ダウンロードページ (もしくは記載されているミラーのどれか) から .sig ファイルを .iso ファイルと同じディレクトリにダウンロードしてください。Arch Linux では root で `pacman-key -v iso-file.sig` を、他の環境では gpg2 を使って `gpg2 --verify iso-file.sig` を実行することで検証できます。ファイルのチェックサムの md5 や sha1 も提供されています。

  Note: RSA キー ID に対応する公開鍵をダウンロードしていない場合 gpg2 による検証は失敗します。詳しくは http://sparewotw.wordpress.com/2012/10/31/how-to-verify-signature-using-sig-file/ を参照。

- ISO イメージを好みのソフトウェアで CD や DVD に書き込む。Arch で行う方法は、光学ディスクドライブ#焼き込み に記述しています。

  Note: 光学ドライブやディスクの質は様々です。そのため一般的には信頼性を高めるためできる限り低速で書き込むことが推奨されています。もしディスクが予期しない動作をした場合、ソフトウェアでサポートされている最低の速度で書き込みなおしてください。

- ISO イメージを USB メモリに書き込む。USB インストールメディアを参照してください

#### ネットワーク経由でのインストール

ディスクまたは USB メモリにブートメディアを書き込む代わりに、ISO イメージをネットワーク経由でブートする方法です。あなたが既にサーバーを設定している場合、うまく動きます。PXE の記事を参照し、Arch Linux インストーラの起動へ進みましょう。

#### 既存の Linux 環境からインストール

既に動かしている Linux 環境からインストールすることも可能です。既存の Linux からインストールを見て下さい。

#### 仮想マシンへのインストール

現在のオペレーティングシステムを残し、ストレージのパーティショニングなしで Arch Linux とそのインストール手順に慣れるために、仮想マシン上にインストールするのは良い方法です。ブラウザでこの Beginners' Guide を開いたままインストールが出来るようになります。テストとして独立した Arch Linux システムを使用できるということは一部のユーザーにとって有利なことでしょう。

仮想化ソフトウェアの例としては、VirtualBox, VMware, QEMU, Xen, Parallels があります。

仮想マシンを準備するための正確な手順は、ソフトウェアによって異なりますが、一般的に次の手順に従います。

1. オペレーティングシステムのホストにて、仮想ディスクイメージを作成します。
2. 仮想マシンの設定を最適化します。
3. 仮想 CD ドライブでダウンロードした ISO イメージを起動します。
4. Arch Linux インストーラの起動に進みます。

次の記事が役に立つかもしれません。

- VirtualBox のゲスト OS として Arch Linux をインストール
- Arch Linux as VirtualBox guest on a physical drive
- VMware のゲストとして Arch Linux をインストール
- 既存のインストール環境を仮想マシンから移動

#### Arch Linux インストーラの起動

最初に、あなたのコンピュータの BIOS セットアップで起動順序を変更する必要があるかもしれません。それには、POST (Power On Self-Test) の間にキー (多くの場合 `Delete`、`F1`、`F2`、`F11` や `F12`) を押します。これで BIOS の設定画面が表示されるので、ここでシステムが起動するデバイスを探す順番を設定できます。"Save & Exit" (もしくはそれに準ずるもの) を選択すればコンピュータは通常通り起動するはずです。

Arch のメニューが表示されたら、インストールを行うライブ環境を開始するために "Boot Arch Linux" をメニューから選択し、 `Enter` キーを押します (UEFI ブートディスクから起動された場合は、オプションは次のように表示されます: "Arch Linux archiso x86_64 UEFI")。

ライブ環境のシェルは Zsh です; grml config の一部の機能、高度なタブ補完機能などを提供します。

##### UEFI モードでブートしているかどうかのテスト

UEFI マザーボードを使用していて、UEFI ブートモードが有効になっている (そしてそれが BIOS/Legacy モードよりも優先されている) 場合、CD/USB のインストールメディアは自動で Gummiboot を使って Arch Linux カーネルを起動します。そして以下のメニューが表示されます (黒地に白字)、最初のアイテムがハイライトされます:

    Arch Linux archiso x86_64 UEFI USB
    UEFI Shell x86_64 v1
    UEFI Shell x86_64 v2
    EFI Default Loader

起動時のメニューを覚えていない場合、または UEFI モードで起動しているのか確認したい場合は、次を実行:

    # efivar -l

efivar が UEFI 変数を正しく表示したら、UEFI モードで起動されています。表示されない場合は Unified Extensible Firmware Interface#UEFI 変数のサポートを正しく動作させるための必要条件 に記載されている全ての要件が満たされているか確認してください。

#### 起動時の問題のトラブルシューティング

- Intel のビデオチップセットを使用していて、ブート中にブランクスクリーン (画面が黒くなる) になった場合、おそらく Kernel Mode Setting (KMS) に問題があります。回避策は、パソコンを再起動し、起動しようとしている項目 (i686 または x86_64) の上で、`Tab` キーを押します。末尾に `nomodeset` を追加し、`Enter` キーを押します。または `video=SVIDEO-1:d` (KMS は無効にされません) を設定します。もしくは、`i915.modeset=0` を試して下さい。詳細は Intel ページを参照してください。

- ブランクスクリーンにならず、カーネルのロード中に固まる場合は、`Tab` キーをメニューの項目上で押し、末尾に `acpi=off` を追加し、`Enter` キーを押します。

## インストール

シェルプロンプトが表示されていて、root として自動的にログインされている状態です。テキストファイルを編集する時は、コンソールエディタの nano を例として使います。使い方をよく知らない場合は、nano#nano の使用方法 を見て下さい。Windows とのデュアルブートをする（もしくはそうすることを計画している）場合、Windows と Arch のデュアルブートを見て下さい。

### 言語の選択

Tip: これらはユーザーの大多数には必須ではありません。設定ファイルをあなたの使う言語で書いたり、Wi-Fi パスワードで区別的発音符を使ったり、もしくはあなたの言語でシステムメッセージ(例えばエラー)を見たいときだけに役に立ちます。ここでの変更はインストールプロセスにだけ適用されます。

標準で、キーボードのレイアウトは `us` に設定されています。もし、US キーボード以外のレイアウトを使用している場合は、

    # loadkeys layout

で変更できます。layout の部分は `jp106`、`fr`、`uk`、`be-latin1` などとします。ここから一般的なリストを見ることができます。利用可能なキーマップを表示するには `localectl list-keymaps` コマンドを使って下さい。

Warning: 以下はフォントと言語の設定ですが、この段階では、日本語を表示することはできません。キーマップの変更だけに留めて下さい。

フォントも変える必要があるかもしれません。ほとんどの言語はアルファベットの26字よりも多くの文字を使っているからです。さもなければ文字が□（豆腐）になったり全く異なって表示されることがあります。フォントの名前は大文字・小文字を区別するので、正確に入力してください:

    # setfont Lat2-Terminus16

標準では、言語は英語 (US) に設定されています。インストール中の言語を変更したい場合 (例: 日本語)、`/etc/locale.gen` 内のあなたの設定したいロケールの行と、英語 (US) の行から行頭の `#` を削除します。`UTF-8` を選択してください。

シンプルな Nano エディタで編集するには、`nano /etc/locale.gen` と入力してください。`Ctrl+X` で終了し、変更を保存するか聞かれたら `Y` と、 `Enter` を押せば同じファイル名で上書き保存します。

    # nano /etc/locale.gen

    en_US.UTF-8 UTF-8
    ja_JP.UTF-8 UTF-8

    # locale-gen
    # export LANG=ja_JP.UTF-8

### インターネット接続の確立

Warning: v197 以降、udev はネットワークインターフェースの名前を wlanX や ethX といった風に名づけません。あなたが他のディストリビューションを使っていたり Arch を再インストールするつもりであり、新しい命名規則を知らないのならば、あなたのワイヤレスインターフェースの名前が wlan0 だとか、有線インターフェースの名前が eth0 だと思い込まないでください。`ip link` コマンドでインターフェースの名前を調べることができます。

systemd-197 リリース以降、udev は伝統的な増加式の命名規則 (例: `wlan0`, `wlan1`) をやめて、予測可能な安定したネットワークインターフェースの名前を使うようになりました。新しいインターフェースの名前は再起動しても変わらないことが保証されていて、ネットワークインターフェースの名前がどう命名されるか予想できないという問題を解決しています (詳しくは Predictable Network Interface Names を読んで下さい)。

`dhcpcd` ネットワークデーモンはブート時に自動で起動され、可能であれば有線での接続を試みます。接続できているかウェブサイトに ping をして確かめて下さい。例えば Google のサーバーに ping します:

    # ping -c 3 www.google.com

    PING www.l.google.com (74.125.132.105) 56(84) bytes of data.
    64 bytes from wb-in-f105.1e100.net (74.125.132.105): icmp_req=1 ttl=50 time=17.0 ms
    64 bytes from wb-in-f105.1e100.net (74.125.132.105): icmp_req=2 ttl=50 time=18.2 ms
    64 bytes from wb-in-f105.1e100.net (74.125.132.105): icmp_req=3 ttl=50 time=16.6 ms

    --- www.l.google.com ping statistics ---
    3 packets transmitted, 3 received, 0% packet loss, time 2003ms
    rtt min/avg/max/mdev = 16.660/17.320/18.254/0.678 ms

`ping: unknown host` のエラーが出た場合は下に記述されている方法を試して手動で接続をセットアップする必要があります。

ネットワークに接続されていたら、ドライブの準備へ進んでください。

#### 有線

もしあなたが固定 IP アドレスを使用して有線の接続をセットアップする場合は次の手順に従ってください。

まず、起動時に自動的に起動する dhcpcd サービスを無効にして下さい:

Note: このサービスは `dhcpcd@your_ethernet_interface.service` (例: `dhcpcd@enp0s25.service`) というような別の名前になっていることがあります。`systemctl stop dhcpcd` まで入力した後 `Tab` を2回押して正しい名前を選択してください。

    # systemctl stop dhcpcd.service

あなたのイーサネットインターフェースの名前を確かめて下さい。

    # ip link

    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    2: enp2s0f0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT qlen 1000
        link/ether 00:11:25:31:69:20 brd ff:ff:ff:ff:ff:ff
    3: wlp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT qlen 1000
        link/ether 01:02:03:04:05:06 brd ff:ff:ff:ff:ff:ff

上の場合、イーサネットインターフェースは `enp2s0f0` です。よくわからない場合、あなたのイーサネットインターフェースは "e" から始まっているものだと思われます。"w" で始まっているものや "lo" ではないということです。

また、あなたは以下の設定を知っている必要があります:

- 固定 IP アドレス
- CIDR ブロックのサブネットマスク。例えば `255.255.255.0` ネットマスクの CIDR ブロックは `/24` です。
- ゲートウェイの IP アドレス
- ネームサーバー (DNS) の IP アドレス
- ドメインの名前(ローカル LAN でない場合)

接続に使用するインターフェースを有効化します。例: `enp2s0f0`

    # ip link set enp2s0f0 up

IP アドレスを設定します。

    # ip addr add ip_address/mask_bits dev interface_name

例:

    # ip addr add 192.168.1.2/24 dev enp2s0f0

他のオプションについては `man ip` を見て下さい。

ゲートウェイをこのように追加します。自分のゲートウェイの IP アドレスに置き換えてください。

    # ip route add default via <ip address>

例:

    # ip route add default via 192.168.1.1

`resolv.conf` を編集します。自分のネームサーバーの IP アドレスと自分のローカルのドメインに置き換えてください。

    # nano /etc/resolv.conf

    nameserver 61.23.173.5
    nameserver 61.95.849.8
    search example.com

Note: 現在、`nameserver` の行は最大で3つまで含めることができます。この制限を越えるために、dnsmasq などのローカルキャッシュネームサーバを使うことができます。

これでネットワーク接続は有効になるはずです。ならない場合、ネットワーク設定を確認してください。

#### 無線

インストール中にワイヤレス接続(Wi-Fi)をセットアップする必要がある場合は以下の手順に従ってください。

まず、あなたのイーサネットインターフェースの名前を確かめて下さい。

    # iw dev

    phy#0
            Interface wlp3s0
                    ifindex 3
                    wdev 0x1
                    addr 00:11:22:33:44:55
                    type managed

上の例では、`wlp3s0` が有効なワイヤレスインターフェースです。どれかわからないときは、おそらく "w" から始まるのがあなたのワイヤレスインターフェースです。"lo" や "e" から始まるインターフェースは違います。

Note: このように出力されない場合、無線ドライバがロードされていません。その場合は、手動でドライバをロードする必要があります。詳しくはワイヤレス設定を見て下さい。

次に、netctl の `wifi-menu` を使いネットワークに接続します。`wlp3s0` はあなたのインターフェイスの名前に置き換えて下さい:

    # wifi-menu wlp3s0

これでネットワークは有効になるはずです。接続されないときは、ワイヤレス設定のページを確認してください。

##### wifi-menu を使わない方法

インターフェースを立ち上げます:

    # ip link set wlp3s0 up

インターフェイスが立ち上がっているか確認するには、次のコマンドの出力を見て下さい:

    # ip link show wlp3s0

    3: wlp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state DOWN mode DORMANT group default qlen 1000
        link/ether 00:11:22:33:44:55 brd ff:ff:ff:ff:ff:ff

`<BROADCAST,MULTICAST,UP,LOWER_UP>` の中にある `UP` がインターフェイスが立ち上がっている印です。後ろの `state DOWN` は違います。

ほとんどのワイヤレスチップセットには、対応するドライバに加えて、ファームウェアが必要です。カーネルが自動で検知してロードを試みます。`SIOCSIFFLAGS: No such file or directory` のようなエラーが出た場合、ファームウェアを手動でロードする必要があることを意味しています。必要なファームウェアがわからないときは、`dmesg` を使いカーネルログからワイヤレスチップセットのファームウェア要求をさがします。例えば、カーネルの起動時に Intel チップセットが出力するファームウェア要求の例:

    # dmesg | grep firmware

    firmware: requesting iwlwifi-5000-1.ucode

なにも表示されないなら、あなたのワイヤレスチップセットにはファームウェアが要らないと判断できます。

Warning: (カードの) ワイヤレスチップセットファームウェアのパッケージは (CD・USB スティックの) ライブ環境の `/usr/lib/firmware` の下にインストール済みですが、再起動後にも無線を使うためには、システムにそれをインストールしなくてはなりません！パッケージのインストールはガイドの後ろで触れています。再起動する前にワイヤレスモジュール・ファームウェアをインストールすることを覚えていてください。もしあなたのチップセットがファームウェアのインストールを必要としているか不明な場合はワイヤレス設定を見て下さい。

`iw dev wlp3s0 scan | grep SSID` を使って利用可能なネットワークをスキャンして、それからネットワークに接続してください:

    # wpa_supplicant -B -i wlp3s0 -c <(wpa_passphrase "ssid" "psk")

ssid はネットワークの名前に (例: "Linksys etc...")、psk はパスワードに置き換える必要があります (ネットワークの名前とパスワードを囲っているダブルクォートは消さないで下さい, 例: ネットワークのパスワードが dog の場合、"dog" と入力)。

最後に、インターフェースに IP アドレスを与える必要があります。手動で設定するか dhcp を使ってこれを行なって下さい:

    # dhcpcd wlp3s0

上のコマンドでうまくいかない場合、以下のコマンドを実行してください:

    # echo 'ctrl_interface=DIR=/run/wpa_supplicant' > /etc/wpa_supplicant.conf
    # wpa_passphrase <ssid> <passphrase> >> /etc/wpa_supplicant.conf
    # ip link set <interface> up # May not be needed, but does no harm in any case
    # wpa_supplicant -B -D nl80211 -c /etc/wpa_supplicant.conf -i <interface name>
    # dhcpcd -A <interface name>

wpa_supplicant がドライバーがサポートされていないとエラーを出力する場合は、`-D nl80211` パラメータを省いてみて下さい:

    # wpa_supplicant -B -c /etc/wpa_supplicant.conf -i <interface name>

#### アナログモデム, ISDN, PPPoE DSL

xDSL・ダイアルアップ・ISDN接続については、Direct Modem Connection を見て下さい。

#### プロクシサーバを使う

プロクシサーバを使うには、`http_proxy` , `ftp_proxy` 環境変数を設定しなくてはなりません。 詳しい情報はプロクシ設定を見て下さい。

### ドライブの準備

Warning: パーティショニングはデータを破壊することもあります。実施する前に、重要なデータをバックアップすることを強く推奨します。
Note: USB フラッシュキーにインストールする場合は、Installing Arch Linux on a USB key を見て下さい。
Tip: LVM, ディスク暗号化, RAID などのスタックブロックデバイスを作成したい場合は、この段階で行います。

#### パーティションテーブルのタイプの選択

Note: 同じディスクで Arch と Windows をデュアルブートする場合、ディスクにインストールした Windows で使用されているのと同じファームウェアブートモードとパーティショニングの組み合わせに従って下さい。そうしないと Windows が起動しなくなります。詳しくは Windows と Arch のデュアルブート#重要な情報 を見て下さい。

GUID Partition Table (GPT) と Master Boot Record (MBR) のどちらかを選ぶ必要があります。GPT のほうが新しく、新しくインストールする場合に推奨されます。パーティショニング#GPT か MBR の選択 も参照してください。

- UEFI ブートでは GPT を使うことが常に推奨されます、UEFI ファームウェアによっては UEFI-MBR ブートができないからです。
- いくつかの BIOS システムでは GPT を選ぶと問題が発生することがあります。詳しい情報と回避方法は http://mjg59.dreamwidth.org/8035.html や http://rodsbooks.com/gdisk/bios.html にあります。

#### パーティションツール

全くの初心者はグラフィカルなパーティショニングツールを使うことが推奨されます。よく使われるものに GParted があり、"ライブ" CD が利用可能です。GParted は Ubuntu , Linux Mint のような Linux ディストリビューションのライブ CD にも含まれています。ドライブを利用するにはまずパーティションし、再起動前にファイルシステムでフォーマットしなくてはなりません。

Tip: Gparted を使う場合、デフォルトでは新しいパーティションテーブルを作成するオプションを選ぶと "msdos" パーティションテーブルが作られます。GPT パーティションテーブルを作成するときは、「高度な設定」を選びドロップダウンメニューから "gpt" を選択してください。

gparted はずっと使いやすいですが、新しいディスクにパーティションを少しだけ作成したい場合は、インストールメディアに含まれている fdisk のバリアントの一つを使えば素早くパーティションが作れます。gdisk と fdisk 両方の簡単な使用方法があります。

#### パーティションテーブルを消去する

既存のパーティションを維持しないで、全てを初めからやりたい場合、次のコマンドでパーティションテーブルを消去することが可能です。消去することで新しいパーティションの作成が簡単になり、MBR から GPT へのディスクの変換などの問題を回避できます。

    # sgdisk --zap-all /dev/sda

#### パーティションスキーム

ディスクをいくつのパーティションに分けるか決めて、それぞれのパーティションにシステム上のディレクトリを割り振ることができます。パーティションからディレクトリへのマッピング (しばしば 'マウントポイント' と呼ばれます) がパーティションスキームになります。一番シンプルで、かつ悪くない選択肢は、ひとつの大きな `/` パーティションしか作成しないことです。また、`/` に加えて `/home` パーティションを作ることもよく行われます。

追加の必要パーティション:

- UEFI マザーボードを使っている場合、特別な UEFI System Partition (約 1GiB を推奨) を作成する必要があります。
- BIOS マザーボードを使っている場合 (もしくは BIOS 互換モードで起動する場合) で GPT でパーティションされたドライブに GRUB をセットアップするには、特別な BIOS Boot Partition (容量 1 または 2 MiB, タイプコード `EF02`) を作成する必要があります。Syslinux では必要ありません。
- システムのディスク暗号化をする必要がある場合、パーティションスキームに反映しなくてはなりません。システムをインストールした後に暗号化したフォルダ・コンテナや home ディレクトリを追加するのが簡単です。
- ext4 以外のファイルシステム (F2fs など) を root ファイルシステムに使うつもりならば、まず GRUB がファイルシステムをサポートしているか確認する必要があります。もしサポートされていない場合 GRUB と互換のあるパーティション (ext4 など) を作成して、それを `/boot` に使わなくてはなりません。

スワップパーティションやスワップファイルを設定したいのならスワップを参照してください。スワップはインストール後いつでも作成でき、スワップファイルはスワップパーティションよりリサイズが簡単です。ただし Btrfs ではスワップファイルは使うことができません。

すでにパーティションを作成済みならば、ファイルシステムの作成に進んで下さい。

そうでなければ、次のサンプルを読んでください。

#### サンプル

Arch Linux インストールメディアは次のパーティショニングツールを含んでいます: `fdisk`, `gdisk`, `cfdisk`, `cgdisk`, `parted`。

Tip: システムに接続されているハードディスクと既存のパーティションのサイズを一覧するには `lsblk` コマンドを使って下さい。正しいディスクをパーティションしているか確かめるのに役立ちます。ラベルや UUID、ファイルシステムのタイプなどの追加的な情報は `lsblk -f` で見れます。

この例ではシステムに 15 GB の root パーティションと 残りスペース全ての home パーティションを作ります。MBR か GPT どちらかを選んで下さい。

パーティショニングの設定は人それぞれのもので、この例は具体的な説明のためだけにあります。パーティショニングを見て下さい。

##### cgdisk を使って GPT パーティションを作成する

cgdisk を起動します:

    # cgdisk /dev/sda

Root

- New を選択 (もしくは `N` キーを押す) – `Enter` で最初のセクタ (2048) – `15G` と入力 – `Enter` でデフォルトのヘックスコード (8300) – `Enter` で空のパーティション名。

Home

- ↓を押してフリースペース (Free Space) まで移動。
- New を選択 (もしくは `N` キーを押す) – `Enter` で最初のセクタ – `Enter` でドライブの残りを利用 (もしくは好きなサイズを入力、例: `30G`) – `Enter` でデフォルトのヘックスコード (8300) – `Enter` で空のパーティション名。

こんな感じになるはずです:

    Part. #     Size        Partition Type            Partition Name
    ----------------------------------------------------------------
                1007.0 KiB  free space
       1        15.0 GiB    Linux filesystem
       2        123.45 GiB  Linux filesystem

次に進む前に、よく再点検してパーティションサイズとテーブルレイアウトが好ましくなっているか確認してください。

やり直したい時は、Quit を選び(もしくは `Q` キーを押して)、保存せずに終了して cgdisk をもういちど起動してください。

満足したら、Write を選び (もしくは `Shift+W` を押して)、ファイナライズしてドライブにパーティションテーブルを書き込みます。`yes` と入力して Quit を選び (もしくは`Q` キーを押して)、これ以上変更を加えずに終了します。

##### fdisk を使って MBR パーティションを作成する

Note: cgdisk と UI が似ている cfdisk もありますが、cfdisk は最初のパーティションを自動的に正しく整列させません。そのためここでは古典的な fdisk ツールを使います。

fdisk を起動してください:

    # fdisk /dev/sda

パーティションテーブルを作成:

- `Command (m for help):` `o` と入力して `Enter` を押す

まず最初のパーティションを作成:

1. `Command (m for help):` `n` と入力して `Enter` を押す
2. Partition type: `Select (default p):` `Enter` を押す
3. `Partition number (1-4, default 1):` `Enter` を押す
4. `First sector (2048-209715199, default 2048):` `Enter` を押す
5. `Last sector, +sectors or +size{K,M,G,T,P} (2048-209715199....., default 209715199):` `+15G` と入力して `Enter` を押す

次に二番目のパーティションを作成:

1. `Command (m for help):` `n` と入力して `Enter` を押す
2. Partition type: `Select (default p):` `Enter` を押す
3. `Partition number (1-4, default 2):` `Enter` を押す
4. `First sector (31459328-209715199, default 31459328):` `Enter` を押す
5. `Last sector, +sectors or +size{K,M,G,T,P} (31459328-209715199....., default 209715199):` `Enter` を押す

新しいパーティションテーブルのプレビューを見て下さい:

- `Command (m for help):` `p` と入力して `Enter` を押す

    Disk /dev/sda: 107.4 GB, 107374182400 bytes, 209715200 sectors
    Units = sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x5698d902

       Device Boot     Start         End     Blocks   Id  System
    /dev/sda1           2048    31459327   15728640   83   Linux
    /dev/sda2       31459328   209715199   89127936   83   Linux

それから変更をディスクに書き込んで下さい:

- `Command (m for help):` `w` と入力して `Enter` を押す

全てがうまくいくと、fdisk は以下のメッセージを表示して終了します:

    The partition table has been altered!

    Calling ioctl() to re-read partition table.
    Syncing disks.

エラーが発生して fdisk がうまくいかない場合は、`q` コマンドを使って終了できます。

#### ファイルシステムの作成

パーティショニングはまだ終わっていません。パーティションにはファイルシステムが必要です。ext4 ファイルシステムでパーティションをフォーマットするには:

Warning: フォーマットするのが `/dev/sda1` と `/dev/sda2` であるか、再確認・再々確認してください。`lsblk` を使って確かめられます。

    # mkfs.ext4 /dev/sda1
    # mkfs.ext4 /dev/sda2

swap (コード 82) 用のパーティションを作った時は忘れずにフォーマットして有効にして下さい:

    # mkswap /dev/sdaX
    # swapon /dev/sdaX

UEFI では、EFI System Partition (例えば /dev/sdXY) をフォーマットする必要があります:

    # mkfs.fat -F32 /dev/sdXY

Note: GUID Partition Table を使用して BIOS 環境で GRUB を使用するときは、BIOS Boot Partition と `/boot` マウントポイントは関係ないので注意してください。BIOS Boot Partition は GRUB によって直接使われます。BIOS Boot Partition にファイルシステムを作成したり、次のステップでマウントしたりしないで下さい。

### パーティションのマウント

パーティションにはそれぞれ番号がふられます。たとえば、`sda1` は最初のドライブの最初のパーティションを指定し、一方 `sda` は全てのドライブを指定します。

現在のパーティションレイアウトを表示:

    # lsblk -f

Note: 注意ぶかくみてください、マウントの順番は重要です。複数のパーティションを同じディレクトリにマウントしてはいけません。

まず、 root パーティションを `/mnt` にマウントします。前記の例にあわせるとこうなります(あなたのは違うかもしれません):

    # mount /dev/sda1 /mnt

それから `/home` パーティションと、必要なら他の分割パーティション (`/boot`, `/var`, etc) をマウントします：

    # mkdir /mnt/home
    # mount /dev/sda2 /mnt/home

UEFI マザーボードを使っているときは、EFI システムパーティションを `/boot` にマウントしてください。他のマウントポイントを使うこともできますが、EFISTUB で説明されているように `/boot` が推奨です:

    # mkdir /mnt/boot
    # mount /dev/sdXY /mnt/boot

### ミラーの選択

インストールの前に、`mirrorlist` ファイルを編集し、好みのミラーを一番上に置きましょう。このファイルのコピーが `pacstrap` によってインストールされ、新しいシステム上でも選択したミラーが使われます。

    # nano /etc/pacman.d/mirrorlist

    ##
    ## Arch Linux repository mirrorlist
    ## Sorted by mirror score from mirror status page
    ## Generated on YYYY-MM-DD
    ##

    Server = http://ftp.jaist.ac.jp/pub/Linux/ArchLinux/$repo/os/$arch
    ...

- `Alt+6` で `Server` 行をコピー。
- `PageUp` キーで上にスクロール。
- `Ctrl+U` でリストの一番上にペースト。
- `Ctrl+X` で終了、保存するか聞かれたら、`Y` を押し `Enter` で上書き保存。

もし望むなら、他のミラーを消去 (`Ctrl+K` を使う) してミラーをひとつだけに絞ることができます。しかし、一般的には、そのミラーがオフラインになったときのことを考え、ミラーを複数使った方が良いと思われます。

Tip:

- Mirrorlist Generator を使って、あなたの国のアップデータリストを入手できます。keepalive のために、HTTP ミラーのほうが FTP よりも速度が速いです。また FTP では、pacman はパッケージをダウンロードするごとにシグナルを送信しなくてはならないため、短い停止がはさまります。ミラーリストを作る他の方法を見るには、ミラーのソートと Reflector を参照してください。
- Arch Linux MirrorStatus ではミラーの状況、たとえばネットワークエラー、データ収集エラー、最終同期時間などの様々な情報を見ることができます。

Note:

- 将来、ミラーリストを変更したときは必ず、`pacman -Syy` で pacman の全てのパッケージリストを更新することを覚えておいて下さい。これは良い経験則と考えられており、問題の回避につながります。詳しくはミラーを参照。
- 古いインストールメディアを使っている場合、ミラーリストが古くなっているかもしれません。そのために Arch Linux のアップデート時に問題を引き起こす可能性があります。(FS#22510 を参照)。上で述べたようにして最新のミラー情報を入手するべきです。
- pacman がリポジトリのアップデート・同期を行えなくなるネットワーク問題に関して Arch Linux フォーラムで複数の問題が報告されています ([1] や [2] を参照)。ネイティブ環境で Arch Linux をインストールしているなら、これらの問題は標準の pacman ファイルダウンローダを代替ダウンローダに置き換えることで解決できます。(詳しくは Pacman のパフォーマンスを向上させるをチェック)。VirtualBox のゲストOSとして Arch Linux をインストールしているなら、この問題はマシンの設定で "NAT" の代わりに "Host interface" を使うことで回避できます。

### ベースシステムのインストール

pacstrap スクリプトを使ってベースシステムをインストールします。base と base-devel の全てのパッケージをインストールするつもりなら、`-i` スイッチは省いて下さい。

    # pacstrap -i /mnt base base-devel

Note:

- ミラーを正しく設定しているのに、pacstrap が `error: failed retrieving file 'core.db' from mirror... : Connection time-out` で止まる場合は、他のネームサーバを設定してみてください。
- ベースパッケージのインストール中に PGP キーをインポートをリクエストされたら、キーのダウンロードを承認して先に進んで下さい。これは古い Arch ISO を使っているときに発生します。PGP 鍵を追加できないときは、次のようにして archlinux-keyring パッケージを更新してみてください: `pacman -S archlinux-keyring`。
- pacman がパッケージの検証に失敗するときは、`Ctrl+C` で処理を中止して `cal` でシステム時刻を確認してください。システム時刻がおかしい場合(例えば2010年の日付を表示するなど)、署名キーが期限切れ(もしくは無効)と判断され、パッケージの署名チェックが失敗しインストールが中断されます。`ntpd -qg` コマンドを使ってシステム時刻を直してから、pacstrap コマンドを再度実行してください。時刻のページに時刻修正の詳しい情報があります。
- pacman が `error: failed to commit transaction (invalid or corrupted package)` と表示する場合は、以下のコマンドを実行してください: `# pacman-key --init && pacman-key --populate archlinux`。

- base: [core] リポジトリからのソフトウェアパッケージで、最小ベース環境を構築します。

- base-devel: [core] からの `make` や `automake` などの追加ツールです。初心者は基本的にインストールするべきで、システムを拡張するのに必要になります。base-devel グループは Arch User Repository からソフトウェアをインストールする際に必要です。

ここではベースの Arch システムを作ります。他のパッケージは後で pacman を使ってインストールできます。

### fstab の生成

以下のコマンドで fstab ファイルを生成します。アドバンテージのある UUID が使われます。(fstab#ファイルシステムの識別 を見て下さい)。代わりのラベルを使いたいならば、`-U` オプションを `-L` に置き換えましょう。

    # genfstab -U -p /mnt >> /mnt/etc/fstab
    # nano /mnt/etc/fstab

Warning: 生成したあとは必ず `fstab` をチェックしましょう。genfstab や後のインストール作業中にエラーが起こっても、もう一度 genfstab を使用しないでください。`fstab` ファイルを編集して下さい。

考察事項:

- 最後のフィールドには起動時にチェックするパーティションの順番を設定します: (`btrfs` 以外では) root パーティションに `1` を使って下さい、最初にチェックされます; 起動時にチェックしたい他のパーティションには `2` を使って下さい、`0` はチェックされません (fstab#フィールドの定義を参照)。
- btrfs のパーティションには全て `0` を使う必要があります。通常、swap パーティションも `0` を設定するはずです。

### Chroot とベースシステムの設定

次に、chroot を使って新しくインストールされたシステムに入ります:

    # arch-chroot /mnt /bin/bash

Note: sh シェルに chroot する場合は `/bin/bash` を取って下さい。

この段階では、Arch Linux ベースシステムの重要な設定ファイルを作ります。ファイルが存在していないときや、デフォルト設定を使いたくないときは、その都度ファイルを作成したり編集してください。

正確に、手順をよく踏まえてから設定してください。システムを正しく設定するためにとても重要です。

#### Locale

Locale を設定することによって、glibc やその他の locale を使うプログラムやライブラリで、テキストのレンダリング、正しい通貨単位の表示、時間と月日のフォーマット、アルファベットの特有表現、地域特有の単位の表示などができるようになります。

2つのファイルを編集する必要があります: `locale.gen` と `locale.conf`。

- `locale.gen` ファイルはデフォルトでは空です(全てコメントアウトされています)ので必要な行の前の `#` を削除してください。English (US) の行だけでなく、あなたが選んだ `UTF-8` エンコードの分だけ削除してください:

    # nano /etc/locale.gen

    en_US.UTF-8 UTF-8
    ja_JP.UTF-8 UTF-8

    # locale-gen

locale-gen は glibc のアップグレード毎に実行され、`/etc/locale.gen` で示された locale を生成します。

- `locale.conf` ファイルはデフォルトで存在しません。他の全ての変数のデフォルト値として扱われる `LANG` のみ設定すれば十分で、次のコマンドでロケールを設定できます。`LANG` 変数に指定するロケールは `/etc/locale.gen` でアンコメントされている必要があります。

    # echo LANG=en_US.UTF-8 > /etc/locale.conf
    # export LANG=en_US.UTF-8

Warning: コンソールでは日本語は文字化けします。GUI 環境を設定してから以下で `locale.conf` を設定するといいでしょう。

    # echo LANG=ja_JP.UTF-8 > /etc/locale.conf
    # export LANG=ja_JP.UTF-8

また、日本語を表示するために X をインストールした後に日本語のフォントをインストールしましょう。

他の `LC_*` 変数を使いたいときは、まず `locale` を実行してオプションを確認し、`locale.conf` に追加してください。`LC_ALL` 変数を使うことは推奨されません。詳しくは ロケール#システム全体のロケールを設定する を参照してください。

#### コンソールフォントとキーマップ

インストールの最初にキーマップをセットした場合、今ロードしてください、なぜなら環境が変わったからです。例えば:

    # loadkeys jp106
    # setfont Lat2-Terminus16

再起動後もキーマップ設定を持続させるために、`vconsole.conf` を編集 (ファイルがなかったら作成してください):

    # nano /etc/vconsole.conf

    KEYMAP=jp106
    FONT=Lat2-Terminus16

- `KEYMAP` – この設定は TTY でのみ有効で、グラフィカルウィンドウマネージャや Xorg では使われません。

- `FONT` – 利用可能なコンソールフォントは `/usr/share/kbd/consolefonts/` にあります。デフォルト(空)でも問題ありませんが、いくつかの言語の文字が四角になったり他の文字になったりするかもしれません。`Lat2-Terminus16` に変えることが推奨されます。`/usr/share/kbd/consolefonts/README.Lat2-Terminus16` によれば、"約100個の言語セット"をサポートしています。

- (オプション) `FONT_MAP` – 起動時にロードするコンソールマップを定義します。`man setfont` を読んで下さい。削除したり、空のままでも問題ありません。

詳しくはコンソールフォントや `man vconsole.conf` を参照。

#### タイムゾーン

利用可能なタイムゾーンとサブゾーンは `/usr/share/zoneinfo/<Zone>/<SubZone>` ディレクトリで見つかります。

<Zone> 一覧を見るために、 `/usr/share/zoneinfo/` ディレクトリをチェックしてください:

    # ls /usr/share/zoneinfo/

同じように、<SubZone> にあるディレクトリの一覧を見ることができます:

    # ls /usr/share/zoneinfo/Asia

`/etc/localtime` からゾーンファイル `/usr/share/zoneinfo/<Zone>/<SubZone>` へのシンボリックリンクを作るにはこのコマンドを使います:

    # ln -s /usr/share/zoneinfo/<Zone>/<SubZone> /etc/localtime

例:

    # ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime

Note: `ln: failed to create symbolic link '/etc/localtime': File exists` と表示される場合は、`ls -l /etc/localtime` でファイルが存在するか確認してから、ln コマンドに `-f` オプションを追加して上書きしてください。

#### ハードウェアクロック

ハードウェアクロックモードを OS 間で均一に設定します。さもないと、ハードウェアクロックが上書きされ時刻がずれることがあります。

次のコマンドのうちのどれかで `/etc/adjtime` を自動生成できます:

- UTC (推奨)

  Note: ハードウェアクロックに UTC を使ったからといって、ソフトウェアが時刻を UTC で表示するわけではありません。

      # hwclock --systohc --utc

インターネットを使って "UTC" 時刻を同期する方法は NTPd を見て下さい。

- localtime (非推奨; Windows でのデフォルト)

  Warning: localtimeを使うと既知の、容易に修復できないバグを引き起こす可能性があります。しかしながら、localtime のサポートを終了する計画はありません。

      # hwclock --systohc --localtime

#### カーネルモジュール

Tip: これはただの例です、このように設定する必要はありません。全ての必要なモジュールは udev により自動でロードされます、あなたが付け加えなくてはならない状況はほとんどありません。足りないモジュールだけを加えて下さい。

起動中にカーネルモジュールをロードするには、`/etc/modules-load.d/` に、プラグラムに基づいた名前の `*.conf` ファイルを設置します。

    # nano /etc/modules-load.d/virtio-net.conf

    # Load 'virtio-net.ko' at boot.

    virtio-net

ひとつの `*.conf` で複数のモジュールをロードする際には、モジュールの名前を新しい行で分割できます。好例は VirtualBox Guest Additions です。

空の行や、 `#` 又は `;` で始まっている行は無視されます。

#### ホストネーム

お好きな名前をホスト名に設定してください (例えば arch):

    # echo myhostname > /etc/hostname

同じホスト名を `/etc/hosts` に追加します:

    # nano /etc/hosts

    #
    # /etc/hosts: static lookup table for host names
    #

    #<ip-address>	<hostname.domain.org>	<hostname>
    127.0.0.1	localhost.localdomain	localhost myhostname
    ::1		localhost.localdomain	localhost myhostname

    # End of file

### ネットワークの設定

ネットワークの設定をもう一度行います。今回は新しいインストールされた環境のために行います。以前に説明したのと方法はほとんど同じですが、設定を永続させて、起動時に自動的に行うようにします。

まず最初に、`ip link` で接続を設定するネットワークインターフェイスの名前を確認してください。

Note: ネットワーク設定のより詳しい情報は、ネットワーク設定やワイヤレス設定を参照してください。
Warning: インストールの最中には、インターフェースの名前に伝統的な eth* や wlan* が使われていたとしても、udev はこの命名規則を使いません。従って、新しいシステムに起動した時、新しいインターフェースの名前が割り当てられていることに注意してください。全てのネットワークインターフェースを一覧するには `ip link` を実行します。
Note: インターフェースの古い命名規則 (eth* や wlan*) を使いたいときは `/etc/udev/rules.d/80-net-setup-link.rules` に空のファイルを作成してください。これによって `/usr/lib/udev/rules.d` 下の同じ名前のファイルがマスクされます (空のファイルを使う代わりに、`/dev/null` へのシンボリックリンクを使うことでも命名規則を戻せます: `# ln -s /dev/null /etc/udev/rules.d/80-net-setup-link.rules`)。

#### 有線

##### ダイナミック IP

dhcpcd を使う

もし固定された有線ネットワーク接続が１つだけあるのなら、ネットワーク管理サービスを使う必要はなく、単純に `dhcpcd` サービスを有効にするだけです:

    # systemctl enable dhcpcd.service

Note: 上のコマンドが動作しない場合、次のコマンドを使って下さい: `# systemctl enable dhcpcd@interface_name.service`

netctl を使う

`/etc/netctl/examples` からサンプルプロファイルを `/etc/netctl/` にコピーしてください:

    # cd /etc/netctl
    # cp examples/ethernet-dhcp my_network

プロファイルを編集して下さい (`Interface` を `eth0` から `ip link` を実行して表示されるネットワークアダプタ ID に修正する):

    # nano my_network

`my_network` プロファイルを有効にしてください:

    # netctl enable my_network

Note: `Running in chroot, ignoring request.` というメッセージが表示されても、いまのところは無視してください。

netctl-ifplugd を使う

Warning: `netctl enable <profile>` のようにしてプロファイルを有効にする方法とこの方法を一緒に使うことはできません。

もしくは netctl の `netctl-ifplugd`を使って動的な接続を管理することもできます:

ifplugd をインストールしてください、`netctl-ifplugd` を使うために必要なパッケージです:

    # pacman -S ifplugd

そしてインターフェースを有効にしてください:

    # systemctl enable netctl-ifplugd@<interface>.service

Note: netctl には `netctl-auto` もあり、`netctl-ifplugd` と一緒に有線プロファイルを管理するのに使われます。

##### 固定 IP

netctl を使う

`/etc/network.d/examples` から `/etc/netctl` にサンプルプロファイルをコピーします:

    # cd /etc/netctl
    # cp examples/ethernet-static my_network

必要に応じてプロファイルを編集 (`Interface`, `Address`, `Gateway`, `DNS` を修正):

    # nano my_network

- `Address` の中の `/24` は `255.255.255.0` ネットマスクの CIDR notation です。

そして作成したプロファイルを有効にしてください:

    # netctl enable my_network

systemd-networkd を使う

systemd-networkd を参照してください。

#### 無線

Note: あなたの使っているワイヤレスアダプタにファームウェアが必要な時は (上のインターネット接続の確立セクションとここに記述あり)、ファームウェアを含んだパッケージをインストールしてください。ほとんどの場合、linux-firmware パッケージに必要なファームウェアが含まれていますが、機器によっては個別のパッケージにファームウェアが存在します。例えば: `# pacman -S zd1211-firmware`。詳しくはワイヤレス設定を見て下さい。

ネットワークに接続するために iw と wpa_supplicant をインストールしてください:

    # pacman -S iw wpa_supplicant

##### 無線ネットワークの追加

wifi-menu を使う

`wifi-menu` に必要な dialog をインストールしてください:

    # pacman -S dialog

このインストールと再起動が終わった後 `wifi-menu <interface>` (`<interface>` はあなたの無線インターフェースに置き換えてください) でネットワークに接続することができます。

    # wifi-menu <interface>

Warning: `wifi-menu` を使う時は、絶対に chroot を終了して再起動した後にしてください。このコマンドを使って作成されたものが chroot の外で動作させているものと衝突してしまう恐れがあるからです。また、上で書かれているようにテンプレートを使って手動でネットワークプロファイルを設定することもできます、その場合は `wifi-menu` を使うことについての心配はいりません。

手動の netctl プロファイルを使う

ネットワークプロファイルを `/etc/netctl/examples` から `/etc/netctl` にコピーしてください:

    # cd /etc/netctl
    # cp examples/wireless-wpa my_network

接続するネットワークにあわせてプロファイルを編集してください。

    # nano my_network

例えば、無線インターフェースが `wlp3s0` で、ネットワークの名前が `Home Wireless`、パスワードが `caQu3uR`の場合:

    # nano /etc/netctl/wireless-wpa

    Interface=wlp3s0
    ESSID='Home Wireless'
    Key='caQu3uR'

作成したプロファイルがブート毎に実行されるよう有効にしてください:

    # netctl enable my_network

##### 既知のネットワークに自動で接続する

Warning: `netctl enable <profile>` のようにしてプロファイルを有効にする方法とこの方法を一緒に使うことはできません。

`netctl-auto` に必要な wpa_actiond をインストールしてください:

    # pacman -S wpa_actiond

`netctl-auto` サービスを有効にすれば、既知のネットワークに接続しローミングや切断を管理します:

    # systemctl enable netctl-auto@interface_name.service

Note: netctl には `netctl-ifplugd` もあり、`netctl-auto` と一緒に有線プロファイルを管理するのに使われます。

#### xDSL (PPPoE), アナログモデム, ISDN

xDSL、ダイアルアップ・ISDN 接続は、Direct Modem Connection を見て下さい。

### pacman の設定

Pacman は Arch Linux のパッケージマネージャ (package manager) です。使い方を学んで利用することが薦められています。`man pacman` を読んだり pacman の記事を見て下さい、または Pacman Rosetta ページに書かれている、他の有名なパッケージマネージャとの比較を見てください。

リポジトリの選択と pacman の設定には、`pacman.conf` を編集します:

    # nano /etc/pacman.conf

殆どの人々が使うのは `[core]`, `[extra]`, `[community]` です。

Arch Linux x86_64 をインストールしたのなら、`[multilib]` リポジトリも有効にするのをおすすめします (32 bit と 64 bit 両方のアプリケーションを動かせるようになります):

Note: リポジトリを選択するとき、以下の行だけでなく `[repo_name]` 行の頭のコメントも外して下さい。これを忘れると選択したリポジトリが使われません！よくあるミスです。

    [multilib]
    SigLevel = PackageRequired
    Include = /etc/pacman.d/mirrorlist

ファイルを編集した後 `pacman` に `-Sy` スイッチをつけて起動してパッケージリストを更新する必要があります。していないと、次に pacman を使った時に `warning: database file for 'multilib' does not exist` エラーがでます。

詳しくは公式リポジトリを参照してください、それぞれのリポジトリの目的の詳細もあります。

pacman では直接入手できないソフトウェアについては、Arch User Repository を見て下さい。

### Initial ramdisk 環境の作成

Tip: ほとんどのユーザーはこの手順をスキップし、`mkinitcpio.conf` のデフォルト設定を使って問題ありません。initramfs イメージ (`/boot` フォルダ内) は `pacstrap` によって linux パッケージ (Linux カーネル) をインストールしたときに、`mkinitcpio.conf` に基づいて既に生成されています。

root が USB ドライブにあったり、RAID や LVM を使っていたり、`/usr` が分割されたパーティション上にある場合は、ここで正しい hooks を設定しなくてはなりません。

必要に応じて `/etc/mkinitcpio.conf` を編集し、initramfs イメージを再形成します:

    # mkinitcpio -p linux

Note: Arch を QEMU 上の VPS にインストールする場合 (例: `virt-manager` を使う場合) 起動するために `mkinitcpio.conf` 内に `virtio` モジュールが必要かもしれません。

    # nano /etc/mkinitcpio.conf

    MODULES="virtio virtio_blk virtio_pci virtio_net"

### root パスワードの設定

root パスワードを設定します:

    # passwd

### ブートローダのインストールと設定

Intel の CPU を使用している場合、ブートローダーにマイクロコードのアップデートの設定をすると良いでしょう (AMD では自動でアップデートされます)。

#### BIOS マザーボード

BIOS システムでは、複数のブートローダが使えます。ブートローダの完全なリストはブートローダーにあります。あなたの都合に合わせてどれか一つを選んで下さい。ここでは、2つのブートローダを例として取り上げます:

- Syslinux は現在 Syslinux がインストールされたパーティションのファイルのみをロードするように制限されています。設定ファイルはわかりやすいものになっています。設定サンプルは Syslinux の記事にあります。

- GRUB はより多くの機能を備えた複雑なブートローダです。設定ファイルはスクリプト言語 (sh) に似ていて、初心者が手動で設定するには難しいかもしれません。自動で設定を生成するのが推奨されます。

##### Syslinux

前にハードディスクで GUID パーティションテーブル (GPT) を使うことを選択した場合は、syslinux のインストールを完了するために gptfdisk パッケージをインストールする必要があります:

    # pacman -S gptfdisk

syslinux パッケージをインストールし、`syslinux-install_update` スクリプトを使って自動的にファイルをインストールし (`-i`)、ブートフラグを設定して (`-a`)、MBR ブートコードをインストールすることで (`-m`)、パーティションを有効化します:

    # pacman -S syslinux
    # syslinux-install_update -iam

`syslinux.cfg` に正しい root パーティションを設定してください。この手順は重要です。間違ったパーティションを指定すると、Arch Linux は起動できなくなります。`/dev/sda3` をあなたの root パーティションにしてください (もしドライブをこの例のようにパーティションしているなら、あなたの root パーティションは `/dev/sda1` です)。

    # nano /boot/syslinux/syslinux.cfg

    ...
    LABEL arch
            ...
            APPEND root=/dev/sda3 rw
            ...
    LABEL archfallback
            ...
            APPEND root=/dev/sda3 rw
            ...

パーティション番号ではなく UUID を追加する場合は `APPEND root=UUID=partition_uuid rw` です。

Syslinux の設定についての詳しい情報は Syslinux を見て下さい。

##### GRUB

grub パッケージをインストールしてから `grub-install` を実行してブートローダをインストールしてください:

    # pacman -S grub
    # grub-install --target=i386-pc --recheck /dev/sda

Note:

- `/dev/sda` はあなたが Arch をインストールしたドライブに書き換えてください。パーティション番号を加えてはいけません (`sdaX` を使ってはいけません)。
- BIOS マザーボード上の GPT によってパーティションされているドライブを使っている場合、"BIOS Boot Partition" が必要です。GPT 特有の手順を参照してください。
- サンプルの `/boot/grub/grub.cfg` は grub パッケージの一部としてインストールされ、後の `grub-*` コマンドでは上書きされません。あなたの変更が `grub.cfg.new` などのファイルではなく `grub.cfg` にあることを確認してください。

次に `grub.cfg` を作ります。手動で作る方が細かい設定ができますが、初心者は自動で生成するのが推奨されています:

Tip: あなたのコンピュータに入っている他の OS を自動で見つけるには、次のコマンドの前に os-prober をインストール (`pacman -S os-prober`) してください。

    # grub-mkconfig -o /boot/grub/grub.cfg

GRUB の使用・設定の詳しい情報は、GRUB2 を参照。

#### UEFI マザーボード

Note: UEFI ファームウェアによってはインストールしたブートローダーの `.efi` ブータブルスタブを特定の名前で特定の場所に配置する必要があります: `$esp/EFI/boot/bootx64.efi` (`$esp` は EFI System Partition のマウントポイントに置き換えて下さい)。これをしていないと場合によっては、インストールした環境を起動できなくなることがあります。詳しくはそれぞれのブートローダーのセクションを見て下さい。

UEFI システムでも、複数のブートローダが使えます。利用できるブートローダの完全なリストは UEFI ブートローダーにあります。あなたの都合にあわせて選んで下さい。ここでは、2つのブートローダを例として提示します:

- gummiboot は最小主義の UEFI ブートマネージャで、EFISTUB カーネルや他の UEFI アプリケーションのためのメニューを提供します。初心者、特に Windows 8 などの別のオペレーティングシステムとデュアルブートをしたいユーザーに推奨です。
- GRUB は完全なブートローダーで、gummiboot で問題が起きた時に役に立ちます。

どちらの方法も選ぶ場合も、インストール後に EFI System Partition を操作するための dosfstools パッケージと、(ブートマネージャのインストールスクリプトで使われる) `.efi` ブータブルスタブを作成するための efibootmgr を最初にインストールします:

    # pacman -S dosfstools efibootmgr

Note: UEFI でブートするには、ドライブは GPT でパーティションされている必要があり、EFI System Partition (512 MiB 以上, FAT32, gdisk タイプ `EF00`) が `/boot` でマウントされていなくてはなりません。このガイドを初めから実行しているのなら、すでに全て行われているはずです。

##### Gummiboot

Note: Gummiboot が自動的にアップデートされるように EFI System Partition は `/boot` にマウントすることを強く推奨します。

gummiboot パッケージをインストールして、`gummiboot install` を実行してブートローダを EFI System Partition にインストールしてください (`$esp` は EFI System Partiton の場所に置き換えて下さい、通常は `/boot` です):

    # pacman -S gummiboot
    # gummiboot --path=$esp install

Gummiboot はファームウェアによって自動で検出され、`bootx64.efi` ブータブルスタブが `$esp/EFI/boot` にあることを必要とします。そして `.efi` スタブを使ってインストールされている別のオペレーティングシステムを自動で検出します。ただし、Gummiboot の設定ファイルは手動で作成する必要があります。

まず、`$esp/loader/entries/arch.conf` を作成して以下を記述します、`/dev/sdaX` は root パーティションに置き換えて下さい (例: `/dev/sda2`):

    # nano $esp/loader/entries/arch.conf

    title          Arch Linux
    linux          /vmlinuz-linux
    initrd         /initramfs-linux.img
    options        root=/dev/sdaX rw

次に、`$esp/loader/loader.conf` を作成して以下を記述します、timeout の値は自由に変更できます (秒数):

    # nano $esp/loader/loader.conf

    default  arch
    timeout  5

Gummiboot の設定と使用方法の詳細は Gummiboot を見て下さい。

##### GRUB

Note: Grub のインストールスクリプトは `grubx64.efi` という名前の `.efi` ブータブルスタブを作成しますが、UEFI ファームウェアによっては検出されないことがあります。このガイドでは (上記で示したように) dosfstools と efibootmgr がインストールされていることを前提にしています。Grub はインストールされている別の UEFI オペレーティングシステムを自動では検出しません。

grub をインストールして grub インストールスクリプトを実行します (`$esp` は EFI System Partiton の場所に置き換えて下さい、通常は `/boot`):

    # pacman -S grub
    # grub-install --target=x86_64-efi --efi-directory=$esp --bootloader-id=arch_grub --recheck

`grubx64.efi` ブータブルスタブが `$esp/EFI/arch_grub` に配置されます。ファームウェアがスタブを検出するかどうかわからなかったり、複数のブートローダーを使わない場合、上記の通り、スタブをデフォルトの場所からコピーして UEFI ファームウェアによって確かに起動できるように名前を変更します:

    # mkdir $esp/EFI/boot
    # cp $esp/EFI/arch_grub/grubx64.efi $esp/EFI/boot/bootx64.efi

次に、`grub.cfg` を作成します。手動で作る方が細かい設定ができますが、初心者は自動で生成するのが推奨されています:

    # grub-mkconfig -o /boot/grub/grub.cfg

GRUB の使用・設定の詳しい情報は、GRUB を参照。

### パーティションのアンマウントと再起動

chroot 環境を脱出します:

    # exit

Note: パーティションは systemd によってシャットダウン時に自動的にアンマウントされますが、安全対策として `umount -R /mnt` を使って手動でアンマウントすることもできます。パーティションがビジー状態の場合、fuser で原因を特定できます。

コンピュータを再起動:

    # reboot

Tip: インストールメディアを取り出してください、そうしないともう一度セットアップが起動してしまいます。マシンにログインするときはユーザー "root" と前に passwd コマンドで設定したパスワードを使います。デフォルトのパスワードは "root" です。

## インストールのその先

あなたの新しい Arch Linux ベースシステムは今、あなたの目的や希望のために必要な全てを入れる準備ができた GNU/Linux になっています。殆どの人は、サウンドとグラフィックをそなえたデスクトップ環境に興味があるでしょう: ガイドのこのパートでは、これらの追加的要素を使うための、簡単な概要を記述します。

### ユーザー管理

ユーザー管理で記述されているようにして必要なユーザーアカウントを追加してください。通常の利用に root アカウントを使ったり、サーバーの SSH から root が見えるのは得策とは言えません。root アカウントは管理業務だけに使われるべきです。Linux 初心者ならば、あなたの新しいシステムに入っているコアユーティリティを知っておくと役に立つかもしれません。

例えば bash をログインシェルに指定して `archie` という名前のユーザーを追加:

    # useradd -m -g users -G wheel -s /bin/bash archie

### パッケージ管理

Pacman が Arch Linux のパッケージマネージャ (package manager) です。pacman (日本語) や FAQ (日本語)#パッケージ管理 を見て、インストール・アップデート・パッケージ管理について学んで下さい。

Arch Linux x86_64 をインストールした場合、32ビットのアプリケーションを使うために [multilib] リポジトリを有効にできます。

それぞれのリポジトリの役割については Official Repositories (日本語) を見て下さい。

### サービス管理

Arch Linux はシステムとサービスの管理に systemd を init として使っています。あなたの Arch Linux をメンテナンスするのに、systemd について基本的なことを知っておくべきです。systemd を使うときには `systemctl` コマンドを使います。 systemd (日本語)#systemctl の基本的な使い方 を読んで下さい。

### サウンド

ALSA は箱から出してすぐ使える状態になっています。アンミュートするだけです。alsa-utils をインストール (`alsamixer` が入っています) してこの記事を読んで下さい。

最初にカーネルに含まれている ALSA を試すことをおすすめします。もし、ALSA が動かないときは OSS を代わりに使うことができます。より上級者向けのオーディオを求めるならば、Sound system (日本語) を見て様々な記事の概要を一読しましょう。

### グラフィカルユーザーインターフェース

#### X のインストール

X Window System (X11 または X) はネットワークとディスプレイのプロトコルであり、ビットマップディスプレイでのウィンドウ環境を提供します。グラフィカルユーザーインターフェース(GUI)を構成するための標準のツールキットとプロトコルが備わっています。

ベースの xorg パッケージのインストール:

    # pacman -S xorg-server xorg-server-utils xorg-xinit

3D サポートのための mesa をインストール:

    # pacman -S mesa

#### ビデオドライバのインストール

Note: Arch を　VirtualBox のゲストとしてインストールしたときは、ビデオドライバのインストールは不要です。ゲストアドインのインストールと設定については Arch Linux guests を見て、このページの下の設定まで進んで下さい。

あなたのマシンにどのビデオ・チップセットが載っているのかわからないときは:

    $ lspci | grep VGA

オープンソース・ビデオドライバ全ての一覧を見るために、パッケージ・データベースを検索:

    $ pacman -Ss xf86-video | less

`vesa` は一般的な mode-setting ドライバです。ほとんどの GPU で動きますが、2D 又は 3D アクセラレーションは全くありません。より良いドライバが見つからなかったり、ロードできなかった場合、Xorg は vesa ドライバに戻ります。インストールするには:

    # pacman -S xf86-video-vesa

GPU が持っているビデオアクセラレーション機能を働かせるには、正しいビデオドライバが必要です。よく使われるビデオドライバーの表がある Xorg (日本語)#ドライバーのインストール を見て下さい。

#### インプットドライバのインストール

Udev が問題なくハードウェアを認識することができるはずです。`evdev` ドライバ (xf86-input-evdev) は近代的なホットプラグ・インプットドライバであり、ほぼ全てのデバイスに対応しているので、ほとんどの場合インプットドライバのインストールは不要です。`evdev` は xorg-server パッケージの依存として既にインストールされているはずです。

ラップトップユーザー（やタッチスクリーンを持っている人）はタッチパッドやタッチスクリーンを動かすのに xf86-input-synaptics パッケージが必要です:

    # pacman -S xf86-input-synaptics

タッチパッドに関するチューニングやトラブルシューティングの解説は、Touchpad Synaptics (日本語) を参照してください。

#### X の設定

Warning: プロプライエタリドライバは通常、インストール後に再起動が必要です。詳しくは NVIDIA や AMD Catalyst を見て下さい。

Xorg が自動検出するので、`xorg.conf` の設定なしでも動作します。手動で X サーバーを設定したいならば、wiki の Xorg のページを読みましょう。

ここで標準の US キーボードを使っていないときは、キーボードレイアウトを設定することができます。

    /etc/X11/xorg.conf.d/10-keyboard.conf

    Section "InputClass"
        Identifier             "Keyboard Defaults"
        MatchIsKeyboard	   "yes"
        Option	           "XkbLayout" "jp"
    EndSection

Note: `XkbLayout` キーは `loadkeys` コマンドで使ったキーマップコードと異なることがあります。多くのキーボードレイアウトと設定項目が `/usr/share/X11/xkb/rules/base.lst` にあります(`! layout` で始まる行から後ろ)。例えば、"English (UK)" に対応したレイアウト `gb` は、コンソールでは `loadkeys uk` でした。

#### X のテスト

Tip: テストは必須ではありません。初めて Arch Linux をインストールしたときや、新しい不慣れなハードウェアにインストールしたときなどにテストすれば十分です。
Note: テストでインプットデバイスが動作しないときは、xorg-drivers グループから必要なドライバをインストールして、再度試して下さい。利用できるインプットドライバの全てのリストは、pacman 検索で入手できます (`Q`を押して終了):

    $ pacman -Ss xf86-input | less

ホットプラグを無効にしたいなら、xf86-input-keyboard と xf86-input-mouse だけが必要です。それらがない場合、`evdev` がインプットドライバとして動作します(推奨)。

デフォルト環境のインストール:

    # pacman -S xorg-twm xorg-xclock xterm

Xorg を非 root ユーザを作る前にインストールしたときは、`.xinitrc` ファイルのテンプレートが home ディレクトリに作られるので、削除するかコメントアウトする必要があります。単純に削除すると、 X は上でインストールしたデフォルト環境で動作します。

    $ rm ~/.xinitrc

Note: logind セッションを保つために、ログイン済みの同じ tty で X を動作させるべきです。デフォルトでは `/etc/X11/xinit/xserverrc` で扱われます。

(テスト) Xorg セッションを起動させましょう:

    $ startx

複数の移動可能なウィンドウが現われ、マウスも動くはずです。X のインストールの成功に満足したら、`exit` コマンドをプロンプトに入力してX を終了できます。

    $ exit

スクリーンが真っ暗になった場合、異なるバーチャルコンソールにスイッチした （例えば `Ctrl+Alt+F2`）、もしくはやみくもに root でログインした可能性があります。同じ事は "root" と入力して (その後 `Enter` を押す)、root パスワードを入力すればできます(同じく、入力後に `Enter`)。

X サーバーをキルしたくなった時は:

    # pkill X

これで終了しないときは、しかたがないので再起動しましょう:

    # reboot

##### トラブルシューティング

問題が発生した時は、`Xorg.0.log` のエラーを見ましょう。エラー(error)をあらわす `(EE)` で始まる行や、他の問題を示すウォーニング(warning)を意味する `(WW)` の行を見て下さい。

    $ grep EE /var/log/Xorg.0.log

Xorg の記事を見た後もトラブルが治らず、Arch Linux フォーラムや IRC チャンネルで助けを求めるときは、wgetpaste をインストールして使うようにしましょう:

    # pacman -S wgetpaste
    $ wgetpaste ~/.xinitrc
    $ wgetpaste /etc/X11/xorg.conf
    $ wgetpaste /var/log/Xorg.0.log

Note: 答えの助けになるように、全ての関係する情報(ハードウェア、ドライバ情報などなど)を提供してください。

#### フォント

初めから入っている、スケールしないビットマップフォントだけでは飽きたらず、TrueType フォントのセットをインストールしたくなったかもしれません。DejaVu はハイクオリティな一般用途向けのフォントセットで、Unicode をほぼカバーしています:

    # pacman -S ttf-dejavu

フォントレンダリングの設定やフォントのインストールについてはフォント設定やフォントを参照してください。

#### グラフィカルインターフェースの選択とインストール

X Window System はグラフィカルユーザーインターフェース (GUI) を作るための標準フレームワークを提供しています。

Note: あなたの DE や　WM を選ぶことは非常に主観的・個人的な決定になります。あなたの要望にあわせて最適の環境を選んでください。自分でアプリケーションと WM を選択して自分自身の DE を作ることも可能です。

- ウィンドウマネージャ (Window Manager,WM) は X Window System と連携してアプリケーション・ウィンドウの配置と外観をコントロールします。

- デスクトップ環境 (Desktop Environment,DE) は X と連携して動作し、機能的で動的な GUI の完全な供給を行います。DE は典型的にウィンドウマネージャ、アイコン、アップレット、ウィンドウ、ツールバー、フォルダー、壁紙、アプリケーション・スイート、ドラッグ・ドロップなどの機能などを持っています。

`xorg-xinit` の `startx` を使って X を起動するのに代わる方法があります。ディスプレイマネージャを使う方法はディスプレイマネージャを見て下さい。既存の仮想端末をディスプレイマネージャとして機能させるには Start X at Login (日本語) を見て下さい。

## 付録

あなたの興味を引くであろうアプリケーションの一覧は、List of Applications (日本語) を参照。

タッチパッドやフォントレンダリングの設定のようなインストール後のチュートリアルは General Recommendations (日本語) を参照。

Categories:

- Getting and installing Arch (日本語)
- About Arch (日本語)