平衡点


2008/05/03

_ TuxOnIce で resume 失敗 -> USB メモリから rescue boot.

suspend のイメージを swap へ変えようとしたのだけれど, grub の update を忘れていて嵌る. 幸い妹が USB メモリを持っていたので, dual boot の Windows 側で USB メモリで installer を作成し, レスキューブートしてファイルを修復し, 事無きを得る.

「resume 時に異なるカーネルから起動するとマジ死亡だから注意」を体験.

教訓の為にメモしておく.

事の発端.

TuxOnIce(旧 Software Suspend2) で, 今迄 FileWriter を使っていたんだけど, resume する image を変えたり, 別に保存する必要も無いので SwapWriter に戻そうとした.

やることは

  • /etc/hibernate/suspend2.conf の修正
  • /etc/default/grub の修正
  • /sbin/update-grub
  • 再起動
  • suspend, resume の確認

な訳ですが, 再起動せずに 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 を取得しておく.
    • 今回は http://www.kernel.org/pub/linux/utils/boot/syslinux/ から入手.
  • single user mode で起動.
    • まっとうに使える環境があるなら, それで良いのだけど, 今回無いし(笑).
  • USB メモリを挿す. -> /dev/sda だった.
  • VFAT なファイルシステムを作成する.

    # mkfs.msdos -I /dev/sda     [sda は USB メモリのデバイス]
  • Windows のパーティションを mount し, boot.img.gz と iso イメージを 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
  • 再起動後, Windows 側へ.
  • syslinux で SYSLINX MBR を install.

    • USB メモリが D: と認識されたなら, cmd 上で
    # syslinux -a D:
  • 再起動して USB メモリから boot.

...を, ちゃんと起動したよ.

rescue 作業

Debian Installer で resuce boot して, shell へ行き, nano で /etc/fstab を書いた. その後, fsck.ext3 を実行して再起動.

続いて, lost+found 以下のファイルの復旧を試みる. 調べてみると, 主に /proc/数字, だったので一安心.

...他に壊れている所があると嫌なんで, もう一度 fsck.ext3 をかけてみたが, とりあえず問題無いみたい.

...ああ, 焦った.

参考文献


連絡先など
最近の日記
  • 2024/10/09
    • 1. Mastodon でのメール通知, というか Exim4 と Apparmor
  • 2024/06/19
    • 1. WSL2 での gpg-agent, ssh-agent
  • 2024/06/18
    • 1. WSL で Windows 側のフォントを利用する
  • 2024/06/17
    • 1. WSLとWindowsの時刻同期
  • 2024/06/12
    • 1. wsl2 で systemd
    • 2. wslg の設定
一覧
2006|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|02|03|04|08|09|10|11|12|
2013|01|02|03|04|05|06|08|09|10|11|12|
2014|01|02|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|09|10|
2016|02|03|
2017|01|02|03|05|06|07|09|11|12|
2018|03|06|07|10|11|12|
2019|01|02|03|04|05|07|10|12|
2020|01|02|03|04|05|08|09|10|11|12|
2021|01|02|03|05|06|07|08|09|11|12|
2022|01|02|03|04|05|06|08|10|11|12|
2023|02|03|04|06|08|09|11|12|
2024|01|02|03|04|05|06|10|
Back to Top ▲