TuxOnIce で resume 失敗 -> USB メモリから rescue boot.
suspend のイメージを swap へ変えようとしたのだけれど, grub の update を忘れていて嵌る.
幸い妹が USB メモリを持っていたので, dual boot の Windows 側で USB メモリで installer を作成し, レスキューブートしてファイルを修復し, 事無きを得る.
「resume 時に異なるカーネルから起動するとマジ死亡だから注意」を体験.
教訓の為にメモしておく.
事の発端.
TuxOnIce(旧 Software Suspend2) で, 今迄 FileWriter を使っていたんだけど, resume する image を変えたり, 別に保存する必要も無いので SwapWriter に戻そうとした.
やることは
な訳ですが, 再起動せずに suspend しちゃった訳.
で,
「resume しないな」
「あ, grub のパラメタ違うじゃん」
「update-grub」
再起動
「を, resume したよ...あれ? read-only?」
なんと /etc/fstab が無い(笑)
initrd があって, grub で root を指定しているので, 起動はできる. けれど /proc が無いので全て read-only になっちゃう. single user mode で /etc/fstab を作成しようにも駄目. うーん.
USB メモリに Debian installer をセットアップ.
USB メモリがあったので, Debian installer 作成し, resuce boot してみることに. 作成手順は以下の通り.
- Windows で起動.
- debian installer の hd-media の中から、boot.img.gz をダウンロードしておく.
- 同じく, debian installer から, 適当な iso イメージをダウンロードしておく.
- とりあえず, どちらも C:\ 直下に置いた.
- Windows 用の syslinx を取得しておく.
- single user mode で起動.
- まっとうに使える環境があるなら, それで良いのだけど, 今回無いし(笑).
- USB メモリを挿す. -> /dev/sda だった.
- VFAT なファイルシステムを作成する.
# mkfs.msdos -I /dev/sda [sda は USB メモリのデバイス]
# mount -t ntfs /dev/hda1 /NTFS [ /NTFS は依然から存在していた. 無かったらどうすんだろ. /home ?] # zcat /NTFS/boot.img.gz > /dev/sda # mount -t vfat /dev/sda /mnt # cp /NTFS/**.iso /mnt # umount /mnt # umount /NTFS
# syslinux -a D:
- 再起動して USB メモリから boot.
...を, ちゃんと起動したよ.