筆者について
- もうすぐ卒業の高校3年生(これはもうそろそろ変えないと)
本編
今年最初のチャレンジでした。ProxmoxにArch LinuxのVMを建てました。また、Cosmic Desktopもインストールしましたので、そこまでの変遷を記したいと思っています。ちなみに、今回はaarch64
もほぼ同じ手順でUTMにインストールしましたので、その手順も記載しておきます。
Archbootのダウンロード
まずは必要なものから準備!Archbootをダウンロードします。
好きなサーバーの適切なアーキテクチャを選択しiso>archboot-{ver}-arch1-1-x86_64.iso
をダウンロードします。
VMの設定
基本的にはお好みのままです。Proxmoxの場合、BIOSの設定をUEFIに変更してください。また、ISOの起動をした時のブートメニューからUEFI Firmwareの設定からSecure BootをOffにしてください。
いざ、インストール
さて、ここからはISOを起動してインストールしていきましょう。そのまま、Archbootから起動してください。下の画面まで来たらCtl+C
でインストーラーを中断しましょう。バンバンコマンドを入力していきましょう。
1-1. キーボードレイアウトの設定
デフォルトはUSキーボードです。JIS配列の人は変更しましょう。
loadkeys jp106
1-2. 起動モードの確認
UEFIモードで起動はしていますが、一同確認しておきましょう。下のコマンドを実行してNot foundならBIOSモードで起動してるのでUEFIモードで起動するようにしてください。
ls /sys/firmware/efi/efivars
1-3.ネットワーク接続の確認
VirtoIOで接続していますので、する必要はないですが、一応のため、、、。
ip link
ping google.com
1-4. パーティションの作成
fdisk
を使ってパーティションを切ります。構成は以下のようにしています。
Boot領域 | Swap領域 | Root領域 |
---|---|---|
512 MB | 512 MB | 残り全て |
まずは、fdiskでインストール先のディスク番号を確認していきます。
lsblk
# Proxmoxの時は以下のことが多い
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
sda 8:0 0 8G 1 disk
# Proxmoxの時は以下のことが多い
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
vda 8:0 0 8G 1 disk
それぞれ、fdiskでパーティションを切っていきましょう。
fdisk /dev/sda # インストールするディスクに合わせて変更してください。
以下のように入力してしてパーティションを切っていきましょう。
-
n
(新しいパーティションの作成) -
p
(Primaryの作成なのでp
) -
ENTER
(パーティション番号はそのまま、もしくは、各自に合わせてEFI、Swap、Rootが1、2、3になるようにしてください。) -
ENTER
(開始セクタはデフォルトのまま) -
+512MB
ORENTER
(EFI領域とSwap領域は前者、Root領域は後者)(LinuxのRoot領域の作成時はここで終わり) -
t
(パーティションタイプの指定) -
ef
OR82
(EFI領域を作成するときは前者、Swap領域を作るときは後者)
あとは、フォーマットしていきましょう。
# EFI領域
mkfs.fat -F 32 /dev/sda1
# Swap領域
mkswap /dev/sda2
# Root領域
mkfs.ext4 /dev/sda3
1-5. ファイルシステムのマウント
mount /dev/sda3 /mnt
mount --mkdir /dev/sda1 /mnt/boot
swapon /dev/sda2
1-6. パッケージのインストール
/etc/pacman.d/mirrorlist
を編集します。好きなサイトを選択してください。
nano /etc/pacman.d/mirrorlist
インストールしましょう。
pacstrap -K /mnt base linux linux-firmware
2-1. fstab
の設定
genfstab -U /mnt >> /mnt/etc/fstab
2-2. chroot
に入る
システムの設定に移ります。
arch-chroot /mnt
2-3. パッケージのインストール
ここで何個かパッケージをインストールしておきます。
pacman -S nano vi networkmanager sudo
2-4. タイムゾーンの設定
タイムゾーンが間違っている場合は設定してください。
ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
hwclock --systohc
2-5. ローカリゼーション
nano /etc/locale.gen
# 以下の2つをアンコメント
+ en_US.UTF-8 UTF-8
+ ja_JP.UTF-8 UTF-8
# 保存して終了
locale-gen
nano /etc/locale.conf
# 以下を記載
LANG=en_US.UTF-8
2-6. ネットワーク設定
ホストネームの設定
nano /etc/hostname
# 適当に設定
nano /etc/resolv.conf
+ nameserver 8.8.8.8
ついでに、NetworkManager
を起動するように設定しておきます。
systemctl enable NetworkManager.service
2-7. ユーザー設定
まずは、Rootのパスワードを設定します。
passwd
次に、デフォルトのユーザーを作成しておきます。user
は適宜置き換えてください。
useradd -m -g wheel user
passwd user
visudo
# 以下の行をアンコメント
+ %wheel ALL=(ALL:ALL) AL
ちなみに、vi
で文字を削除するときはx
で消し、:wq
で保存します。
2-8. ブートローダーのインストール
UEFIブートローダーのインストールをします。
pacman -S grub efibootmgr
# Proxmoxのとき
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=grub
# aarch64のとき
grub-install --target=arm64-efi --efi-directory=/boot/efi --bootloader-id=grub
grub-mkconfig -o /boot/grub/grub.cfg
2-9. インストールしたOSから起動
exit
umount /mnt -R
shutdown -h now
おまけ編
ほぼ終わっているのですが、デスクトップ環境を使いたい人向けに一応Cosmicのインストール方法と起動設定だけ下に書いておきます。
sudo pacman -S cosmic # 必要なものは全部インストール
sudo systemctl enable cosmic-greeter
sudo systemctl start cosmic-greeter
最後に
今回初めてArchをインストールしたのですが、コマンドに使い慣れたのか結構簡単にインストールできるようになりました。今後は他のArch系のインストールもしていきたいと思います。
参考文献