SyntaxHighlighter

---SyntaxHighlighter ウィジェット---

2014年4月19日土曜日

WindowsXPでも引っかかるの巻

先日、Vistaを仮想化して0x7B (INACCESSIBLE_BOOT_DEVICE)で起動失敗ループにハマった事象について書きましたが
その後XPも仮想化したらやっぱり同じ事故が起きました。

しかも、Vistaのように回復コンソールが生きてるということもなく。
「またイメージの作りなおしか...」と思いましたが、工夫で乗り切れました。

今回、XPマシンの仮想化をしようとNHCを使ったところ、なぜか見事に失敗しました。
ディスクのスキャンを掛けても、セーフモードにしてもダメ。吸出し途中でエラーで止まる。

「これはXPだからダメなのかもしれない。」そう思い、Paragon Backup & Recovery™ 2014 Freeの
CDブートでのバックアップによる吸出しを試しました。成功。

そのまま、仮想マシンでもCDブートし、まっさらな仮想ディスクにリストア。成功...かとおもいきや、0x7Bです。
「多分、書き込み自体は成功している」という憶測の元、次のことをしました。

1.仮想マシンからParagon Backup & Recovery™ 2014 Free ブートCD(Linuxらしい)のファイル救出ウィザードで
 Driver.cabと、system(レジストリファイル)を外付けHDDに吸い出し
2.仮想マシンを終了し、外付けHDDをホストマシンで開き、Driver.cabとsystemを取り出す。
3.Driver.cabを解凍して、前回の記事でリンクしたMicrosoft公式で指示されているドライバ4ファイルを取り出す。
4.systemをハイブとしてregeditで取り込み。Microsoft公式のレジストリ書き換えファイルに少し手を加え、
 本体ではなくハイブに書き込むように調整。実行して書き換え。

↓参考
広島パソコン出張サポート 「VMware Windows XP STOP:0x0000007B 広島市中区へ訪問サポート修理 」 PCサポートフィールド 
http://pcsfield.com/support/archives/support2889.html 

5.systemとドライバ4ファイルを外付けHDDに書き込む
6.仮想マシン起動。ファイル救出ウィザードを使って、仮想マシンの上記ファイルを外付けHDDのファイルで上書き
7.再起動して無事起動。

結論:先に対策しとけば困らない

なお、この方法が原因なのかわかりませんが、XP起動後にライセンス認証の要求をされ、
電話で認証するはめになりましたとさ。

Windows VistaのHDDイメージがVMwareで起動しない件の解決法

ちょっと事情がありまして、今までVistaを入れて居たPCの中身を
いったんすべて消してまっさらにしようと考えました。

でも、環境としては残しておきたいということで、昔から何度かやっていた
物理ディスクから仮想化イメージを作成して、仮想PCとして動作させることにしました。

しかし、色々とハマったので記録しておきます。

---

ハマリ点1. VirtualPC 2003ではなぜか起動できない。

これは初めて仮想化した時にハマったときので、
昔の記憶なのでアレですが、なぜかVirtualPC 2003では既存のイメージから
Vistaを正常起動させることができませんでした。
なので、私はVMware Player4を使っています。こちらだと非常に快適に動きます。

ハマリ点2. 物理ディスクの仮想化がうまくいかない。

今回、有名ドコロのVMware vCenter Converter Standaloneを試してみましたが、
なぜか「容量不足」のエラーを吐いて作成が1%しか進まないという現象に悩まされました。
仮想化イメージの書き込み先のHDDは500GBもあるのに。 (仮想化対象は160GB)

しかたがないので、今まで何度もお世話になってきたNHC(euee様)のお世話になることにしました。
http://euee.web.fc2.com/tool/nhc.html

仮想ディスクの変換が主なようですが、管理者権限で起動すると物理ディスクからも
様々な形式のイメージを作成してくれるようになります。(UACオンのPCでちょっとだけハマリました)

内蔵HDD→USB2.0 HDD で、3時間程度で仮想化完了。

ハマリ点3. 0x7B (INACCESSIBLE_BOOT_DEVICE)で起動失敗ループにハマる。

今回一番ハマりました。
仮想化したイメージを、一旦新しく作った仮想マシンの仮想ディスクに上書きして起動するのですが、
Vistaの起動画面(バーが流れる画面)に数秒入ったあと、ブルスクを吐いてリブートします。

最終的に参考にしたのは以下の3つのサイト。

起動ドライブをPATAからSATAに変更した時のINACCESSABLE_BOOT_DEVICE復旧方法 - Kerosoft : Modus Operandi
http://mo.kerosoft.com/0175

Solve a Stop 0x0000007B error when booting Vista from physical disk image in VMWare | public void Ph…
http://www.vodovnik.com/2010/05/09/solve-a-stop-0x0000007b-error-when-booting-vista-from-physical-disk-image-in-vmware/

Windows XP のシステム ディスクを他のコンピューターに移動した後に STOP 0x0000007B エラーが表示される
http://support.microsoft.com/kb/314082

しかし、ここに乗っていることを実行しただけでは、症状は変わらず。

結果どうしたかというと、
1.回復コンソールからコマンドプロンプトを開く (こちらは最初から正常に動きました)
2.上2つのサイトで言われている通り、ハイブとしてマシンのレジストリを読み込み
  (注:これをしないと、回復コンソールの一時的なレジストリを弄ることになり無意味です。)
3.読み込んだハイブのControlSetxxx\services\以下を「SCSI Miniport」で検索。(xxxは3桁の数字。複数存在する場合は全部)
4.見つかったものキーの「Start」の値を片っ端から「0」にしまくる
5.見つからなくなるまで3,4を繰り返す。

これで起動しました。

ちょっと乱暴な方法だとは思いますが、SCSI関係のドライバが読み込まれないのが原因というのが
上記3つのサイトでなんとなくわかったので、全部起動時に読み込むようにしてみた次第です。

2014年4月4日金曜日

RaspberryPi TypeA導入

前々からサーバーとして利用していたTypeBとは別に
電子工作用にTypeAを導入しました。

なぜわざわざタイプの違うのを選んだのかというと、
勉強も兼ねてが1つ、無線で繋ぐので有線LANポートが要らなかったのが1つです。
あと安かったから。

今は、ひと通りのアプリケーションやモジュールの導入をしています。
無線接続も下の商品を使ったところ、なんの設定もなしに出来ました。

Logitec 無線LANアダプタ 150Mbps 11n ブラック LAN-W150NU2AB ロジテック
 http://www.amazon.co.jp/dp/B00BQ6WPKA/

とりあえず、ヒートシンクの取り付けをしてから色々遊びたいと思います。
Arduino+Ethernetシールドではやりづらかったこと(主にSSL通信)が、
しかも無線でできるので、楽しみです。

ところで、私は10Ahのモバイルバッテリーを持っているのですが、
20時間近くは動く計算になるんですね。実際には15時間行けばいいほうでしょうか。

RasPiをケースに収める際、モバイルバッテリーと一体化させることも検討しています。