○目的 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/