いろいろアップデートされてたので何とかコンパイルまでは終わったのですが、HALが使えなくなるってNEWSにあったのにxdmを外すのを忘れてリブートしてしまった。リブートされるとマウスとキーボードをまったく受け付けず、電源ボタンを押せばshutdownされるという状態でした。grubのブート時のパラメータ指定を変更して何とかなれば復旧も楽だったのですがかなり苦労しました。
最初はtelnet経由で何とかなるだろうって思ってたらdenyされまくって謎。次にインストールCD作戦でしたが、ドライブ不在というハード的な問題に。インストール時にはDVD-ROMドライブがついてたのですけど、SATA I/Fドライブで、以前バルクを買ってきてつなぎなおしたドライブでしたが、別マシンでRWドライブが必要になったので取り外してました。
次に、ふとシリアル経由でログインできないか?と期待して別マシンとクロスケーブルでつないでみるも玉砕。CDじゃないと駄目か?と思ったのですが、USBメモリから何とかならないか?と思って試したら何とかなりました。もう一台Linuxを入れたマシンが必要ですけどね。Windowsからは知らない。
検索すると見つかるのですが、うちはhttp://blog.goo.ne.jp/gleaning/e/3e9c708fe9f5f6486bd2557b32404c15を参考にしました。
1.インストールCDイメージをダウンロード。
2.USBメモリをVFAT(FAT32)でフォーマット。容量は256MB以上あったほうがいいかも。
3.インストールCDをマウント。
4.USBメモリをマウント。
5.インストールCD内の全ファイルをUSBメモリへコピー。
6.USBメモリ内に~/boot/grubディレクトリを作成して/boot/grubを丸ごとコピー。
7.grub.confを編集。参照先では手動で起動させてるのを自動にするため。
コマンド行は次の通り。
kernel /isolinux/gentoo root=/dev/ram0 looptype=squashfs loop=/image.squashfs cdroot
initrd /isolinux/gentoo.igz
8.menu.lstを一応grub.confで上書きしておく。
9.grubを起動
grub> device (hd0) /dev/sda
grub> root (hd0,0)
grub> setup (hd0)
grub> quit
こんな感じでUSBメモリのMBRへ書き込む。デバイスは自分の環境に合わせてね。
これでUSBメモリ経由で起動するとインストールCDと同様な環境が起動できる。
あとはHDDをマウントしてchrootし、書き換えるだけ。それでもうちの環境だと書き換えた内容を戻そうとするのでxorg.confをリネームしてxdmが起動失敗するようにしました。そしてコンソールからログインし、xdmを消しました。
めでたしめでたし。
chrootしてrc-updateでxdmを消そうとしたら駄目だったもので…。もう少し知識があれば駄目な理由がわかりそうですけど結果オーライだからいいや。