○目的
1.ThinkPad X40内蔵HDDのWindowsをUSBメモリへバックアップする。
2.USBからWindowsをブートできるようにする。
3.安物のUSBメモリから起動しても実用に耐えれるのか検証する。
○結論
1.バックアップできた。
2.バックアップしたUSBメモリからWindowsを起動できた。
3.書き込みの頻発するソフト(Webブラウザ等)は実用に耐えられないが、それ以外なら何とか・・・
※Webブラウザは、キャッシュをRAMディスクに変更すると、実用的に動く。
○用意したもの
1.ThinkPad X40(バックアップ元。)
2.USBメモリ 4GB(バックアップ先。\2,000弱の安物)
3.USBメモリ 256MB(Puppy LinuxがBOOTするようインストール済み。CDドライブがあるなら、Puppy LinuxのライブCDでも可)
4.PeToUSB(ブートドライブ作成ソフト。http://gocoding.com/からダウンロード)
○バックアップ手順
1.HDDの内容を整理する。
・バックアップ先のUSBメモリが4GBしかないので、不要なファイル等を削除して、3GB程度に抑える。
・今回は、一度Windows XP SP3をクリーンインストールし、ThinkPad用のドライバを適用。その後、必要なアプリを導入。
※クラスタサイズが4KB→64KBに増えるので、ギリギリだと収まりきらないかも。
2.USBメモリ(4GB)をUSBブート可能な形でフォーマットする。
PeToUSBを実行し、フォーマットする。そのとき、下記のオプションをONにしておく。
・Enable Disk Format
・Quick Format
・Enable LBA(FAT16X)
※FAT32だとなぜかブートできない。
3.USBメモリ(4GB)へブートマネージャをインストール
HDDのC:\から下記ファイルをコピー。必ず1)から4)の順にコピーする。
1)ntldr
2)ntdetect.com
3)bootfont.bin
4)boot.ini
※2)~4)の順序は違っても起動するかも
4.USBメモリ(Puppy Linux)からLinuxを起動。
他のLinuxでも良いが、Puppy Linuxだと起動後にUSBメモリを外せるので便利。
PE WindowsのCDがあるなら、そっちの方がいいかも。
5.HDDの内容をUSBメモリへコピーする。
・コピーの方法は、GUIでコピーするなり、cpコマンドを使うなり、お好きな方法で。
・すでにコピー済みのntldr、ntdetect.com、bootfont.bin、boot.iniは絶対にコピーしないこと!
・コピー後にUSBメモリ内のdesktop.iniファイルをすべて削除しておく。(6.以降で行ってもよい)
※Linuxなので、一部属性がコピーされず、起動時にdesktop.iniファイルが開かれたり、スタートメニューへdesktop.iniが表示されたりするため。
※PE WindowsなどのWindowsからコピーした場合、削除する必要はない。
6.HDDからWindowsを起動する。
※この時点ではUSBから起動しても、起動中にブルースクリーンになる。
7.USB内のWindowsのレジストリを開く。
1)ファイル名を指定して実行→regeditでレジストリエディタを起動
2)HKEY_LOCAL_MACHINEを選択→メニューのファイル→ハイブの読み込み
3)D:\WINDOWS\system32\config\systemファイルを開く(USBがDドライブの場合)
4)キー名に「SYSTEM2」を指定する。
8.USBのドライブ名とHDDのドライブ名を入れ替える。
※下記はUSBメモリがDドライブの場合。違う場合は適宜変更すること。
1)HKEY_LOCAL_MACHINE/SYSTEM2/MountedDevicesを開く
2)「\DosDevices\D:」の名前を「\DosDevices\CC」に変更する
3)「\DosDevices\C:」の名前を「\DosDevices\D:」に変更する
4)「\DosDevices\CC」の名前を「\DosDevices\C:」に変更する
※HDDのドライブ名「\DosDevices\C:」とUSBのドライブ名「\DosDevices\D:」の名前を入れ替えただけ。
9.起動時にUSBドライバを読み込むように変更する。
1)HKEY_LOCAL_MACHINE/SYSTEM2/ControlSet001/Services/usbehciを開く
2)「Start」の値を0に変更する。
3)「Group」の値を「System Bus Extender」に変更する
4)HKEY_LOCAL_MACHINE/SYSTEM2/ControlSet001/Services/usbhubを開く
5)「Start」の値を0に変更する。
6)「Group」の値を「System Bus Extender」に変更する
7)HKEY_LOCAL_MACHINE/SYSTEM2/ControlSet001/Services/usbstorを開く
8)「Start」の値を0に変更する。
9)「Group」の文字列値を新規作成し、値を「System Bus Extender」に変更する
10)「Tag」のDWORD値を新規作成し、値を3に変更する
11)HKEY_LOCAL_MACHINE/SYSTEM2/ControlSet001/Services/usbuhciを開く
12)「Start」の値を0に変更する。
13)「Group」の値を「System Bus Extender」に変更する
※ControlSet001以外にControlSetがあるなら、1)~13を同様に行う。
10.USBのレジストリを切り離す。
※切り離すまで、レジストリエディタを終了してはいけない。
1)HKEY_LOCAL_MACHINE/SYSTEM2を選択する
2)メニューのファイル→ハイブのアンロードを選択
3)確認ダイアログで「はい」を選択
11.ブートマネージャの設定を行う。
USBメモリのboot.iniを修正する。今回は下記のようにしてみた。
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="USB memory Windows XP Professional" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="Internal HDD Windows XP Professional" /noexecute=optin /fastdetect
12.USBからWindowsを起動してみる。
これで、USBからWindowsが起動できるはず。
※Windowsのロゴ画面が一瞬表示されてブルーバックになった場合、8.と9.のレジストリの設定が正しくない。
○実用検証
1.起動速度
電源ONからWindowsが使えるようになるまで、およそ1分20秒。HDD起動の場合は1分10秒程度。
HDDにくらべ、あまり変わらない。
2.Windowsの操作
スタートメニューを開いたり、エクスプローラを開いたりするとき、多少の引っかかりがある。
(HDDよりも、長めの引っかかり)
3.FireFoxの起動
5分以上かかって起動し、起動後も激重。
→キャッシュをRAMディスクにすると、HDDと同様の快適な操作に!
4.アプリのインストールなど
書き込み遅くて、怖くてできません・・・
5.Windowsの終了
時間は計っていないが、HDDの1.5倍程度の時間が掛かっている。
USBメモリのWRITE性能が悪い模様・・・
6.全体的な感想
HDDに比べ、全体的にもたつきがあるが、使えないレベルではない。
SLCの高速USBメモリやCFを使えば、内蔵HDDより快適になりそう。
256MB程度のRAMディスク導入を激しく推奨。
○おまけ
1.今回使用したHDDの性能(HGST TravelStar 40GB/HITACHI_DK13FA-40B)
低性能で有名なThinkPad X40用HDD。
--------------------------------------------------
CrystalDiskMark 2.1 (C) 2007-2008 hiyohiyo
Crystal Dew World : http://crystalmark.info/
--------------------------------------------------
Sequential Read : 18.610 MB/s
Sequential Write : 16.742 MB/s
Random Read 512KB : 12.094 MB/s
Random Write 512KB : 11.980 MB/s
Random Read 4KB : 0.254 MB/s
Random Write 4KB : 0.540 MB/s
Test Size : 100 MB
Date : 2008/09/06 18:29:47
2.今回使用したUSBメモリの性能(A-DATA PD14 4GB)
低性能で有名なMLC搭載USBメモリ。
--------------------------------------------------
CrystalDiskMark 2.1 (C) 2007-2008 hiyohiyo
Crystal Dew World : http://crystalmark.info/
--------------------------------------------------
Sequential Read : 28.966 MB/s
Sequential Write : 6.131 MB/s
Random Read 512KB : 28.826 MB/s
Random Write 512KB : 1.985 MB/s
Random Read 4KB : 5.055 MB/s
Random Write 4KB : 0.025 MB/s
Test Size : 100 MB
Date : 2008/09/06 18:46:48
○参考サイト
・内蔵HDDからUSB-HDDへWindowsをバックアップする手順が公開されている(今回主に参考にしたサイト)
http://plaza.rakuten.co.jp/comapple/diary/200709160000/
・USBからの起動について色々と情報が揃っている
http://orz.kakiko.com/kaeru/usbboot.html
・USBメモリのベンチマークが揃っている。USBメモリ選定の参考に。
http://usbmem.heriet.info/