状況
復旧
USBインストールメディアの準備(Mac)
isoの検証
❯ gpg --keyserver-options auto-key-retrieve --verify archlinux-2022.08.05-x86_64.iso.sig
gpg: 署名されたデータが'archlinux-2022.08.05-x86_64.iso'にあると想定します
gpg: 金 8/ 5 20:13:05 2022 JSTに施された署名
gpg: RSA鍵4AA4767BBC9C4B1D18AE28B77F2D434B9741E8ACを使用
gpg: 発行者"pierre@archlinux.de"
gpg: 鍵7F2D434B9741E8AC: 公開鍵"Pierre Schmitz <pierre@archlinux.de>"をインポートしました
gpg: 処理数の合計: 1
gpg: インポート: 1
gpg: 究極的に信用する鍵が見つかりません
gpg: "Pierre Schmitz <pierre@archlinux.de>"からの正しい署名 [不明の]
gpg: *警告*: この鍵は信用できる署名で証明されていません!
gpg: この署名が所有者のものかどうかの検証手段がありません。
主鍵フィンガープリント: 4AA4 767B BC9C 4B1D 18AE 28B7 7F2D 434B 9741 E8AC
❯ openssl sha1 archlinux-2022.08.05-x86_64.iso
SHA1(archlinux-2022.08.05-x86_64.iso)= 21715237a89d0e0e1e385020f615319b4c8f08bf
❯ md5 archlinux-2022.08.05-x86_64.iso
MD5 (archlinux-2022.08.05-x86_64.iso) = 0e9943a96f8298abb0db5e64f76ad0be
macでUSBインストールメディアの作成
disk4がUSBメモリです。
dd
がhomebrewでインストールしたgnuのものなので、M
は大文字です。
❯ diskutil list
/dev/disk0 (internal):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme 1.0 TB disk0
1: Apple_APFS_ISC 524.3 MB disk0s1
2: Apple_APFS Container disk3 994.7 GB disk0s2
3: Apple_APFS_Recovery 5.4 GB disk0s3
/dev/disk3 (synthesized):
#: TYPE NAME SIZE IDENTIFIER
0: APFS Container Scheme - +994.7 GB disk3
Physical Store disk0s2
1: APFS Volume Macintosh HD 15.4 GB disk3s1
2: APFS Snapshot com.apple.os.update-... 15.4 GB disk3s1s1
3: APFS Volume Preboot 563.8 MB disk3s2
4: APFS Volume Recovery 827.4 MB disk3s3
5: APFS Volume Data 264.7 GB disk3s5
6: APFS Volume VM 20.5 KB disk3s6
/dev/disk4 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *31.1 GB disk4
1: DOS_FAT_32 SONY MEDIA 31.1 GB disk4s1
❯ diskutil unmountDisk /dev/disk4
Unmount of all volumes on disk4 was successful
❯ which dd
/opt/homebrew/opt/coreutils/libexec/gnubin/dd
❯ ls -d *.iso
archlinux-2022.08.05-x86_64.iso
❯ sudo dd if=./archlinux-2022.08.05-x86_64.iso of=/dev/rdisk4 bs=4M
Password:
196+1 records in
196+1 records out
824520704 bytes (825 MB, 786 MiB) copied, 37.6284 s, 21.9 MB/s
書き込みが成功するとこのコンピュータで読み取れないディスクと言われるので、無視をクリックしてUSBメモリを取り出します。
pacmanの再インストール(失敗含む)
インストール時と同様にマウントしてchrootを行います。
Intel NUCのeMMCにインストールしているため、ディスク名は一般的な状況と異なりますが適宜読み替えてください。
mount /dev/mmnblk0p2 /mnt
mount /dev/mmnblk0p1 /mnt/boot
mount -t proc proc /mnt/proc
mount --rbind /sys /mnt/sys
mount --rbind /dev /mnt/dev
pacman --root=/mnt --cachedir=/mnt/var/cache/pacman/pkg -Syyu
この後再起動すると Failed to mount /boot
等が表示され、emergency shellしか起動できなくなりました。
どうやら最新のインストールメディアで行ったばかりにkernel versionの不一致が起こってしまったようです。
そのため、再度インストールメディアから起動します。
mount /dev/mmnblk0p2 /mnt
mount /dev/mmnblk0p1 /mnt/boot
arch-chroot /mnt
pacstrap /mnt base linux linux-firmware
この後再起動したところ、正常に戻りました。