💻

Arch Linux をLVM構成でインストールしてみる

2024/10/05に公開

自分用に残しているだけなので、設定(パッケージ等)は適宜調べてね 🌟

インストール

キーボードのレイアウトを変更

# loadkeys jp106

無線LANの設定(有線の場合は読み飛ばす)

メニューに従って、SSID & パスワードを設定しLANに接続する

wifi-menu

パーティションの追加

# lsblk
# gdisk /dev/nvme0n1

パーティション構成

パーティション 容量 fs種類 マウント先 用途
/dev/nvme0n1p1 512MB FAT32 /boot/efi ESP
/dev/nvme0n1p2 512MB ext4 /boot boot
/dev/nvme0n1p3 全部 ext4 /(root) root

LVMの作成

物理ボリューム作成

# pvcreate /dev/nvme0n1p3
# pvdisplay

ボリュームブループ作成

vgcreate <VG名> /dev/nvme0n1p3

# vgcreate arch /dev/nvme0n1p3
# vgdisplay

論理ボリューム作成

lvcreate -L +100%FREE -n <LV名> <VG名>

# lvcreate -L +100%FREE -n lv_root arch
# lvdisplay

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

ファイルシステムの作成

# mkfs.vfat -F32 /dev/nvme0n1p1
# mkfs.ext4 /dev/nvme0n1p2
# mkfs.ext4 /dev/arch/lv_root

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

/ (root) → /boot → /boot/efi の順にマウント

# mount /dev/arch/lv_root /mnt
# mkdir /mnt/boot
# mount /dev/nvme0n1p2 /mnt/boot
# mkdir /mnt/boot/efi
# mount /dev/nvme0n1p1 /mnt/boot/efi

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

# pacstrap /mnt base base-devel linux linux-firmware grub efibootmgr vi neovim wpa_supplicant networkmanager zsh lvm2

fstabの作成

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

chroot

# arch-chroot /mnt /bin/bash

Localeの設定

# nvim /etc/locale.gen
---
en_US.UTF-8 UTF-8 (コメントアウトを解除)
...
ja_JP.UTF-8 UTF-8 (コメントアウトを解除)
---

localeの生成

locale-gen

環境変数を設定

# echo "LANG=en_US.UTF-8" > /etc/locale.conf
# export LANG=en_US.UTF-8 

タイムゾーンを設定

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

ホスト名の編集

# echo "ホスト名" > /etc/hostname

hostsファイルの編集

# nvim /etc/hosts

127.0.0.1  localhost.localdomain localhost "ホスト名"
::1  localhost.localdomain localhost "ホスト名"

ユーザーの設定

rootユーザのパスワード設定

# passwd

ユーザーの追加 & グループへの追加

# useradd -m  -G wheel -s /usr/bin/zsh "ユーザー名"
# passwd "ユーザー名"

mkinitcpio フックを追加

# nvim /etc/mkinitcpio.conf
---
HOOKS=(base systemd ... block lvm2 filesystems)

GRUBのインストール

# grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=grub_arch --boot-directory=/boot/efi/EFI --recheck
# grub-mkconfig -o /boot/efi/EFI/grub/grub.cfg

NetworkManagerの有効化

# systemctl enable NetworkManager.service

再起動

# exit
# shutdown -h now

GUIの設定

インストールで長くなったので、別途記載していく
https://zenn.dev/reviq07/articles/5736cb799b3ffc

Discussion