WinPE2.0 & DOS 2in1 ブータブルUSBメモリ
こちらの続きのようなもの。
DOS 起動と WinPE2.0起動の USBメモリ を使い分けは少々面倒。
という訳で、合体、2in1 ブータブルUSBメモリ 。
自分の blog であるにも関わらず行きつ戻りつするのが我ながら面倒くさいので全部入りメモ。
短縮したいので、Windows Automated Installation Kit (Windows AIK) は WAIK、USBメモリ
は WAIK のマニュアルに倣って UFD (USB Flush Device) としばらく呼称。
調達 & 準備物
- Windows AIK
ダウンロードセンターの (旧版) Windows 自動インストール キット (AIK)から【2008/02/05追記】
(新版)Windows Vista SP1 および Windows Server 2008 用の自動インストール キット (AIK)- 必要システムとして「Windows XP SP2 (KB926044 適用済み) 」とあるのが気になるが、相変わらず何処にあるのか分からない……。[2007/01/29 追記]
KB926044 が公開されていた。問い合わせてゲットする類のQFE
http://support.microsoft.com/kb/926044
これでようやくKB926044の正体が判明
- 必要システムとして「Windows XP SP2 (KB926044 適用済み) 」とあるのが気になるが、相変わらず何処にあるのか分からない……。
- dd
Windows 環境で作業を完結したいので、Windows版の dd を
http://www.chrysocome.net/dd
から最新の dd-0.4beta5.zip を入手。
- sysLinux
http://syslinux.zytor.com/
の download から辿って新しめの物 syslinux-3.31.zip を入手
- 『DOS の sys コマンドが利用可能なブータブル FD/CD/UFD などの何か』
もしくは以下のファイル三つ- IO.SYS
- MSDOS.SYS
- COMMAND.COM
生粋の PC-DOS 2000 と WinPE2.0 の組み合わせの選択肢も取りえたものの、sysLinux動作保障外のFAT32で使いたいので、素直に手持ちの Windows98 SE ベースのブータブルCDを利用。
以下、あると便利なので利用
- Windows Vista
今ならまだ RC1 ぎりぎり入手可能かもしれない?
とりあえず、まだRC1使いまわし
【補足】プロンプトを使うときは『管理者として実行』が往々にして必要 - VirtualPC 等の仮想環境
WinPE2.0 の仕上がり確認には isoイメージファイルでそのまま確認した方が早い。
VirtualPC2007 は RC がリリース(2007/01/02)されていたので MicrosoftConnect からゲット
2GB越えのWinPE2.0 iso というモノを作る訳でもないのでVirtualPC2004でも特に支障はないはず
(700MB 程度メモリを割り当てられるとかなり快適、1.5GB まで増やして良かったと思える瞬間)
WinPE2.0 としてのブータブルUSBメモリ作成
まず、WAIK のインストールと WinPE2.0 のブータブルDVD を作成。
ブータブルCDにすると、やたら唸って五月蝿い事になりやすいのでブータブルDVDで作成するのがお勧め。
WAIK のインストール
- ダウンロードセンターからダウンロードしてきた *.img ファイルを DAEMON Tools でマウント (CDに焼くのは面倒なので)
- readme.rtf は事前によく読む
- 必要に応じてWAIK の CD にある HOTFIX\WINDOWSXP-KB914882-X86-JPN を適用 & 再起動
- WAIK をインストール
WAIK の CD の Autorun に任せたり STARTCD.EXE を実行したりして、必要に応じて .NET framework2.0 と MSXML6.0 Purser を入れながらセットアップ - ヘルプの
[Windows AIK] → [Documentation] → [Windows PE ユーザーズ ガイド]
から- 「Windows PE をカスタマイズする」
→ 「Windows PE イメージを構築する」と
- Windows PE をカスタマイズする
→ Windows PE のチュートリアル
→ チュートリアル : 起動可能な Windows PE RAM ディスクを UFD に作成する
- 「Windows PE をカスタマイズする」
作業場所は d:\winpe\x86 にしたいので、予め d:\winpe を作成しておく
- 「 Windows PE Tools コマンド プロンプト 」を実行
- 必要ファイルをコピーする為に以下のように実行
>copype x86 d:\winpe\x86
- コピーが完了したら
>imagex /apply winpe.wim 1 mountのように基本的な作業環境を展開
カレントディレクトリと作業ディレクトリが一致していなければパスはフルパス指定する
>imagex /apply D:\winpe\x86\winpe.wim 1 D:\winpe\x86\mountのようにする(上を一行で)
ここからカレントディレクトリが d:\winpe\x86 である事を前提にして相対パスでの場合のコマンド例 - パッケージの確認
>peimg /list mount日本語版 Windows AIK では日本語環境がインストール済みなのが分かる
- パッケージの追加
>peimg /install=WinPE-Scripting-Package mountな感じで順次追加
英語版 Windows AIK で日本語言語パックと日本語WMIパッケージをインストールするには、各パッケージをインポートしてからインストール>peimg /import=q:\WINPE_LANGPACKS\X86\JA-JP\LP.CAB mountWAIKの言語パックを利用する場合、 q: がWAIKのインストールCDの時は上のような感じで(それぞれ一行で)
>peimg /import=q:\WINPE_LANGPACKS\X86\JA-JP\WINPE-WMI_JA-JP.CAB mount
>peimg /install=Microsoft-Windows-WinPE-LanguagePack-Package mount
>peimg /install=WinPE-WMI-Package mount
- 必要なパッケージの追加が完了したら再確認
>peimg /list mount
- パッケージ追加作業の確認が済んだら固める準備
>peimg /prep mountを実行
- WinPE2.0環境を起動直後から101キーボード配列で利用する時には以下も実行
>peimg /lang=ja-JP /layerdriver=1 mount106キーボード配列に戻したい時は /layerdriver=6 で再実行
日本語IME (IME10)を利用したい時には Microsoft KB926181 を参照
- boot.wim 再作成
>imagex /boot /capture mount ISO\sources\boot.wim "MyPE"上を一行で
- 確認用 isoイメージ の作成
>oscdimg -n -betfsboot.com ISO MyPE.iso
相対パスだと分かりにくさ倍増なので絶対パスでの記述も参考までに>oscdimg -n -bD:\winpe\x86\etfsboot.com D:\winpe\x86\ISO D:\winpe\x86\MyPE.iso上を一行で
- 動作確認
VirtualPC でできあがった ISOイメージ をマウントして起動
おかしな事になっていなければWinPE2.0のイメージが完成
作成した ISOイメージ は DVD(もしくはCD) に焼いておく
- UFD こと USBメモリ を準備
Vista上、もしくは WinPE2.0 環境(DVD/CDなどからブートしたWinPE2.0)で 以下のように。 ( XP で diskpart を実行してもUSBリムーバブル系は選択できないので)>diskpart基本は上のパターン
DISKPART>list disk
DISKPART>select disk 1
DISKPART>clean
DISKPART>create partition primary
DISKPART>list partition
DISKPART>select partition 1
DISKPART>active
DISKPART>format fs=fat32 label=flash
DISKPART>assign
DISKPART>exit
disk 番号の確認と partition の確認はその都度しておいた方が無難
- 作成している WinPE2.0 イメージである ISO 配下のファイルとフォルダを全て UFD にコピーする
ここまでの手順の流れなら d:\winpe\x86\ISO の下にあるファイルとフォルダ
- USB Flash Device からのブート順位を適切に設定した PC で WinPE2.0 が起動可能か確認する
※1 ここが実は微妙
- WinPE2.0 として起動可能な事を確認したらブートセクタを採取
dd-0.4beta5.zip を解凍して dd.exe をパスの通った場所に置いておいて、UFD が F: の時以下のように>dd if=\\.\f: of=nt60.bss bs=512 count=1拡張子は必ず .bssにして、ファイル名は任意
ここではWinPE2.0時のブートセクタのファイルを nt60.bss に
DOS としてのブータブルUSBメモリ作成
- 予め USBメモリを取り付けた状態で
『DOS の sys コマンドが利用可能なブータブル FD/CD/UFD などの何か』
で起動して以下>sys c:いつもの事ながら DRVSPACE.BIN は削除しておくのが吉
もしくは- 以下の3つのファイルを UFD にコピー
- IO.SYS
- MSDOS.SYS
- COMMAND.COM
- WAIK のインストール先にある sys.exe 、標準でインストールしていれば次のもの
C:\Program Files\Windows AIK\Tools\PETools\sys.exe
を使える場所に用意 - WinPE2.0 (Vista)上で UFD が F: の場合以下のように
>sys f:
- 以下の3つのファイルを UFD にコピー
- USB Flash Device からのブート順位を適切に設定した PC で DOS が起動可能か確認する
※2 ここも実は微妙
- DOS として起動可能な事を確認したらブートセクタを採取
WinPE2.0 の時のブートセクタを採取した時と同様に、UFD が F: の時には以下のように>dd if=\\.\f: of=dos.bss bs=512 count=1拡張子は必ず .bss にして、ファイル名は任意
ここではDOS時のブートセクタのファイルを dos.bss に
sysLinux を設定する
- ダウンロードしておいた syslinux-3.31.zip を解凍して、現れた win32\syslinux.exe を作業場所にコピー
- 設定ファイルを一つ作成
syslinux.cfg
ブートのプロンプトで、dos [Enter] で DOS、pe [Enter] で WinPE2.0 となり、12秒放置で dos が自動的に起動する一例。
- 採取しておいた二つのブートセクタファイル dos.bss と nt60.bss 、および設定ファイル syslinux.cfg を UFD にコピー
- コマンドプロンプトで作業場所をカレントにして、 UFD が F: の場合以下のように
>syslinux f:
- USB Flash Device からのブート順位を適切に設定した PC で syslinux による起動が可能か確認する
※3 ここはかなり微妙
期待通りの起動をしないようならコマンドプロンプトで作業場所をカレントにして、 UFD が F: の場合以下も試してみる>syslinux -ma f:
以上で、運が良ければ 『WinPE2.0 & DOS 2in1 ブータブルUSBメモリ 』が利用可能なPCでは利用可能に。
補足三点
- ※1
- DOS のブータブルUSBメモリが利用可能であっても、WinPE2.0 のブータブルUSBメモリではブートできない場合もある
DOSの時よりもBIOS依存で条件が厳しいようなので、ココで上手くいかないPCならブータブルDVDの利用を考えた方が良さそう
BIOSによってはUSBメモリの容量如何でリムーバブルデバイスとして扱うかHDDとして扱うかを見ているものもあったりで試してみないと分からないケースがしばしば - ※2
- USBメモリが C: として起動してこない状態 (A; ないしは B: で起動)では、おそらく WinPE2.0 でも起動できなかったはず
DOS のブータブルUSBメモリを普通の作成手順で作成した時に、C: として起動できる PC で作り直すと吉 - ※3
- FAT16 で一から作りなおせば成功するかもしれない……
自宅で、1GB と 512MB の USBメモリ と3台 のPCで組み合わせ2x3の6通りを確認したところ 3勝3敗。
そもそも WinPE2.0 のブータブルUSBメモリからブートできないケースが。
現時点(2007年1月4日 20:00:17) での感想
最新とはいえないPCだったのが要因とは言え、一言で言って、敗北。
ブータブルUSBメモリが 2in1 で手軽に便利に使える予定はあえなく散る……。
そもそも、下手な方法を取っている気がしてならないのは置いておいて、試した中では DOS>sysLinux(GParted)>>>WinPE2.0
のような難易度の感触。
BIOS次第な昔のCDブートやUSBブートがそうであったようにそのうち解消すんのかね?
3in1 その他
負けっぱなしは悔しい(?)ので、使えるPCで使えれば良いという割り切りついでに、GParted の LiveUSB 版も同居
- GParted の LiveUSB から latest 版をダウンロードして解凍
今回は gparted-liveusb-0.3.1-1.zip - 展開して現れたファイルのうち
- gparted
- initrd.gz
- linux
- gparted のアーカイブに含まれる syslinux.cfg を参考に以下のように編集
syslinux.cfg
- boot.msg を表示するようにしたので boot.msg を以下のように作成
- 期待通りの動作が確認できれば完成
さらに BartPE も、、、等と凝りはじめると際限なくなるのでこの程度に留めておくのが精神衛生上良い気がする。
【追記:2007/11/28】
- WinPE2.0 (Windows AIK)
WinPE2.0 作成の基本 - WinPE2.0 (WindowsAIK で マルチwimイメージ & DOSブート なUSBメモリ)
bcdedit で複数wimイメージマルチブート
| 固定リンク
この記事へのコメントは終了しました。
コメント