はじめに
こんにちは。くりもちです。この記事では、arch Linuxのインストール手順を解説しています。公式のインストール手順で挫折してしまった方・arch Linuxをまだインストールしたことがない方などにインストール手順をできるだけ簡単にお伝えできればと思います。
事前準備
必要なもの
- インストールするPC(仮想マシンでも大丈夫です)
- インストールメディア(仮想マシンにインストールする方はisoファイルを用意してください・作成する手順を下で解説しています)
- ある程度のbash・zshの知識(vimの使い方とファイル操作とリダイレクトぐらい覚えておけば多分大丈夫です)
- 気合い
インストールメディアの作成方法(ある方は飛ばしてください)
arch Linuxのダウンロードページの日本サーバーのどこかからisoファイルをダウンロードし、EtcherやRufusなどでCDやUSBに焼いてください。
これでインストールメディアが準備できました。
arch Linuxを起動
インストールメディアをインストールするPCに挿入して起動すると以下の画面が表示されるるので、Arch Linux install medium (x86_64, x64 UEFI)
を選択して下さい。
自動的にrootにログインされ、zshのシェルが開きます。
キーボードレイアウト
標準のキーボードレイアウトはUSキーボードなので、以下のコマンドでJISキーボードに変更します。USキーボードを使っている人はこのコマンドを実行する必要はありません。
loadkeys jp106
起動モードの確認
今回のインストール方法は起動モードがUEFIであることを前提としています。BIOSとUEFIではインストール手順が多少異なるので、以下のコマンドで起動モードを確認します。(BIOSのインストール手順もいつかやると思います)
ls /sys/firmware/efi
実行結果に「efivars」という項目があればUEFIなので大丈夫です。
パーティションの作成
対象のディスクの確認
他のディスクに間違えて書き込んでしまうとまずいので以下のコマンドでインストール対象のディスクを確認します。
lsblk | grep -v 'rom\|loop\|airoot'
「/dev/NAMEの下の欄」がディスクの名前になります。インストール対象のディスクの名前を覚えておいてください。
パーティションの作成
今回は以下のパーティション構成にします。
パーティション | サイズ | フォーマット | マウントポイント |
---|---|---|---|
/dev/sda1 | 512M | FAT32 | /boot/efi |
/dev/sda2 | 512M | ext4 | /boot |
/dev/sda3 | 残り全部 | ext4 | / |
今回はswapパーティションは作成せず、動的に変化するswapにします。
必要に応じてパーティション構成を変更してください。(ただし、/boot/efi
と/boot
は必ず作成してください。)
それでは以下のコマンドでパーティションを作成します。
sgdisk -z /dev/sda
sgdisk -n 1:0:+512M -t 1:ef00 -c 1:"EFI System" /dev/sda
sgdisk -n 2:0:+512M -t 2:8300 -c 2:"Linux filesystem" /dev/sda
sgdisk -n 3:0: -t 3:8300 -c 3:"Linux filesystem" /dev/sda
パーティションのフォーマット
次に、以下のコマンドでパーティションをフォーマットします。
mkfs.vfat -F32 /dev/sda1
mkfs.ext4 /dev/sda2
mkfs.ext4 /dev/sda3
パーティションのマウント
続いて、以下のコマンドでパーティションをマウントしていきます。
mount /dev/sda3 /mnt
mkdir /mnt/boot
mount /dev/sda2 /mnt/boot
mkdir /mnt/boot/efi
mount /dev/sda1 /mnt/boot/efi
無線LANの方のみ:wifiに接続
無線LANでパッケージをインストールする方は、以下のコマンドでwifiに接続させます。
wifi-menu
実行したら、画面の指示に従ってSSIDとパスワードを入力してください。
arch Linuxをインストール
事前準備が完了したので、arch Linuxをインストールしていきます。
ネットワークの疎通確認
インストールする前に、ping
コマンドなどでネットワークが疎通していることを確認するといいかもしれません。
リポジトリの選択
インストールできれば何でもいいという方は必要ないですが、地理的な事情を考慮すると日本のリポジトリの優先度を高くした方がいいので、/etc/pacman.d/mirrorlist/
に以下の文を上に追記します。
Server = http://ftp.tsukuba.wide.ad.jp/Linux/archlinux/$repo/os/$arch
パッケージのインストール
では、pacstrap
でパッケージをインストールしていきます。
インストールするパッケージは以下の通りです。
- base
- base-devel
- linux
- linux-firmware
- grub
- efibootmgr
- dosfstools
- netctl
- vim
(ここから無線LANの方のみのパッケージ) - iw
- wpa_supplicant
- networkmanager
- dialog
以下のコマンドでインストールしていきます。(他に入れたいパッケージがある方はスペースで区切って追記してください)
# 有線LANの方の例
pacstrap /mnt base base-devel linux linux-firmware grub efibootmgr dosfstools netctl vim
# 無線LANの方の例
pacstrap /mnt base base-devel linux linux-firmware grub efibootmgr dosfstools netctl vim iw wpa_supplicant networkmanager dialog
fstabの作成
genfstab
コマンドでfstabファイルを作成します。
genfstab -U /mnt >> /mnt/etc/fstab
chroot
arch-chroot
コマンドでrootの作業場所を変更します。
arch-chroot /mnt /bin/bash
Localeの設定
arch LinuxのLocaleを設定します。
/etc/locale.gen
をvimなどで開き、en_US.UTF-8 UTF-8
とja_JP.UTF-8 UTF-8
の行のコメントを解除し、locale-gen
コマンドを実行します。
...
en_US.UTF-8 UTF-8
...
ja_JP.UTF-8 UTF-8
...
locale-gen
LANG環境変数を設定するため、/etc/locale.conf
を作成し、以下の値を入力します。(以下のコマンドを実行すると入力できます)
echo "LANG=en_US.UTF-8 UTF-8" > /etc/locale.conf
JISキーボードを使用している方は、/etc/vconsole.conf
を作成し、以下の値を入力します。(以下のコマンドを実行すると入力できます)
echo "KEYMAP=jp106" > /etc/vconsole.conf
timezoneの設定
timezoneを日本に設定します。
tzselect
# 次に5、20、1と入力
/usr/share/zoneinfo
ディレクトリ配下に/etc/localtime
シンボリックリンクを作成します。
# ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
ハードウェアクロックの時間のずれを修正します。
hwclock --systohc --utc
hostnameの設定
/etc/hostname
と/etc/hosts
を編集してhostnameを設定します。(以下のhostnameは設定したいhostnameに変えてください)
echo "hostname" > /etc/hostname
127.0.0.1 localhost
::1 localhost
127.0.1.1 hostname
initramfsイメージの作成
mkinitcpio
コマンドでinitramfsイメージを作成します。
mkinitcpio -p linux
rootのパスワードの設定
passwd
コマンドでrootのパスワードを設定します。
passwd
実行したら、画面の指示に従ってパスワードを設定してください。
grubの設定
パッケージのインストールでgrubをインストールした方は以下のコマンドでgrubを設定してください。
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB --boot-directory=/boot/efi/EFI --recheck
grub-mkconfig -o /boot/efi/EFI/grub/grub.cfg
この時点でgrubの動作確認・Linuxの起動確認をするので、以下のコマンドを実行した後、インストールメディアを抜いて起動してください。
exit
shutdown -h now
grubが動作・Linuxが起動したら成功です。rootでログインして続けてください。
無線LANの方のみ:wifiの設定
以下のコマンドで起動時にwifiに接続するようにします。(SSIDの部分とpasswordの部分をSSIDとパスワードに置き換えてください)
systemctl start NetworkManager
systemctl enable NetworkManager
nmctl d wifi list
# 接続可能なwifiを確認
nmctl d wifi connect SSID password password
# 接続完了
一般ユーザーの作成
以下のコマンドで一般ユーザーを作成します。(usernameの部分を設定したいユーザーネームに置き換えてください)
useradd -m -g wheel -d /home/username -s /bin/bash -m username
passwd username
# 画面の指示に従ってパスワードを設定
pacman -S sudo
EDITOR=vim visudo
# Defaults env_keep += "HOME" の行と %wheel ALL=(ALL) ALL の行のコメントを解除
exit
してログインできるか確認してください。
これでインストールは完了です。お疲れさまでした。
参考サイト