Arch Linuxのインストール手順

Jan 22, 2026    #archlinux  

Arch Linux のインストール手順を記録する
なお、Arch Linuxの概要や、他のOSとの比較等は省略する

ISOインストール

ダウンロードページからiso、sig、b2sums.txtをダウンロードし、以下のコマンドで検証

b2sum -c b2sums.txt
gpg --auto-key-locate clear,wkd -v --locate-external-key pierre@archlinux.org
gpg --verify archlinux-x86_64.iso.sig archlinux-2025.12.01-x86_64.iso

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

USBドライブ名確認

以下のコマンドでUSBドライブの名前を調べ、それらがマウントされていないことを lsblk で確認

ls -l /dev/disk/by-id/usb-*

また、この時にドライブのパスを記録

$ ls -l /dev/disk/by-id/usb-*
lrwxrwxrwx 1 root root  9 Dec  3 20:43 /dev/disk/by-id/usb-USB_SanDisk_3.2Gen1_01014dec9e899c24c9a933abd583c7db91b06dc2501e61ce2ea209f7b695be8ac04c00000000000000000000289980daff12780081558107712e850b-0:0 -> ../../sda
lrwxrwxrwx 1 root root 10 Dec  3 20:43 /dev/disk/by-id/usb-USB_SanDisk_3.2Gen1_01014dec9e899c24c9a933abd583c7db91b06dc2501e61ce2ea209f7b695be8ac04c00000000000000000000289980daff12780081558107712e850b-0:0-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 Dec  3 20:43 /dev/disk/by-id/usb-USB_SanDisk_3.2Gen1_01014dec9e899c24c9a933abd583c7db91b06dc2501e61ce2ea209f7b695be8ac04c00000000000000000000289980daff12780081558107712e850b-0:0-part2 -> ../../sda2
$ export MYDRIVE=/dev/disk/by-id/usb-USB_SanDisk_3.2Gen1_01014dec9e899c24c9a933abd583c7db91b06dc2501e61ce2ea209f7b695be8ac04c00000000000000000000289980daff12780081558107712e850b-0:0

再フォーマット

以前そのUSBを他のOSのインストールメディアをして使用していた場合、以下のコマンドでISO 9660ファイルシステムシグネチャを削除

sudo wipefs --all $MYDRIVE

ISOファイル書き込み

sudo su -
cat archlinux-x86_64.iso > /dev/disk/by-id/usb-USB_SanDisk_3.2Gen1_01014dec9e899c24c9a933abd583c7db91b06dc2501e61ce2ea209f7b695be8ac04c00000000000000000000289980daff12780081558107712e850b-0\:0
sync

インストールの準備

USBインストールメディア作成 で作成したメディアをインストールしたいデバイスに挿し、起動

キーボードレイアウト設定

自分はDrorakユーザのため、そのように設定を変更

loadkeys dvorak

インターネット接続設定

今回はiwctl を用いて無線ネットワークに接続

iwctl
[iwd]# device list
[iwd]# station {device_name} scan
[iwd]# station {device_name} get-networks
[iwd]# station {device_name} connect SSID
[iwd]# exit

以下のコマンドで接続を確認

ping archlinux.jp

システムクロック更新

timedatectl status

パーティション設定

ここでは /dev/nvme0n1 にインストールすることを前提として話を進める

ドライブのフォーマット

sudo nvme format /dev/nvme0n1 --ses=2

--ses=2 は Secure Erase の意味だが、一部のドライブはこれに対応していない
以下のコマンドの出力結果に Not Supported が含まれていれば対応していないため、代わりに --ses=1 を指定

sudo nvme id-ctrl -H /dev/nvme0 | grep "Crypto Erase"

なお --ses=1 に対応しているかは、以下のコマンドで同様に確認が可能

sudo nvme id-ctrl -H /dev/nvme0 | grep "Format NVM"

パーティション設定

ここでは UEFI/GPT の使用を前提として話を進める

以下のコマンドにより対話的に作成

gdisk /dev/nvme0n1

別端末上での作業によりログを記録できなかったため、詳細な作成方法はGPT fdisk - ArchWiki を参照すること
ここでは以下のパーティションを設定したとして話を進める

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

3つのパーティションをそれぞれフォーマット

mkfs.fat -F 32 /dev/nvme0n1p1
mkswap /dev/nvme0n1p2
mkfs.ext4 /dev/nvme0n1p3

ファイルシステムのマウント

作成したボリュームをマウントあるいは有効化

mount /dev/nvme0n1p3 /mnt
swapon /dev/nvme0n1p2
mount --mkdir /dev/nvme0n1p1 /mnt/boot

インストール

パッケージのミラーの選択

/etc/pacman.d/mirrorlist を編集し、地理的に近いミラーを上部に移動させる

必須パッケージのインストール

pacstrap -K /mnt base linux linux-firmware sudo neovim 

fstabの生成

genfstab -U /mnt >> /mnt/etc/fstab

chroot

arch-chroot /mnt

タイムゾーン設定

ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
hwclock --systohc

ローカリゼーション

まず /etc/locale.genneovim 等で編集し en_US.UTF-8 UTF-8ja_JP.UTF-8 UTF-8 をアンコメント
その後、以下を実行

locale-gen

その後 /etc/locale.conf を作成し、以下の内容を追記

LANG=en_US.UTF-8

キーマップ変更

/etc/vconsole.conf を作成し、以下の内容を追記

KEYMAP=dvorak

ネットワーク設定

ホストネーム設定

/etc/hostname を作成し、任意のホストネームを追記

ネットワーク設定

ここではワイヤレスLAN wlan0 への接続を前提に話を進める

ネットワークインターフェイスの有効化
ip link show dev 

表示される <BROADCAST,MULTICAST,UP,LOWER_UP> のうち UP が表示されていれば有効

ワイヤレスLANへ接続

ここでは iwd を利用

iwctl
[iwd]# station wlan0 scan
[iwd]# station wlan0 get-networks
[iwd]# station wlan0 connect {SSID}
[iwd]# station wlan0 show

また、DHCPクライアントを有効化

/etc/iwd/main.conf

[General]
EnableNetworkConfiguration=true
systemctl restart iwd
ドメイン名解決

iwd はドメイン名前解決のために systemd-resolved または resolvconf を利用
ここでは systemd-resolved を選択

systemctl start systemd-resolved
systemctl enable systemd-resolved
接続確認
ping 9.9.9.9
ping archlinux.org

ルートパスワード設定

passwd

ブートローダーのインストール

ここではEFI ブートスタブの使用を前提に話を進める

まず efibootmgr をインストール

pacman -S efibootmgr

その後、以下のコマンドによりブートエントリを作成

efibootmgr --create --disk /dev/nvme0n1 --part 1 --label "Arch Linux" --loader /vmlinuz-linux --unicode 'root=/dev/nvme0n1p3 rw initrd=\initramfs-linux.img'

再起動

exit によりchroot環境から抜けた後 reboot で再起動
正しくインストールが完了していればArch Linuxが起動する

資料