Root 飛ぶ T41 の HDD クラッシュ

バックアップ?何それおいしいの(沈)


T41 起動不能?

 それは突然訪れました。メインマシンが急にハングアップしました。それ自体あまりうれしいことではありませんが、それでも強制再起動で、これまでも対応してきました。そのときもいつものように、電源スイッチを押して強制電源断とし、数十秒待った上で、再度電源スイッチを押下しました。IBM と ThinkPad のロゴが表示され、いつもの起動シーケンスが流れていきました。が、その日は少々事情が異なりました。

 

UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
(i.e., without -a or -p option)
[FAILED]

*** An error occurred during the file system check.
*** Dropping you to a shell; the system will reboot
*** when you leave the shell.
Give root password for maintenance
(or type Control-D to continue): 

 このエラーメッセージをみたとき、まだそれほど深刻な状態ではない、と少々楽観的に考えていました。Linux を使用していて、予期せぬ電源断となってしまった場合、このメッセージを拝むことは、そう珍しいおことではありません。fsck にて、ディスクチェックを行えばよい、ということがこれまでの対応であったことから、root のパスワードを入力し、fsck コマンドを実行しました。しかし、返ってきた結果は見るも無断なものでした。

fsck に投げ出されてしまいました!

 管理領域とも呼ぶべき superblock の損傷を告げられてしまいました。さすがに、これには愕然としました。というのも、superblock が壊れている以上の、そのパーティション内のデータは、ほぼあきらめなければならない、という状態に他ならないためです。実際に、superblock の再構築を試みましたが、一切受け付けられず、事態が非常に深刻であることを痛感させられました。

 ここで、察しのよい方は、あることに気づくと思います。それは、バックアップはどうしたのか、ということです。まあ、ここまでの間でなにもふれていないのですから、推して知るべし、ということだけを書いておきます。弘法も筆の誤り、というところかもしれません(笑)

 と、ないてばかりもいられません。不幸中の幸いとして、/home や /var などを別パーティションに割り当てしていることから、これまで作成してきたデータや個人設定なども、ある程度は移行できるはずです。今のままではなにもできないので、早めに再構築することが必要となっていました。

OS インストール前の準備

 OS をインストールするためには、何が必要でしょうか?そうですね。メディアとそのメディアを読み込みできるデバイス、ですね。ThinkPad T41 には、工学ドライブが内蔵されており、再導入する Linux も、ネットからダウンロードして、CD-R に焼き付けすればよいわけです。前回インストールしたメディアが見つかればよいのですが、管理がまずいようで、ちょっとすぐには出てくる状態ではありませんでした(苦笑)

 さて、それではさっそく CD-R を焼くことになるわけですが、ここで一つ問題が生じました。ThinkPad T41 には、DVD-ROM/CDRW のコンボドライブが搭載されています。従って、焼き付けるためのメディアを用意して、焼き付けるデータがあれば、後は焼くだけ、と思えます。しかし、ことはそう簡単にはいきません。

 幸い、Dual Boot にしていたおかげで、Windows は起動可能な状態となっていました。Windows には CD-R への書き込み機能が含まれているので、通常のデータ CD であれば、何も考える必要もなく、焼くことができます。通常のデータ CD であれば、ですが。

 Linux の場合、多くは CD-R に焼き付けるイメージファイルの形で配布されています。この場合、単にファイルとして焼き付けても、意味をなさず、イメージファイルを焼き付ける機能をもったライティングソフトを別に用意しなければなりません。Windows に標準の機能だけでは、作成ができないのです!さてこまりました。以前は B's Recorder GOLD などを持っていたのですが、最近はすっかり Linux 上でばかり焼いていたので、Windows XP 用のライティングソフトなどは持っていません。

 さあ、どうしたものか、と途方に暮れてばかりもいられません。次なる手をうつために、足りない頭をひねりました。そんな時に思い出した存在が CD manipulater でした。Windows XP の標準機能だけでは不可能な Audio CD-R の作成も可能なこのツールであれば、イメージファイルを焼き付けることも可能なはず、と考え、さっそく google にお伺いを立てたところ、無事入手することに成功しました。

 あとは、イメージファイルを入手して、CD-R に焼き付ければ、準備はそろいました。最低限、OS さえ復旧できれば、後の作業は自動的に流れていきます。インストール作業には時間もある程度かかりますので、その間に必要となる CD を探しておく、という手も十分にとれますしね(笑)。

OS 再インストール(1回目)

 壊れてしまったルートパーティションについては、フォーマットし直さなければなりません。しかし、/home には以前のデータや設定ファイルが残っていることから、フォーマットしてはいけないわけです。また /var には、apt で入手したパッケージが保存されていることから、この内容も保持することで、再インストール後のアップグレードは素早く終わるはず、という淡い期待もありました。もっとも、この期待が、後で大きな問題を引き起こすことになるとは、この時点では予想だにしていませんでした。

 残っているパーティションについては、そのままマウントし、修復不可能となっているルートパーティションのみをフォーマットするように指定することで、インストール作業そのものは、1時間もかからずに終了しました。ここまでは非常によい流れで進んでいました。

 異変は、OS のアップグレードを行おうとした時に発生しました。apt-get update をし、apt-get upgrade を行ったところ、更新パッケージはない、といわれてしまいました。インストールに使用したメディアは、作成こそ最近ですが、中身はリリース当時のものですから、すぐにでも更新をないと、セキュリティホールだらけ、とさえなりかねません。それが、更新パッケージはないというのですから、正常ではありません。

 理由は、/var をそのまま残したことにありました。apt の情報が /var に保存されているため、以前の情報が残っており、最新版になっているという誤った情報が残ってしまったのです。これには、さすがに参りました。apt-get clean を実行してみても、相変わらず更新パッケージはないというメッセージが表示されました。/var の内部構造に詳しければ、apt に関する部分のみを削除して、apt を再実行することができるのでしょうが、私の力量はそこまではありませんので、/var についても再構築することが必要、という結論に達しました。どうせ、Bフレッツなのですから、けちくさいことをいわないで、さくっとフォーマットしてしまえばよかったのですが、それをけちってしまったことから、よけいな手間をかけることになってしまいました。

OS 再インストール(2回目)

 ということで、2回目の再インストールを行うことになりました。今度は /var もフォーマット対象としました。フォーマットにかかる時間分だけはのびましたが、それでも1時間程度でインストール作業は終了しました。

 インストール作業終了後、apt を実行したところ、無事、更新パッケージを見つけてくれました。さすがに、かなりの更新パッケージがありましたが、B フレッツ様々で、更新まで含めて、30分程度で終了してくれました。

 と、ここまでは非常に順調でした。

 2回目の再インストールの際、手違いで、無線 LAN デバイスである IntelPro/Wireless 2200BG の設定をしないで進んでしまいました。単に Ignore を選択しているのであれば、次回の起動時に kudzu が見つけてくれるのですが、うっかり Do Not Anything を選択してしまったものですから、kudzu を何度実行しても、設定までたどり着くことがありませんでした。これはさすがに参りました。

 google で検索したところ、/etc/sysconfig/hwconf に kuzdu が見つけたデバイス情報がある、ということを発見しました。そこで、vi にて当該ファイルを開き、IntelPro/Wireless 2200BG の情報を削除したところ、kudzu が見つけてくれるようになりました。

 次なる問題は、ATOK for Linux のインストールでした。Vine Linux は、ATOK for Linux の正式対象ディストリビューションとなってはいません。従って、導入はユーザーの責任において、行うことが必要になります。

 最初のポイントは、CD のマウントポイントの変更、という点にありました。Vine Linux でも kernel 2.6 を採用しています。kernel 2.6 では、それまで用いられていた /mnt というマウントポイントではなく、/media というマウントポイントが標準となっています。ところが、ATOK for Linux のインストーラは、/mnt/cdrom にマウントされていると決めうちになっています。従って、automount によってマウントしてしまうと、インストーラが正常に動作しない、という状態になってしまうのです。これは、最初に思い出すまで、時間がかかりました。とはいえ、ATOK for Linux が販売されていた時期は、kernel 2.4 の全盛期であり、kernel 2.6 にてマウントポイントが変更されるというのは、想定外であっても、やむを得ないところではあります。とはいえ、手動で。/mnt/cdrom にマウントしてしまえば、後はインストーラが対応してくれますので、問題としては非常に軽微なものでした。

 さて、ATOK がはいったわけですが、これがあらたな問題を引き起こすことになりました。それは、メインで使用している Firefox3 上では ATOK for Linux が利用できない、というものでした。Firefox では問題なく使用できるのですが、Firefox3 を起動すると、強制的に IM が Anthy になってしまうのです。これは、今回初めて発生したものではなく、以前にも Firefox3 を導入した時にも発生していたものでした。

 前回の記録を残しておいたおかげで、/etc/gtk-2.0/i386/gtk.immodules から /etc/gtk-2.0/gtk.immodules のソフトウェアリンクを作成し、下記のとおり書き加えることで、Firefo3 上でも ATOK for Linux が利用可能になりました。

"/usr/lib/gtk-2.0/2.4.0/immodules/im-iiim.so"
"iiim" "Internet/Intranet Input Method" "iiimgcf" "/usr/share/locale" ""

 最後の問題は、k3b が入らない、ということでした。実のところ、k3b だけではなく、task-kde 自体が apt-get でインストールできない、という状態になっていました。これは、Vine Linux ユーザーフォーラムにて、情報を見つけ、libmad を手動インストールすることで、apt-get install k3b が可能になりました。

その後...

 今のところは、稼働してくれています。ただ、ルートパーティションには、まだエラーが発生しているようです。現在搭載している HDD も、結構な年月になりますので、そろそろ交換時期なのかもしれあmせん。次回は、いよいよ3桁かな、とも思っているところではありますが、そうなると、とばしたときのダメージも大きいので、さてどうするか、といったところです。


Last Update is 2009/04/14. CopyRights Tazoe Kazuya 2009.