2008/06/01(Sun)ディスク故障

2008/06/01 20:45 Software::Windows
昨日のVistaインストールでブートローダーが上書きされてしまったのを直そうと、今日色々やってみたのだが、余計に壊してしまった。

ブートローダーの復旧

対象のマシンにはHDDを物理的に3台積んでいる。
それぞれα、β、γとすることにすると、αが今回インストールしたVista、βが今まで使っていたXP、γが緊急起動用の昔のXPである。

αにインストールしたとき、βのブートセクタを壊してしまったので、αの接続を外してβの起動優先度を1番上にし、回復コンソールをCDブートで起動した。

ここで、ログインするときに何故かCドライブ(β)が確認できない。一応γへの回復コンソールログインが出来るようだったので試してみた。

無事にログインし、DIR C:を試してみると、何故か"列挙できない"という旨のエラーが帰ってきた。
「どーせ、ブートセクタが壊れてるからNTLDRを認識できず、したがって何か微妙な状態になってるんだろう」位にか考えておらず、fixmbrとfixboot c:を試したのだが、その時どちらも正常完了したものの、何故かFATとして認識されていた。


この時点で青ざめたのだが、ブートシーケンスまで行ってみるとNTLDR is missing。
と言う事はブートセクタは直ったわけだ。


ファイル構造がどうなっているかをαに入れたVistaから確認すると……


「10MBのパーティション???しかも、FAT12???」

開いてみると

αのVistaから見ても、γのXPから見ても、βの中には4バイトのファイルが一個あるだけだった。

念のためKNOPPIXを試してみたが、パーティションはちゃんとNTFSなものの、中身は文字化けしまくっていて読めない。

red:えーー!

どうやら

HDDの論理テーブルを壊してしまったようだ……。
幸い最重要なMy Documents辺りは95%位バックアップに頼っていいと思うのだが…。200GB近くのデータが失われるのはやっぱり辛い。

となれば復旧

αに入っているけど、とりあえず使い物にならないVistaはフォーマットして、こちらに復旧させる事に。
γで起動して、復旧ソフトを立ち上げてみる。


まずは、以前にお世話になった「R-Studio データレスキュー PRO」を試してみる。
以前もシステムディスクが壊れたとき、これにお世話になったが、復旧率は微妙だったかなぁ……。

▼セクタースキャンしてみた。不思議なパーティションが認識されている
r-studio_rescue1.png


今回も試してみたけど、ディスクの最初の方のMFTが壊れてて読めないのか、ルートディレクトリにぶら下がってるディレクトリが読めた程度、ファイル群は全て削除されたものとして点々バラバラに検出された。

ファイルは戻せるかもしれないが、これでは元のディレクトリに戻すのは骨である。
▼ツリーが1階層で切れている……
r-studio_rescue2.png

次に試してみた復旧ソフト

FinalDataという有名すぎる復旧ソフトを試してみた。とはいえ、2006とかもうかなり前のバージョンだけど。

こちらはさすがに大御所だけあって、半端ない。

簡易スキャンではさすがに無理だが、パーティション検出をきちんと行って、セクタスキャンさせたところ、わらわらファイル名が出てきて、ディレクトリ構造も検出できている。

あと数時間で全クラスタのスキャンが終わるようだが……。


(追記)
結局ディレクトリ構造やファイル構造まで復元できていたが、ファイルの中身がぐちゃぐちゃで使い物にならなかった。やはり、パーティションタイプがへんちくりんになってしまった以上、どっかで勘違いを起こしたんだな…。
今までのデータにはお別れを告げて、新しいシステムを組もう……(涙

教訓

HDDの値段も下がってきたし、ソフトウェア的にでもミラーリングするシステムを作っておくのが良いかも…。
HDDを近日中に買おう……。


とかいって、前同じドライブを2台買ったけど、あればあるようにオリジナルデータを大量に溜め込んでしまうんだよな(汗

2008/06/01(Sun)OSインストとか…

2008/06/01 7:32 Software::Windows
さて、メモリを増設したところでx86からx64に環境を移そうと考えているのだが色々問題が出てきたので解決してみた。

Vista x64で…

Ntfs.sysのBSODが発生することがある。
OSのみインストール後、SP1を当てている所で起きた事もあったし、今日なんかはOSインストール中に起こった。
全く不定期に起こるのでよく分からないのだが、ディスク系のトラブル……?ディスク自体は全然元気なのだけど。

Vistaのブートローダー

Vistaからは、XPまでのNTLDRとboot.iniを使う方式は廃止され、BCD*1と言う情報でブート情報を管理するようになりました。
具体的にはMBRのコードと、ブートマネージャ*2と、\Boot以下にあるファイル群(BCD及びブートマネージャのローカライズファイル)でデータを保持しているわけですが、インストール時に注意があります。

このBootフォルダが置かれるのはインストールパーティションではなく、1番最初のHDDのパーティションです!
ゆえに、BIOSのハードディスクの起動順序の最初のパーティションBootディレクトリとMBR上書きされます!!

ディスクごとにマルチOSを構成している自分のような場合は、うっかりBIOSで起動順序の指定を間違えると、例えばXPが入っているOSのブートローダーをぶっ壊します…orz


とはいっても、ただ壊すわけではありません。
仮に、今Vistaを入れようとしているHDDをα、既存のHDDをβとし、βにはXPが入っているとします。
また起動優先度(BIOSの設定)はβ>αとしていて、DVDブートでVistaをインストールしたとします。

すると、当然のようにVistaはαへインストールされるわけですが、ブートローダー・ブートマネージャはβに入ります。
βのXPが起動しなくなっては困るので、起動エントリにβのXPを起動するエントリを追加します。

整理すると、
  • αのMBRには何も入っていない。ブートローダーもブートマネージャもない。*3
  • βのMBRにはVistaのブートローダーが居る。これはβ上のブートマネージャを参照する。ブートマネージャはβ上のBCD情報を参照して、そこからαのVistaを起動するか、βのXPを起動するか選ぶ。
という、非常に気持ち悪い状態になります。*4
このまま運用できなくはないものの、もしβのHDDを取り外してしまったらαのVistaは起動できなくなります。

# まぁ、XPやXP以前の頃も↑のような問題はある上、認識したハード順にドライブレターが振り分けられるため、システムドライブがC:とならない事もある。Vistaでは、システムドライブが常にC:となるようになっただけでも偉いかもしれない。


というわけで、何が言いたかったかと言うと、OSのインストール中は、インストール先HDD以外は物理的に取り外しましょう^^*5

*1 : ブート構成データ

*2 : BCDを呼び出すソフト

*3 : DVDから起動して"修復"を試してみたけど、「ブートマネージャが見つからない」と文句を言われただけで終わった。ブートマネージャをインストールするコマンドは分からない…

*4 : 1ディスクにパーティションを切ってXPを入れている状態で、Vistaを入れたとき、簡単にデュアルブートになるように……とかいうのを意図して作ってあるのだろうが。

*5 : Linuxでもブートローダーが予期せぬ場所に入れられてしまった経験があるので、セットアップは何処にインストールするのか明示すべきだな。

Dynabook

さて、お次はDynabookの話題。
↑のように頻繁にOSを入れなおしたり環境を変えるタワーPCとは違い、ノートなのでハードの大きな変化もないし、構成的にも自作よりは安定していると言える。
というわけで、私は未だにDynabook AX1/424CMEを愛用している。メールを見るための安定したマシンとして。


が、最近たまにIDE #1 ERRORというエラーをBIOSのPOSTで吐くようになった。
これをはじめてみたときは、「終にHDDがお亡くなりか!?」と焦ったものだが、HDDは#0である。

つまり#1とは内蔵のCD/DVDドライブが問題ということ。メッセージと同様にアクセスLEDも点灯しっぱなしだし、ディスクイジェクトボタンは効かないし……。


このノートは、稼働中に雨漏り直撃で壊れたのを復活させた時に散々バラし慣れているので、必要最小限で分解し、エアーダスターを少々……。

と、米粒ほどの埃が沸いて出てきたのだ。


取り除いて元に戻すと認識。やったね!


この手のエラー(IDE #1 ERROR)が出るときは、ハードの故障を疑う前に、埃を除去をしてみるといいですよ。


#このノート、事あるごとに「もう買い替えじゃなかろうか…」と思ってしまうけど、結局直ってしまう不思議……。

2008/05/31(Sat)Windows2000でWPA2

2008/05/31 0:48 Software::Windows
無線でWPA2/WPA2-PSKを使う場合の設定というのを以前書いたけど、Windows2000でWPA2を使う場合にはこのパッチは使えない。

どうしたらいいものか…と思ったら、バッファローのWLI-U2-KG54の場合だと、公式HPのドライバを入れてみると、Windows2000でもWPA2-PSKが使用可能になった。

# バッファローの場合、クライアントマネージャのインストールだけではWPA2が使えない模様。

2008/05/14(Wed)x64とx86

2008/05/14 1:19 Software::Windows
x64なOSはVistaで初めてなのだけど、x86の扱いとx64の扱いや挙動には注意する点が多いと思う。
そのメモ。

x86アプリのレジストリ

x86をx64でエミュレートしているアプリケーションに関するレジストリエントリの場所はこちら。
HKEY_MACHINE\Software\Wow6432Node\以下。
例えば、x86系アプリのスタートアップエントリは、HKEY_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run\からHKEY_MACHINE\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Run\に変更されていて、前者の方はx64なアプリケーションだけが登録されているっぽい。

Program Files

C:\Program Files\以下にはx64アプリが入り、x86のアプリケーションはC:\Program Files (x86)\以下に格納されるらしい。
長ったらしい。
そして何故かIEの起動ショートカットが32ビット版と64ビット版が用意されている。Quick Launchには32ビット版だけ。
おそらく本来は64ビットだけにしたいのだろうけど、プラグインのことも考えて32ビット版を残したのでは……。

動くアプリ、動かないアプリ

基本的にx86ものはx64でも動く。が、プリンタドライバに干渉するAcrobat(パッチで動作する模様?)や、ネットワークの低層に干渉するファイヤーウォールなんかは厳密にアーキテクチャ環境が物を言うらしい。

動かなかったもの
  • Kerio Personal Firewall ver.2
  • Acrobat 8.0(8.1 UpdaterとVistaパッチで動くらしいが…うまくいかない)
  • ちょっと前のプリンタ・スキャナ等のドライバ
さっさとx64に移行しよう、皆。

2008/05/14(Wed)vLite

2008/05/14 1:18 Software::Windows


VistaのSP1統合はどうやるんだとググると、Sysprepを用いてやる面倒な手法が書いてあって、これしかないのかと思っていたのだけど、XPや2000の統合インストールを作成できるnLiteの親戚、vLiteというのを使うと、簡単に統合できるらしい。

今度試してみよう。