Arch Linuxインストールメモ2023.07
基本的にはArch wikiのインストールガイドを読んでその通りにすればいいのですが、実際やった記録も参考になればということで日記を置いておきます。なお本稿は完全なインストール手順を示すものではありません。
インストールメディアの作成
私は今回インストールするマシン以外に動いているArch Linuxデスクトップ機があったので、インストールメディア作成にはそちらのArch Linuxを使って作業しました。
ダウンロード
Torrentが推奨されていますが、今回は意識低くHTTP配信サーバーでつくばから落としてきました。Wiki中にある署名の確認では sq コマンドが出てきますが、これにはsequoiaが必要なのでpacmanで入れておきます。
# pacman -S sequoia-sq
USBメモリーへの焼き込み
色々方法がありますが、一番安直そうなcatを使いました。
USBドライブの確認
$ ls -l /dev/disk/by-id/usb-*
lrwxrwxrwx 1 root root 9 Jul 6 18:08 /dev/disk/by-id/usb-BUFFALO_USB_Flash_Disk_070894EEA91B9719-0:0 -> ../../sdb
lrwxrwxrwx 1 root root 10 Jul 6 18:08 /dev/disk/by-id/usb-BUFFALO_USB_Flash_Disk_070894EEA91B9719-0:0-part1 -> ../../sdb1
書き込み
# cat ~/Downloads/archlinux-2023.07.01-x86_64.iso > /dev/disk/by-id/usb-BUFFALO_USB_Flash_Disk_070894EEA91B9719-0\:0
なお、ここで作ったインストールメディアはマザーボードの設定によってはブートドライブとして認識されない場合があります。今回はマザーボードのいわゆるBIOS画面で、BootメニューからCSM設定をUEFI Onlyにすることで解決しました。
インストール
ここからはインストール先のマシンで、USBから起動したArch Linuxでの作業です。
パーティショニング
今回は一度Archを入れていたストレージへの再インストールをしていたので、パーティションは再利用で…と思っていた時期がありました。が、BIOSとUEFIでは要求されるパーティションレイアウトが異なる部分があったため、結局既存のbootパーティションを潰してEFI system partition(ESP)とboot用Linux filesystem で切り直すことにしました。
# fdisk -l
ディスクとパーティション一覧が表示される
# gdisk /dev/nvme0n1
gdisk内で
d 既存のboot削除
n EF00 開始セクターデフォルト(先頭)、終了セクターは+2M
n LINUX FILESYSTEM 開始セクターデフォルト、終了セクターは+510M
w でパーティション書き込み
EFI Filesysteのフォーマット
# mkfs.fat -F 12 /dev/nvme0n1p1
Bootパーティションのフォーマット。今回はパーティション番号4をBootにしています
# mkfs.fat -F 32 /dev/nvme0n1p4
Arch wiki内で解説されているように、小さいサイズのパーティションはFAT32ではフォーマットできません。今回はFAT16でもできなかったため、FAT12でフォーマットしています。
Arch Linuxのインストール
rootパーティションマウント
# mount /dev/nvme0n1p3 /mnt
bootパーティションマウント
# mount --mkdir /dev/nvme0n1p4 /mnt/boot
EFI system partition(ESP) マウント
# mount --mkdir /dev/nvme0n1p1 /mnt/efi
# pacstrap -K /mnt base linux linux-firmware
# genfstab -U /mnt >> /mnt/etc/fstab
# arch-chroot /mnt
ここからはインストール先Arch Linuxでの作業になります
ブートローダーのインストール
ブートローダーは脳死でGRUBを選択しています。
arch-chroot した状態で
今回はRyzenなのでこれが必要
# pacman -S amd-ucode
GRUBで使う
# pacman -S efibootmgr dosfstools os-prober mtools
UEFIでのgrub-install。BIOS用のものとは違うので注意
# grub-install --target=x86_64-efi --efi-directory=/efi --bootloader-id=GRUB
これやっておかないとGRUBからArch起動しない
# grub-mkconfig -o /boot/grub/grub.cfg
grub-installが終わったらEFIのマウントは不要なので、fstabからESP関係の部分は消しておく
vim /etc/fstab
ここまでできれば、以降電源投入→Arch Linux起動ができるはずです。
ネットワークの設定
今回はnetctlを使っています。
ip address でデバイス確認 今回はenpn0sが目的
netctlプロフィールを作成
vim /etc/netctl/enpn0s
netctl enable enpn0s
修正した場合は
netctl reenable enp0s
netctl start enp0s
これでネットワークに繋がります。あとはsshdを入れて設定をすれば、以降は物理コンソールは触らずssh越しでの環境構築ができます。ここまで来れば基本的な環境構築をしつつ好みでパッケージを入れていく、普段のArch Linux生活に入れます。
Discussion