Arch Linux インストール方法を解説


Arch Linux インストール方法 完全詳細解説

はじめに

Arch Linux は、シンプルさ、ミニマリズム、最新のソフトウェア、そして「自分でやる」という哲学を重視する、独立して開発されているLinuxディストリビューションです。ローリングリリースモデルを採用しており、一度インストールすればシステム全体を再インストールすることなく、常に最新の状態に保つことができます。

Arch Linuxのインストールプロセスは、他の一般的なLinuxディストリビューションのようにグラフィカルなインストーラーに頼るのではなく、コマンドラインインターフェース(CLI)を使用して手動で行います。このプロセスは最初は難しく感じるかもしれませんが、システムがどのように構築されているかを深く理解するための貴重な経験となります。この詳細なガイドは、Arch Linuxのインストールを成功させるために必要なすべてのステップを、初心者にも分かりやすく解説することを目的としています。

約5000語という十分なボリュームで、単なるコマンドの羅列に留まらず、各ステップの意図や背景にある技術的な概念についても可能な限り説明を加えます。このガイドを最後まで読み進めれば、Arch Linuxのインストールが完了し、その後の基本的な設定を行うことができるでしょう。

注意: Arch Linuxのインストールは、ディスクの内容を消去したり、パーティション構成を変更したりする操作を伴います。必ず重要なデータのバックアップを取ってから作業を開始してください。 本ガイドに従った結果生じたいかなる損害についても、筆者は責任を負いません。

1. インストール前の準備

Arch Linuxのインストールを開始する前に、いくつかの準備が必要です。

1.1 ハードウェア要件

Arch Linuxは比較的軽量ですが、最新のデスクトップ環境などを利用するには、ある程度のハードウェアリソースが必要です。

  • CPU: x86_64 (64ビット) 互換プロセッサ
  • RAM: 最小 512MB (推奨 2GB以上、特にグラフィカル環境を使う場合)
  • ストレージ: 最小 10GB (推奨 20GB以上、特にグラフィカル環境や開発ツールを使う場合)
  • ネットワーク: インターネット接続 (有線LAN推奨、無線LANも設定可能)

1.2 インストールメディアの作成

Arch Linuxのインストールは、ISOイメージをダウンロードし、それをUSBメモリやDVDに書き込んで起動可能なメディアを作成することから始まります。

  1. ISOイメージのダウンロード:
    公式ウェブサイト (https://archlinux.org/download/) から、最新の archlinux-yyyy.mm.dd-x86_64.iso ファイルをダウンロードします。ダウンロードミラーサイトが複数表示されるので、地理的に近い場所や速度の速いミラーを選択すると良いでしょう。Torrentでのダウンロードも可能です。

  2. ダウンロードしたISOイメージの検証 (推奨):
    ダウンロードしたISOイメージが破損していないか、また改ざんされていないかを確認するために、チェックサム(SHA256など)やGPG署名を検証することが強く推奨されます。ダウンロードページに検証情報が記載されています。

    • チェックサム検証: ダウンロードしたISOファイルと同じディレクトリにある .sha256 ファイルと照合します。
      bash
      sha256sum archlinux-yyyy.mm.dd-x86_64.iso
      # 表示されたハッシュ値が .sha256 ファイルの内容と一致するか確認
    • GPG署名検証: Arch Linuxのマスターキーを使って署名を検証します。まずマスターキーをインポートします。
      bash
      # キーサーバーからインポート
      gpg --keyserver hkps://keyserver.ubuntu.com --recv-key 4073A179C6794975C2B1B30A93C4F317AC27E006
      # インポートしたキーを確認 (必要に応じて)
      gpg --list-keys 4073A179C6794975C2B1B30A93C4F317AC27E006
      # 署名を検証
      gpg --verify archlinux-yyyy.mm.dd-x86_64.iso.sig archlinux-yyyy.mm.dd-x86_64.iso
      # "Good signature" と表示されれば成功

      キーID (4073A179C6794975C2B1B30A93C4F317AC27E006) はArch Linuxの公式ダウンロードページで確認してください。
  3. USBブータブルメディアの作成:
    ダウンロードしたISOイメージをUSBメモリに書き込みます。USBメモリ内のデータはすべて消去されるため、事前に必要なデータがないことを確認してください。最低でも1GB以上の容量が必要です。

    • Linux/macOSの場合 (ddコマンド):
      USBメモリがシステムでどのように認識されているかを確認します (lsblkdf -h を使用)。例えば /dev/sdX (Xはアルファベット、間違えないように注意!) や /dev/diskN とします。間違ったデバイスを指定すると、内蔵ハードディスクのデータが消去されてしまう可能性があります。
      bash
      # USBメモリのデバイス名を確認 (例: /dev/sdb)
      lsblk
      # USBメモリに書き込み (危険な操作です!デバイス名を間違えないでください)
      sudo dd bs=4M if=/path/to/archlinux-yyyy.mm.dd-x86_64.iso of=/dev/sdX status=progress oflag=sync
      # 書き込み完了まで待つ

      /path/to/archlinux-yyyy.mm.dd-x86_64.iso はダウンロードしたISOファイルのパスに置き換えてください。/dev/sdX はあなたのUSBメモリのデバイス名に置き換えてください。絶対に必要な場合を除き、パーティション番号(例: /dev/sdb1)ではなくデバイス全体(例: /dev/sdb)を指定してください。

    • Windowsの場合 (RufusまたはEtcher):

      • Rufus: Windows上でブータブルUSBを作成するための定番ツールです。https://rufus.ie/ からダウンロードし、ISOイメージとUSBメモリを選択して作成を開始します。ISOモードで書き込んでください。
      • Etcher: シンプルでクロスプラットフォームなツールです。https://etcher.balena.io/ からダウンロードし、ISOイメージとUSBメモリを選択して作成を開始します。

1.3 BIOS/UEFI設定と起動

作成したUSBブータブルメディアからコンピュータを起動します。

  1. コンピュータの電源を入れ、起動時にBIOS/UEFI設定画面に入るためのキー(通常は Del, F2, F10, F12, Esc など。PCのマニュアルや起動画面に表示されます)を連打します。
  2. BIOS/UEFI設定画面で、起動順序(Boot Order)またはブートデバイスの選択メニューを見つけます。
  3. 作成したUSBメディアを最初の起動デバイスとして選択し、設定を保存して再起動します。
  4. 正常に起動すれば、Arch Linuxのブートメニューが表示されます。「Arch Linux install medium (x86_64)」のような項目を選択し、Enterキーを押します。

1.4 ライブ環境での初期設定

Arch Linuxのライブ環境が起動すると、ルートユーザーとしてコマンドラインプロンプト(root@archiso ~# のような表示)が表示されます。ここからインストール作業を進めます。

  1. キーボードレイアウトの確認:
    デフォルトでは米語キーボードレイアウトが読み込まれます。日本語キーボードなど、別のレイアウトを使用する場合は変更します。利用可能なレイアウトは localectl list-keymaps で確認できます。
    bash
    # 日本語キーボードレイアウトを読み込む例
    loadkeys jp106
    # 日本語入力が必要な場合は以下も設定 (後述のchroot環境でも同様に設定が必要)
    # export LANG="ja_JP.UTF-8" # 必要に応じて。インストール自体はこれでなくても可能

  2. 起動モードの確認 (UEFIまたはBIOS):
    インストール後の起動ローダー設定に必要なので、現在のライブ環境がUEFIモードで起動しているか、BIOSモードで起動しているかを確認します。
    bash
    ls /sys/firmware/efi/efivars

    このコマンドを実行して、ディレクトリが存在し、その中にファイルが表示されればUEFIモードで起動しています。エラーが表示される場合はBIOSモードで起動しています。

  3. インターネット接続の確認:
    インストールにはインターネット接続が必須です。

    • 有線LAN (Ethernet): 通常、自動的に接続されるはずです。IPアドレスが割り当てられているか確認します。
      bash
      ip a
      # インターフェース名 (例: eth0, enp3s0) にIPアドレスが表示されていればOK

      GoogleなどへPingを打って接続を確認します。
      bash
      ping -c 3 google.com
      # Pingが成功すればOK
    • 無線LAN (Wi-Fi): iwctl (iNet wireless daemon) を使用して接続します。
      “`bash
      iwctl
      # iwctlプロンプトに入ります

      デバイス名を確認 (例: wlan0)

      device list

      ネットワークをスキャン

      station scan

      利用可能なネットワーク一覧を表示

      station get-networks

      ネットワークに接続 (セキュリティの種類に応じてパスワードを求められます)

      station connect

      iwctlプロンプトを終了

      exit
      ``はあなたの無線LANデバイス名 (例:wlan0) に、は接続したいWi-Fiネットワーク名に置き換えてください。接続後、有線LANと同様にping google.comで確認します。iwctl以外にwpa_supplicantなどを使用することも可能ですが、iwctl` が最も簡単です。

  4. システムクロックの更新:
    インストール中にファイルのタイムスタンプなどが正確になるよう、NTP (Network Time Protocol) を利用してシステムクロックを正確に設定します。
    bash
    timedatectl set-ntp true

    ステータスを確認します。
    bash
    timedatectl status
    # NTP service: active が表示されていればOK

2. ディスクのパーティショニング

Arch Linuxをインストールするディスクをどのように分割(パーティショニング)するかを決定し、実行します。このステップは非常に重要であり、ディスク上の既存のデータがすべて消去される可能性があります。

2.1 パーティショニングの基礎知識

  • ディスクデバイス名: Linuxでは、ディスクは /dev/sdX (SATA/SAS/USBなど) や /dev/nvmeXnY (NVMe SSD) のような名前で表されます。XY はアルファベットや数字です。lsblk コマンドで確認できます。パーティションはそれらに番号がついた名前になります (例: /dev/sda1, /dev/nvme0n1p1)。
  • パーティションテーブル: ディスク上にどのようにパーティションが配置されているかの情報です。主に MBR (Master Boot Record)GPT (GUID Partition Table) があります。
    • MBR: 古い方式。最大2TBまでのディスクしか扱えず、プライマリパーティションは最大4つまでという制限があります。BIOSブートシステムでよく使われます。
    • GPT: 新しい方式。2TB以上のディスクも扱え、パーティション数も非常に多く設定できます。UEFIブートシステムで標準的に使われます。現代のシステムではGPTの使用が強く推奨されます。
  • 推奨されるパーティション構成:
    • UEFIシステム (GPT):
      • /dev/sdX1 または /dev/nvme0n1p1: EFI System Partition (ESP) – 起動ローダーを置くパーティション。ファイルシステムは FAT32。サイズは最低 300MB、推奨 512MB。
      • /dev/sdX2 または /dev/nvme0n1p2: Swap Partition – 仮想メモリ(スワップ)領域。ファイルシステムは Linux swap。サイズは物理メモリ(RAM)と同等またはそれ以上が一般的ですが、最近は大容量メモリであればそれほど大きくなくても良い場合が多いです。ノートPCなどでサスペンド(Suspend-to-Disk)を利用する場合は、RAMと同等以上のサイズが必要です。
      • /dev/sdX3 または /dev/nvme0n1p3: Root Partition (/) – OSのシステムファイルやアプリケーションがインストールされるメインのパーティション。ファイルシステムは ext4 が一般的ですが、btrfsやXFSなども選択できます。サイズは必要に応じて大きく取ります(最低 10-15GB、推奨 20GB以上)。
      • /dev/sdX4 または /dev/nvme0n1p4: Home Partition (/home) – ユーザーの個人ファイルや設定ファイルが置かれるパーティション。ファイルシステムは ext4 など。Rootパーティションと分けることで、OSの再インストール時にユーザーデータを保持しやすくなります。必須ではありませんが推奨される構成です。残りのディスク容量を割り当てることが多いです。
    • BIOSシステム (MBR):
      • /dev/sdX1: Root Partition (/) – ext4 など。
      • /dev/sdX2: Swap Partition – Linux swap。
      • /dev/sdX3: Home Partition (/home) – ext4 など (オプション)。

2.2 パーティショニングツールの選択

Linuxにはいくつかのパーティショニングツールがあります。

  • fdisk: MBRパーティションテーブルの操作に強く、GPTも基本的な操作は可能です。シンプルで使いやすいです。
  • parted: MBRおよびGPTパーティションテーブルの操作に優れており、より柔軟な操作が可能です。2TB以上のディスクを扱うにはこちらを使います。
  • gdisk: GPTパーティションテーブル専用のツール。fdisk に似たインターフェースです。
  • cfdisk, sfdisk: 対話的なncursesインターフェースを持つ fdisk の派生ツール。

ここでは、初心者向けに fdisk を使用した GPTパーティション構成 (UEFIシステムを想定) を中心に解説します。BIOSシステムの場合はGPTの代わりにMBR (o コマンド) を使い、ESPパーティションを作成しない、ブートローダーのインストール方法が異なる、といった違いがあります。

2.3 fdisk を使ったパーティショニング (GPT/UEFI向け)

!!! 重要 !!! デバイス名を間違えないでください。この操作はディスク上のデータを消去します。

以下の手順は、ディスク /dev/sdX に対して、ESP(512MB) + Swap(8GB) + Root(30GB) + Home(残り) の4つのパーティションを作成する例です。実際のディスク容量や要件に合わせてサイズを調整してください。

  1. fdisk を起動します。/dev/sdX は対象のディスクデバイス名に置き換えてください (lsblk で確認)。
    bash
    fdisk /dev/sdX
  2. 現在のパーティション構成を確認します (任意)。
    Command (m for help): p
  3. 既存のパーティションをすべて削除します。新しいGPTテーブルを作成するため、既存のパーティションは不要です。d コマンドを使い、パーティション番号を指定して削除を繰り返します。
    Command (m for help): d
    Partition number (1-4, default 4): 1
    # 削除するパーティションがなくなるまで繰り返す
    Command (m for help): d
    ...
  4. 新しいパーティションテーブルとして GPT を作成します。
    Command (m for help): g
    # Creating a new GPT disklabel (GUID Partition Table).
  5. EFI System Partition (ESP) を作成します (約 512MB)。
    Command (m for help): n # 新しいパーティション作成
    Partition number (1-128, default 1): 1 # 1番目のパーティション
    First sector (2048-..., default 2048): # そのままEnter (デフォルト)
    Last sector, +/-sectors or +/-size{K,M,G} (..., default ...): +512M # サイズを指定
    # Created a new partition ...
  6. 作成したパーティションのタイプを EFI System に変更します。
    Command (m for help): t # タイプ変更
    Partition number (1, default 1): 1 # 1番目のパーティション
    Hex code or alias (type L to list all): 1 # "L" で一覧表示し、"EFI System" に対応するコードを確認。通常は 1 です。
    # Changed type of partition 'Linux filesystem' to 'EFI System'.
  7. Swapパーティションを作成します (例: 8GB)。
    Command (m for help): n
    Partition number (2-128, default 2): 2 # 2番目のパーティション
    First sector (...): # そのままEnter (デフォルト)
    Last sector, +/-sectors or +/-size{K,M,G} (...): +8G # サイズを指定
  8. 作成したパーティションのタイプを Linux swap に変更します。
    Command (m for help): t
    Partition number (2, default 2): 2 # 2番目のパーティション
    Hex code or alias (type L to list all): 19 # "L" で一覧表示し、"Linux swap" に対応するコードを確認。通常は 19 (または 8200, Linux swap)。
    # Changed type of partition 'Linux filesystem' to 'Linux swap'.
  9. Rootパーティション (/) を作成します (例: 30GB)。
    Command (m for help): n
    Partition number (3-128, default 3): 3 # 3番目のパーティション
    First sector (...): # そのままEnter (デフォルト)
    Last sector, +/-sectors or +/-size{K,M,G} (...): +30G # サイズを指定

    タイプはデフォルトの Linux filesystem (コード 83) のままでOKです。
  10. Homeパーティション (/home) を作成します (残りの領域)。
    Command (m for help): n
    Partition number (4-128, default 4): 4 # 4番目のパーティション
    First sector (...): # そのままEnter (デフォルト)
    Last sector, +/-sectors or +/-size{K,M,G} (...): # そのままEnter (残りの領域すべて)

    タイプはデフォルトの Linux filesystem (コード 83) のままでOKです。
  11. 作成したパーティション構成を確認します。
    Command (m for help): p
    # Device Start End Sectors Size Type
    # /dev/sdX1 2048 1050623 1048576 512M EFI System
    # /dev/sdX2 1050624 17805311 16754688 8G Linux swap
    # /dev/sdX3 ... 62914560 30G Linux filesystem
    # /dev/sdX4 ... ... ...G Linux filesystem

    デバイス名 (/dev/sdX) とパーティション番号を確認してください。
  12. 変更をディスクに書き込み、fdisk を終了します。 このコマンドを実行すると、変更が確定され、パーティションが作成(および既存のパーティションが削除)されます。
    Command (m for help): w
    # The partition table has been altered.
    # Calling ioctl() to re-read partition table.
    # Syncing disks.

2.4 パーティションのフォーマット

作成したパーティションにファイルシステムを作成します。

!!! 重要 !!! フォーマットするパーティション名を間違えないでください。

  1. EFI System Partition (ESP) をFAT32でフォーマットします。 /dev/sdX1 はあなたのESPパーティションに置き換えてください。
    bash
    mkfs.fat -F 32 /dev/sdX1
  2. Rootパーティション (/) をext4でフォーマットします。 /dev/sdX3 はあなたのRootパーティションに置き換えてください。
    bash
    mkfs.ext4 /dev/sdX3
  3. Homeパーティション (/home) をext4でフォーマットします (オプション)。 /dev/sdX4 はあなたのHomeパーティションに置き換えてください。
    bash
    mkfs.ext4 /dev/sdX4

    /home をRootパーティションに含める場合は、このステップはスキップします。
  4. Swapパーティションを初期化し、有効にします。 /dev/sdX2 はあなたのSwapパーティションに置き換えてください。
    bash
    mkswap /dev/sdX2
    swapon /dev/sdX2

3. システムのインストールと設定

パーティショニングとフォーマットが完了したら、いよいよArch Linuxの基本システムをインストールし、設定を行います。

3.1 ファイルシステムのMounT

新しくフォーマットしたパーティションを、インストール先のルートディレクトリとなる /mnt にマウントします。

  1. Rootパーティション (/) を /mnt にマウントします。 /dev/sdX3 はあなたのRootパーティションに置き換えてください。
    bash
    mount /dev/sdX3 /mnt
  2. Homeパーティション (/home) をマウントします (オプション)。 Rootパーティションとは別に /home パーティションを作成した場合のみ行います。
    まず、Rootパーティション (/mnt) 内に /home ディレクトリを作成し、そこにHomeパーティションをマウントします。/dev/sdX4 はあなたのHomeパーティションに置き換えてください。
    bash
    mkdir /mnt/home
    mount /dev/sdX4 /mnt/home
  3. EFI System Partition (ESP) をマウントします。 EFIパーティションは通常、インストール後のシステムの /boot または /boot/efi にマウントされます。ここでは /mnt/boot/efi にマウントします。/dev/sdX1 はあなたのESPパーティションに置き換えてください。
    bash
    mkdir /mnt/boot/efi
    mount /dev/sdX1 /mnt/boot/efi

    BIOSブートの場合はESPは不要なので、このステップはスキップします。
  4. マウントの状態を確認します。
    bash
    lsblk
    # /dev/sdX3 が /mnt に、/dev/sdX4 が /mnt/home に、/dev/sdX1 が /mnt/boot/efi にマウントされていることを確認

3.2 ミラーリストの選択

pacstrap コマンドでパッケージをダウンロード・インストールする際、利用するミラーサーバーは /etc/pacman.d/mirrorlist ファイルで定義されています。このファイルはライブ環境のものですが、インストール先のシステムにもコピーされ、そこからパッケージがダウンロードされます。速度の速いミラーを上位に配置することで、インストールやその後のシステム更新が高速化されます。

reflector ツールを使って、最新のミラーリストを取得し、速度やプロトコルなどでフィルタリングしてファイルに書き込むのが便利です。

“`bash

日本国内のHTTP/HTTPSミラーから最新リストを取得し、速度順にソートして mirrorlist を生成

reflector –country Japan –protocol http,https –sort rate –save /etc/pacman.d/mirrorlist
``
他の国 (
–country) やプロトコル (–protocol) を指定したい場合は適宜変更してください。ファイル/etc/pacman.d/mirrorlist` を直接編集して手動でミラーの優先順位を変更することも可能です。

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

pacstrap スクリプトを使用して、先ほどマウントした /mnt にArch Linuxのベースシステムおよび必要不可欠なパッケージをインストールします。

bash
pacstrap /mnt base linux linux-firmware

* base: Arch Linuxの最小限の基本パッケージセット。
* linux: 最新のLinuxカーネルパッケージ。
* linux-firmware: 様々なハードウェア用のファームウェア(ドライバの一部)。

必要に応じて、この時点で他の基本的なパッケージも一緒にインストールしておくのが良いでしょう。例えばテキストエディタ (nanovim) やネットワーク管理ツール (networkmanager) などです。
bash
pacstrap /mnt base base-devel linux linux-firmware nano vim networkmanager

base-devel グループには、ソフトウェアのビルドに必要なツールチェーン(gcc, makeなど)が含まれており、AUR (Arch User Repository) を利用する際に便利です。networkmanager はGUI環境などで簡単にネットワーク設定を行うために推奨されます。

このコマンドを実行すると、指定されたパッケージがダウンロードされ、/mnt 以下にインストールされます。インターネット速度によりますが、数分から数十分かかることがあります。

3.4 インストールしたシステムの設定 (arch-chroot)

ベースシステムのインストール後、ライブ環境からインストールしたシステム(/mnt 以下)に環境を切り替えて(chroot して)、システム固有の設定を行います。

bash
arch-chroot /mnt

このコマンドを実行すると、プロンプトが変わり、これ以降のコマンドはインストール先のシステムに対して実行されます。まるでインストール済みのArch Linuxを起動したかのように操作できます。

  1. fstab ファイルの生成:
    fstab (file systems table) ファイル (/etc/fstab) は、システム起動時にどのパーティションをどこにマウントするかを定義するファイルです。genfstab ツールで現在のマウント状態に基づいて自動生成するのが簡単です。-U オプションでUUID (Universally Unique Identifier) を使用すると、ディスクの接続順序が変わっても正しくパーティションを識別できます。
    bash
    genfstab -U /mnt >> /mnt/etc/fstab
    # または、chroot後なら以下
    genfstab -U / >> etc/fstab

    注意: arch-chroot 後はルートディレクトリが /mnt から / に変わるため、パスの指定に注意が必要です。arch-chroot の外から実行する場合は /mnt/etc/fstab にリダイレクトし、arch-chroot の中から実行する場合は /etc/fstab にリダイレクトします。通常は arch-chroot する前に genfstab -U /mnt >> /mnt/etc/fstab を実行します。

    生成された fstab ファイルの内容を確認し、必要に応じて編集します (nano /etc/fstab など)。特に swap エントリが正しく生成されているか確認してください。

  2. タイムゾーンの設定:
    システムのタイムゾーンを設定します。timedatectl list-timezones で利用可能なタイムゾーン一覧を確認できます。日本の場合は Asia/Tokyo です。
    bash
    ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime

    ハードウェアクロック(BIOS/UEFIクロック)をシステムクロックと同期させます。通常はUTCに設定することが推奨されますが、Windowsとのデュアルブートなどで問題が生じる場合はローカルタイムに設定することもあります。ここではUTCに設定する例を示します。
    bash
    hwclock --systohc --utc

  3. ロケールの設定:
    システムが使用する言語や地域に関する設定(ロケール)を行います。これには locale.genlocale.conf の2つのファイルを設定します。

    • /etc/locale.gen を編集します。使用したいロケール(例: ja_JP.UTF-8 UTF-8, en_US.UTF-8 UTF-8)の行の先頭にあるコメント記号 # を削除して有効化します。
      bash
      nano /etc/locale.gen
      # 以下の行を探してコメント解除
      #en_US.UTF-8 UTF-8
      #ja_JP.UTF-8 UTF-8

      編集後、ファイルを保存して閉じます。
    • 設定を反映させます。
      bash
      locale-gen
    • デフォルトのロケールを設定するため、/etc/locale.conf ファイルを作成し、LANG変数を設定します。日本語環境をメインで使う場合は ja_JP.UTF-8 にします。
      bash
      echo "LANG=ja_JP.UTF-8" > /etc/locale.conf
  4. ネットワーク設定:
    インストール直後は、再起動後にネットワークに接続するための設定が必要です。様々な方法がありますが、ここでは一般的な方法として hostname の設定と、インストール時に pacstrapnetworkmanager をインストールした場合の基本的な準備を行います。

    • ホスト名の設定: コンピュータをネットワーク上で識別するための名前(ホスト名)を設定します。/etc/hostname ファイルに任意のホスト名を記述します。
      bash
      echo "myhostname" > /etc/hostname

      myhostname は好きな名前に置き換えてください。
    • hosts ファイルの設定 (オプション): 必要に応じて /etc/hosts ファイルを設定します。ローカルホストの基本的な設定があれば十分です。
      bash
      nano /etc/hosts
      # 以下の内容を追記または確認
      # 127.0.0.1 localhost
      # ::1 localhost
      # 127.0.1.1 myhostname.localdomain myhostname

      myhostname は先ほど設定したホスト名に置き換えてください。
    • ネットワーク管理ツールの有効化準備: networkmanager をインストール済みの場合は、システム起動時に自動で実行されるように設定します。arch-chroot 環境では有効化のコマンドを実行するだけで、実際の起動は再起動後に行われます。
      bash
      systemctl enable NetworkManager

      他のネットワーク設定ツール(例: systemd-networkd, netctl)を使う場合は、それに応じた設定と有効化を行います。
  5. root パスワードの設定:
    システム管理者のパスワードを設定します。システムを起動した際にrootユーザーでログインするために必要です。
    bash
    passwd
    # 新しいパスワードの入力を求められるので、2回入力します。

  6. Initramfs (初期RAMディスク) の生成:
    Initramfsは、実際のルートファイルシステムがマウントされる前に、ハードウェアを初期化したりルートファイルシステムを見つけたりするために一時的にメモリ上で実行される小さなファイルシステムです。mkinitcpio ツールで生成します。通常、linux カーネルパッケージのインストール時に自動的に実行されますが、念のため設定を確認できます。
    設定ファイルは /etc/mkinitcpio.conf です。特別な設定(例: LVM, 暗号化パーティション)をしていない限り、デフォルト設定で問題ありません。
    必要であれば手動で生成します (通常は不要)。
    bash
    mkinitcpio -P

  7. ブートローダーのインストールと設定:
    システム起動時にカーネルをロードするためのブートローダーをインストールします。これは最も重要なステップの一つであり、UEFIシステムかBIOSシステムかで手順が大きく異なります。ここでは一般的な GRUB を使用する方法を中心に解説します。UEFIシステムの場合は systemd-boot も有力な選択肢です。

    • GRUB (UEFIシステムの場合):
      GRUBと、UEFIシステムでブートエントリを管理するための efibootmgr をインストールします。arch-chroot 環境で行います。
      bash
      pacman -S grub efibootmgr

      GRUBをESP (EFI System Partition) にインストールします。/dev/sdX1 はあなたのESPがマウントされている場所 (/boot/efi) に対応するパーティション名に置き換えてください。通常は /boot/efi にマウントしているので、ここではマウントポイントを指定します。--bootloader-id はUEFIメニューに表示される名前です。
      bash
      grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB
      # Successfully installed GRUB to /boot/efi. のようなメッセージが出れば成功

      GRUBの設定ファイルを生成します。
      bash
      grub-mkconfig -o /boot/grub/grub.cfg
      # Generating grub configuration file ... done. のようなメッセージが出れば成功

    • GRUB (BIOSシステムの場合):
      GRUBをインストールします。arch-chroot 環境で行います。
      bash
      pacman -S grub

      GRUBをディスクのMBRにインストールします。/dev/sdXパーティション番号を含めない ディスクデバイス名(例: /dev/sda, /dev/sdb)に置き換えてください。パーティションを指定してしまうと起動不能になります。
      bash
      grub-install --target=i386-pc /dev/sdX
      # Installation finished. No error reported. のようなメッセージが出れば成功

      GRUBの設定ファイルを生成します。
      bash
      grub-mkconfig -o /boot/grub/grub.cfg
      # Generating grub configuration file ... done. のようなメッセージが出れば成功

    • systemd-boot (UEFIシステムの場合 – GRUBの代替):
      シンプルで高速なUEFI専用のブートローダーです。GRUBよりも設定が容易な場合があります。
      まず、ESPが /boot にマウントされていることを確認します。もし /boot/efi にマウントした場合は、umount /boot/efi してから mount /dev/sdX1 /boot のようにマウントし直す必要があります。
      bash
      # ESPを /boot にマウント (必要に応じてマウントし直す)
      umount /boot/efi # もし /boot/efi にマウントしていた場合
      mount /dev/sdX1 /boot # ESPパーティションを /boot にマウント

      ブートローダーファイルをESPにコピーします。
      bash
      bootctl install
      # Installed systemd-boot.
      # Press Enter to continue.

      ブートエントリを設定します。/boot/loader/loader.conf および /boot/loader/entries/ 以下に設定ファイルを作成します。
      /boot/loader/loader.conf を編集します (存在しない場合は新規作成)。
      bash
      nano /boot/loader/loader.conf
      # 以下を記述または追記
      # timeout 3
      # default arch
      # editor no

      /boot/loader/entries/arch.conf を作成し、以下の内容を記述します。root=UUID=YOUR_ROOT_UUID の部分は、あなたのRootパーティションのUUIDに置き換える必要があります。RootパーティションのUUIDは lsblk -f コマンドなどで確認できます。
      bash
      nano /boot/loader/entries/arch.conf
      # 以下を記述
      # title Arch Linux
      # linux /vmlinuz-linux
      # initrd /initramfs-linux.img
      # options root=UUID=YOUR_ROOT_UUID rw

      YOUR_ROOT_UUID をRootパーティションの実際のUUIDに置き換えてください。rw はルートファイルシステムを読み書き可能でマウントするオプションです。

  8. ユーザーの作成:
    セキュリティのため、日常的な操作はrootユーザーではなく、一般ユーザーで行うのが推奨されます。新しいユーザーを作成し、パスワードを設定します。
    “`bash
    # 新しいユーザーを作成 (例: username)
    useradd -m -g users -G wheel,storage,power -s /bin/bash username
    # -m: ホームディレクトリを作成
    # -g users: プライマリグループを users に設定
    # -G wheel,storage,power: セカンダリグループとして wheel, storage, power を追加
    # -s /bin/bash: デフォルトのシェルを bash に設定 (必要に応じて zsh などに変更)
    # username は作成するユーザー名に置き換えてください

    作成したユーザーのパスワードを設定

    passwd username

    新しいパスワードの入力を求められるので、2回入力します。

    `wheel` グループに所属するユーザーが `sudo` コマンドでroot権限を取得できるように設定します。`sudo` パッケージがインストールされていない場合はまずインストールします (`pacman -S sudo`)。
    `visudo` コマンドを使って `/etc/sudoers` ファイルを編集します。このコマンドを使うことで、構文チェックが行われ、設定ミスによるログイン不能を防げます。
    bash
    EDITOR=nano visudo # nanoエディタで編集する場合 (デフォルトはvi)

    または単に visudo (デフォルトエディタで開く)

    ファイル内で以下の行を探し、先頭のコメント記号 # を削除して有効化します。

    %wheel ALL=(ALL:ALL) ALL

    ファイルを保存して閉じます。

    ``
    これで、
    wheelグループに所属するusernamesudo command` の形式でroot権限が必要なコマンドを実行できるようになります。初回実行時にはユーザーのパスワードを求められます。

3.5 インストール環境からの離脱と再起動

すべての設定が完了したら、arch-chroot 環境から抜け出し、マウントしたパーティションをアンマウントし、システムを再起動します。

  1. arch-chroot 環境から抜けます。
    bash
    exit
    # プロンプトが root@archiso ~# に戻ります
  2. マウントしたパーティションをすべてアンマウントします。/mnt 以下にマウントされているパーティションを再帰的にアンマウントします。
    bash
    umount -R /mnt
    # エラーが出なければOK。もしマウントされていないというエラーが出ても、再起動で解決するので問題ないことが多いです。
  3. システムを再起動します。再起動する前にインストールメディア(USBメモリなど)を取り出しておかないと、再度ライブ環境が起動してしまう可能性があります。
    bash
    reboot

    コンピュータが再起動したら、BIOS/UEFI設定でハードディスクからの起動が優先されるようにブート順序を元に戻しておきます。

4. インストール後の追加設定 (任意)

インストールは完了しましたが、これは最小限のベースシステムです。デスクトップ環境、サウンド、日本語入力など、一般的なデスクトップ環境として使用するためには追加の設定が必要です。これらの設定は、インストールしたArch Linuxを起動して、作成した一般ユーザーでログインし、必要に応じて sudo を使って行います。

4.1 ネットワーク接続 (インストール後のシステムで)

pacstrap 時に networkmanager をインストールし、systemctl enable NetworkManager を実行していれば、再起動後にネットワークマネージャーサービスが有効になっています。ただし、有線接続以外(特に無線LAN)は手動での接続が必要な場合があります。

  • コマンドラインでネットワークに接続する場合:
    nmtui コマンドを使うと、GUI風のテキストインターフェースで簡単にネットワーク設定や接続ができます。
    bash
    sudo nmtui

    nmtui を使ってWi-Fiに接続する場合は、Activate a connection > 接続したいSSIDを選択 > Activate でパスワードを入力します。

  • デスクトップ環境インストール後にGUIツールで接続する場合は、GUIツール(例: GNOMEのネットワーク設定、KDEのPlasma Networkmanager)を使用します。

接続ができたら、再度 ping google.com などでインターネット接続を確認してください。

4.2 サウンドの設定

Linuxでサウンドを利用するには、ALSA (Advanced Linux Sound Architecture) または PipeWire (新世代のマルチメディアフレームワーク) の設定が必要です。最近はPipeWireが推奨される傾向にあります。

“`bash

PipeWireとその必要なコンポーネントをインストール

sudo pacman -S pipewire pipewire-alsa pipewire-pulse pipewire-jack wireplumber

PulseAudioやJACKエミュレーションを提供するためのパッケージ

“`
インストール後、ユーザーをログアウトして再度ログインするか、再起動するとPipeWireが有効になり、サウンドが利用できるようになります。

4.3 日本語入力 (Fcitx5など)

日本語入力を行うためには、Fcitx5などのインプットメソッドフレームワークと、Mozcのような日本語入力エンジンをインストールする必要があります。

bash
sudo pacman -S fcitx5 fcitx5-mozc fcitx5-gtk fcitx5-qt fcitx5-configtool

インストール後、使用するシェルの設定ファイル(例: ~/.bashrc, ~/.zshrc)に以下の環境変数を追記します。
“`bash
nano ~/.bashrc # bashの場合

以下の行をファイルの末尾に追記

export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
export DefaultIMModule=fcitx

以下はWayland環境で必要な場合がある (fcitx5-wayland パッケージも必要)

export INPUT_METHOD=fcitx

export SDL_IM_MODULE=fcitx

export GLFW_IM_MODULE=fcitx

``
変更を反映するには、シェルを再起動(ログアウト/ログインまたは
exec bashなど)するか、システムを再起動します。
GUI環境では、Fcitx5の設定ツール (
fcitx5-configtool`) を起動して入力メソッドを設定します。通常はFcitx5を起動すれば、指定した環境変数に基づいてアプリケーションで入力メソッドが有効になります。

4.4 グラフィカル環境 (デスクトップ環境/ウィンドウマネージャー)

コマンドラインだけでは使いにくい場合、デスクトップ環境 (DE) またはウィンドウマネージャー (WM) とディスプレイマネージャー (DM) をインストールしてグラフィカルな環境を構築します。

  1. X Window System (Xorg) または Wayland のインストール:
    多くのDE/WMはXorg上で動作します。Waylandは次世代のディスプレイサーバープロトコルですが、まだ完全にXorgを置き換えているわけではありません。両方インストールしておくか、使用するDE/WMが推奨する方を選択します。
    bash
    sudo pacman -S xorg # X Window System をインストール
    # Wayland は通常、対応するDE/WMと一緒にインストールされます。
  2. ディスプレイマネージャー (DM) のインストール:
    ログイン画面を表示し、セッション(DE/WM)を選択・開始するためのプログラムです。一般的なものに LightDM, GDM (GNOME), SDDM (KDE) などがあります。
    bash
    # 例: LightDM と GTK Greeter をインストール
    sudo pacman -S lightdm lightdm-gtk-greeter

    インストールしたDMをシステム起動時に自動起動するように設定します。
    bash
    sudo systemctl enable lightdm # LightDMの場合
    # sudo systemctl enable gdm # GDMの場合
    # sudo systemctl enable sddm # SDDMの場合
  3. デスクトップ環境 (DE) または ウィンドウマネージャー (WM) のインストール:
    GNOME, KDE Plasma, XFCE, LXQt などのフル機能のDEや、i3, Sway, dwm, Xmonad などの軽量なWMがあります。
    “`bash
    # 例1: GNOME をインストール (容量が大きい)
    sudo pacman -S gnome gnome-extra
    # GNOME を使う場合はディスプレイマネージャーとして GDM が推奨されます
    # sudo systemctl enable gdm

    例2: KDE Plasma をインストール (容量が大きい)

    sudo pacman -S plasma kde-applications

    KDE を使う場合はディスプレイマネージャーとして SDDM が推奨されます

    sudo systemctl enable sddm

    例3: XFCE をインストール (軽量)

    sudo pacman -S xfce4 xfce4-goodies

    例4: i3 (ウィンドウマネージャー) をインストール (非常に軽量)

    sudo pacman -S i3-wm dmenu termite # 端末エミュレータやランチャーなども必要に応じてインストール
    “`
    使用したいDE/WMを選択してインストールしてください。
    4. 設定を反映させるためにシステムを再起動します。再起動後、ディスプレイマネージャーが表示され、ユーザー名とパスワードを入力してログインすると、インストールしたグラフィカル環境が起動します。

4.5 その他便利なパッケージ

  • ウェブブラウザ: firefox, chromium など
  • ファイルマネージャー: thunar (XFCE), dolphin (KDE), nautilus (GNOME) など
  • テキストエディタ: gedit, kate, vscode など
  • ターミナルエミュレータ: gnome-terminal, konsole, alacritty, kitty など
  • メディアプレーヤー: vlc, mpv など
  • オフィススイート: libreoffice
  • パッケージ管理のフロントエンド: pamac (AUR対応のGUIツール、公式リポジトリにはなくAURからインストール)
  • SSHサーバー: リモートアクセスが必要な場合
    bash
    sudo pacman -S openssh
    sudo systemctl enable sshd
    sudo systemctl start sshd

これらのパッケージは、必要に応じて sudo pacman -S package_name コマンドでインストールしてください。

4.6 システムの更新

Arch Linuxはローリングリリースなので、定期的にシステム全体を更新することが重要です。
bash
sudo pacman -Syu

これは pacman -Sy (データベース同期) と pacman -u (システム更新) を合わせたコマンドです。システム更新を行う前に、Arch Linuxのウェブサイトやメーリングリストなどで重要なアナウンス(特に手動での介入が必要な場合)を確認することを推奨します。

5. トラブルシューティング

インストール中や再起動後に問題が発生した場合の一般的な対処法です。

  • 起動しない (GRUBレスキュー、カーネルパニックなど):

    • インストールメディアで起動し、arch-chroot を使ってインストールしたシステムに戻ります。
    • fstab ファイル (/etc/fstab) に誤りがないか確認します。特にUUIDが正しいか lsblk -f で確認します。
    • ブートローダーの設定 (/boot/grub/grub.cfg/boot/loader/entries/*.conf) が正しいか確認します。
    • ブートローダーの再インストールを試みます (grub-install, grub-mkconfig または bootctl install)。
    • カーネルやinitramfsが正しくインストールされているか (/boot 以下) 確認し、必要なら mkinitcpio -P を実行します。
  • ネットワークに接続できない:

    • ネットワークケーブルが正しく接続されているか確認します。
    • 無線LANの場合はSSIDやパスワードが正しいか確認します。
    • ip a コマンドでインターフェースにIPアドレスが割り当てられているか確認します。
    • ping コマンドで外部サイトへの接続を確認します。
    • 使用しているネットワーク管理サービス(例: NetworkManager, systemd-networkd)が起動しているか systemctl status NetworkManager などで確認し、必要なら有効化・起動 (systemctl enable --now NetworkManager) します。
    • DHCPクライアント (dhcpcd または systemd-networkd の設定) が正しく動作しているか確認します。
  • パーティショニングを間違えた:

    • まだデータを書き込んでいない(フォーマットしていない、pacstrap していない)場合: fdiskparted でやり直します。
    • フォーマットしてしまった、pacstrap してしまった場合: 残念ながらデータは失われています。パーティショニングからやり直す必要があります。
  • pacman エラー:

    • インターネットに接続できているか確認します。
    • /etc/pacman.d/mirrorlist ファイルが正しく設定されているか確認します。
    • データベースを更新します (sudo pacman -Sy)。
    • 署名に関するエラーが出る場合、キーリングを更新します (sudo pacman-key --init, sudo pacman-key --populate archlinux)。
  • GUIが起動しない:

    • XorgやWayland、DM、DE/WMが必要なパッケージを含めて正しくインストールされているか確認します。
    • DMサービス (lightdm, gdm, sddm など) が有効化され、起動しているか systemctl status <dm_service_name> で確認します。
    • ユーザーがログイン可能か確認します。
    • Xorgのログファイル (/var/log/Xorg.0.log) やDMのログファイルを確認してエラーを探します。
    • グラフィックドライバーがインストールされていない可能性があります。Intel, AMD, NVIDIAなど、使用しているGPUに応じたドライバーをインストールします (例: xf86-video-intel, xf86-video-amdgpu, nvidia)。
  • 何かわからない問題が発生した場合:
    Arch Wiki (https://wiki.archlinux.jp/) を検索します。ほとんどの問題の解決策はArch Wikiに掲載されています。コミュニティフォーラムやIRCチャンネルで質問するのも有効です。その際は、エラーメッセージや実行したコマンド、システム構成(ハードウェア、UEFI/BIOSなど)を詳しく伝えるようにしましょう。

6. Arch Linuxの利点と欠点 (簡単なまとめ)

6.1 利点

  • シンプルさとミニマリズム: 不要なものが含まれておらず、自分で必要なものだけを選択・設定できます。
  • カスタマイズ性: ゼロから構築するため、自分の好みに合わせてシステムを細かく設定できます。
  • 最新のソフトウェア: ローリングリリースにより、常に最新バージョンのソフトウェアを利用できます。
  • 学習機会: インストールから設定まで手動で行うため、Linuxシステムがどのように動作するかを深く理解できます。
  • Arch Wiki: 非常に充実した公式ドキュメントがあり、ほとんどの情報はここから得られます。
  • AUR (Arch User Repository): 非常に巨大なユーザー作成パッケージリポジトリがあり、公式リポジトリにない多くのソフトウェアも簡単にインストールできます。

6.2 欠点

  • インストールの難易度: 他のディストリビューションと比べて手動での設定が多く、初心者にはハードルが高い場合があります。
  • 手動での設定: 多くの設定を自分で行う必要があります。
  • 安定性 (比較論): 最新のソフトウェアを利用できる反面、ごく稀に特定のパッケージのアップデートがシステムに一時的な不具合を引き起こす可能性がゼロではありません(通常は素早く修正されますが)。
  • 手動での介入: 重大なアップデートの際など、ごく稀に手動での設定変更が必要になる場合があります。Arch Linuxのニュースやアナウンスをチェックすることが推奨されます。

7. まとめ

Arch Linuxのインストールは、他のLinuxディストリビューションと比較すると手間がかかりますが、その過程で得られる知識と、完成したシステムのシンプルさ、カスタマイズ性、そして常に最新であり続けるという利点は、多くのユーザーにとって魅力的です。

このガイドは、Arch Linuxのベースシステムをインストールし、基本的な設定を行うための詳細なステップを提供しました。パーティショニング、ファイルシステムのフォーマット、ベースシステムのインストール、システム固有の設定、そしてブートローダーのセットアップといった一連のプロセスを理解し、実行できたことでしょう。

インストールが完了したら、本ガイドの後半で触れたグラフィカル環境の構築、サウンド、日本語入力などの追加設定に進み、自分好みのデスクトップ環境を構築してください。

Arch Linuxの旅はインストールからが始まりです。公式のArch Wikiは、さらに高度な設定やトラブルシューティング、特定のソフトウェアのインストール方法など、あらゆる情報源として非常に有用です。コミュニティも活発で、困った際には助けを求めることができます。

時間をかけてじっくりとこのガイドに取り組み、Arch Linuxのインストールを成功させたあなたに祝福を。この経験は、今後のLinuxを使ったシステム管理において必ず役に立つはずです。

Happy Arch Linuxing!


コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

上部へスクロール