💾

OS 用のディスクを交換する on Arch Linux

2021/07/23に公開

ディスクが一杯になってしまったので、大きいのに交換することにしました。
その作業ログです。

数字的には逆になっていますが、/dev/nvme0 が新しいディスク、/dev/nvme1 が古いディスクです。

Live USB

Arch Linux のページから、インストール用のメディアをダウンロード。

/dev/sdb は、USB メモリ。

$ sudo dd bs=4M if=/tmp/archlinux-2021.07.01-x86_64.iso of=/dev/sdb status=progress && sudo sync

以下、このメディアからブートして作業。

ディスクのクローン

元のディスクから、dd で丸ごとコピー

# dd if=/dev/nvme1n1 of=/dev/nvme0n1 bs=4M status=progress

UUID 振りなおし

このままだと同じ UUID のディスクが複数存在することになるので、書き換える。
vfat は mlabel 、ext4 は tune2fs を使う。

# mlabel -s -n :: -i /dev/nvme0n1p1
# tune2fs -U random /dev/nvme0n1p2

fstab

# mount /dev/nvme0n1p2 /mnt
# mount /dev/nvme0n1p1 /mnt/boot

UUID が変更されたので、fstab を修正する。

# blkid /dev/nvme0n1p1
# blkid /dev/nvme0n1p2
# vim /etc/fstab
...

genfstab で追記して、それを修正しても良いかも。

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

GRUB

新しいディスクの Arch Linux に入る。

# arch-chroot /mnt
# grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=grub --recheck
# cp /boot/EFI/grub/grubx64.efi  /boot/EFI/boot/bootx64.efi
# grub-mkconfig -o /boot/grub/grub.cfg

おわり

# mount -R /mnt

あとは、マザーボードでブート順を変更したりする。

古いディスクはどう使おうか。

Discussion