re:archlinux setup
code:bash
shred -v /dev/nvme0n1 # ディスクを全部消す
pacman -S gptfdisk
gdisk /dev/nvme0n1
code:fdisk
o
y
# /boot/efi 用のパーティション
n<CR>
<CR>
+512M<CR>
ef00<CR>
# /boot 用のパーティション
n<CR>
<CR>
+512M<CR>
# / 暗号化パーティション
n<CR>
<CR>
<CR> # 残り全部
8309<CR>
# 確認と書き込み
p # 問題ないかチェック
w # パーティション書き込み
ディスクの暗号化をする。事前にyubikeyのスロット2に HMAC-SHA1チャレンジレスポンスを設定しておく
code:bash
pacman -S yubikey-full-disk-encryption # yubikeyをディスクの暗号化キーにできるやつ
vim /etc/ykfde.conf # 変更することがあれば。YKFDE_CHALLENGEを変更するとパスワード入力不要になったり
ykfde-format --cipher aes-xts-plain64 --key-size 512 --hash sha512 /dev/nvme0n1p3
ykfde-open -d /dev/nvme0n1p3 -n encrypted-volume
lvmを切る
code:bash
pvcreate /dev/mapper/encrypted-volume
vgcreate LogVol /dev/mapper/encrypted-volume
lvcreate -L 32G LogVol -n swap
lvcreate -l 100%FREE LogVol -n root
フォーマット
code:bash
mkfs.fat -F 32 /dev/nvme0n1p1
mkfs.btrfs -L boot /dev/nvme0n1p2
mkfs.btrfs -L root /dev/mapper/LogVol-root
mkswap /dev/mapper/LogVol-swap
マウントからpacstrapまで
code:bash
mount /dev/mapper/LogVol-root /mnt
mkdir /mnt/boot
mount /dev/nvme0n1p2 /mnt/boot
mkdir /mnt/boot/efi
mount /dev/nvme0n1p1 /mnt/boot/efi
swapon /dev/mapper/LogVol-swap
pacstrap -K /mnt base base-devel linux-zen linux-zen-docs linux-zen-headers linux-firmware zsh zsh-completions vim btrfs-progs yubikey-full-disk-encryption lvm2 sudo
genfstab -U /mnt > /mnt/etc/fstab
arch-chroot /mnt
2FAモードで使うので設定変更
code:/etc/ykfde.conf
...
# Use 'Manual mode with secret challenge (2FA)'.
YKFDE_CHALLENGE_PASSWORD_NEEDED="1"
...
ykfdeを使うので
code:bash
vim /etc/mkinitcpio.conf
code:/etc/mkinitcpio.conf
...
HOOKS=(base udev autodetect modconf kms keyboard keymap consolefont block ykfde encrypt lvm2 filesystems fsck)
...
code:bash
mkinitcpio -P
pacman -S efibootmgr
bootctl --path=/boot/efi install
vim /boot/efi/loader/entries/arch.conf
fbcon=rotate:1 はGPD WIN MAXの画面をちゃんとするやつ
code:/boot/efi/loader/entries/arch.conf
title archlinux
linux /vmlinuz-linux-zen
initrd /initramfs-linux-zen.img
options cryptdevice=UUID={UUID}:encrypted-volume root=/dev/mapper/LogVol-root fbcon=rotate:1 quiet rw
code:bash
vim /boot/efi/loader/loader.conf
code:/boot/efi/loader/loader.conf
default arch
timeout 3
editor no
code:bash
cp -af /boot/vmlinuz-linux-zen /boot/efi/
cp -af /boot/initramfs-linux-zen.img /boot/efi/
cp -af /boot/initramfs-linux-zen-fallback.imgn /boot/efi/
ここまでで乗ってるストレージから起動可能になる