Attic or Garret

BartPE moo-cat(D7QMSDG6)


プラグイン置き場

H264
f_Codec(ver.6)、codecs-1.0、ともにH.264は再生できなかったため作成しました。
H.264単体のコーデックです。
 
vorbisacm
MSACM準拠CODECを利用する様々なソフトでOgg Vorbisを利用できます。
f_Codec(ver.6)のOggDSと合せて使ってください
 
SmartViewerUnlimited
HDD S.M.A.R.T. 閲覧ツールのプラグイン、ランタイム不要なので軽量です。
 
RealVNC (Automatically start VNC Server)
RealVNCプラグイン(VNCサーバー自動スタート版)
起動時にVNCサーバーを自動で起動します。(要penetcfgの自動起動設定)
これでディスプレイのないサーバー機でもメンテが出来ます。
 
ExecuteService
プログラムをサービスモードで起動するためのプラグイン
起動するプログラムは設定ファイルにコマンドライン形式で記述します。
(ディスクレス用に作成、サービスモードでの起動のサンプルにもどうぞ)
 
VMware Player Plugin 作成中…

VMware Playerのプラグインを作成中。 (2008/05/17〜)
すでに、仮想マシンの起動とBridge、NATでのネットワーク接続を確認
USB以外のデバイスも認識。
ネットワークブートのディスクレス環境でも問題なし、パフォーマンスも良好
と、ここまでやって疲れました…
(ホストマシンからVNC→BartPE起動マシン→VMware仮想マシンでも使えました)
 
VMwareプラグイン動作中のスクリーンショット、普通のXPと区別がつかない?
※クリックで大きくなります。
 
ついでにBartPEのネットワークブート

BartPEのネットワークブートを試してみました。(2008/04/18)
400MBのISOイメージを使って、起動時間は4分30秒、そのうちTFTPの転送時間は3分30秒
後で説明する300MBの圧縮NTFSイメージを使って、転送時間は2分30秒に短縮しました。
 
ISOイメージの作成は通常ビルドそのまま
ネットワークブートといっても、特別な変更は必要ありません
ただしramdisk.sysのみServer2003SP1から抽出してDriversにコピー
(BartPE\i386\System32\Drivers)
makeiso.cmdはk-squareさんの2005/11/13版がお勧め (大文字、小文字の混在可能)
 
適当なtftpサーバとDHCP/Bootpサーバソフトをインストール
各自好みのソフトを使用、それぞれマニュアルを読んで設定
ただし、ブロードバンドルータの種類と設定によっては
DHCPサーバソフトとバッティングする可能性があるので、スコープを重複しないように調整するなど
対策が必要、それでも既存のネットワークに影響を与える可能性もあるので要注意
拙作のBootpサーバソフトBootps32もお試しください (2008/05/09)
まだベータ版ですが、ルータのDHCPサーバーとの共存とPXE起動の動作確認をしています。
 
tftpサーバで指定したルートディレクトリに以下のファイルを準備
1.setupldr.ex_ (Server2003SP1からExpandで解凍してNTLDRにrename)
2.startrom.n1_ (Server2003SP1からExpandで解凍してstartrom.0にrename)
3.ntdetect.com (BartPE\i386から)
4.PEBUILDER.ISO (作ったISOイメージ)
5.winnt.sif (下の内容で作成)
 [SetupData]
 BootDevice = "ramdisk(0)"
 BootPath = "\i386\System32\"
 OsLoadOptions = "/noguiboot /fastdetect /minint /rdexportascd /rdpath=pebuilder.iso"
(tftpサーバは大文字、小文字を識別するタイプもあるので注意)
 
bootpサーバーの設定
ハードウェアアドレス ブートしたいクライアントのMACアドレス
サーバーIP tftpサーバが動いているところ
クライアントIP 192.168.0.2とか
ブートファイル startrom.0
Bootps32を使った場合は、以下の設定を追加
[00-10-C6-xx-xx-xx] ハードウェアアドレス
BootFile = startrom.0 ブートファイル
ServerIP = 192.168.0.1 サーバーIP
HostIP = 192.168.0.2 クライアントIP
 
ISOイメージがメモリに展開されるのでメモリが768MB以上無いと、たぶん動きません。
あとは、ファイル共有使って、ユーザーファイルと、でかいプログラムファイルを放り込めれば
ISOイメージを小さく出来て、少ないメモリでも動作するかも
 
BartPEのネットワークブートとディスクレス

ISOイメージを使ったネットワークブートでは
単にISOイメージをネットワークから転送してCDの代用として
利用していただけなので、次はネットワークドライブも含めた
ディスクレス環境を作ってみました。(2008/05/09)
 
ネットワークドライブに移動する対象は
Explorer&IE環境下の"Documents and Settings"と"Programs"
デスクトップのファイル、ブックマークなども保存できるようにします。
 
BartPEでネットワークが利用できるのは
ログオン後のpenetcfgの実行後となるため
ログオン後でないとネットワークドライブが使えないので苦労しました。
VistaのNTFSだとUNIXライクのシンボリックリンクが使えるので
無理やり組み込んでみたりもしましたが、駄目で(ブルーバック)
結局、回避策として仮想ドライブを使用しました。
ログオン前に仮想ドライブを作成(subst z: x:\)する必要があったので
サービスでコマンドを実行するExecuteServiceプラグインを作成して回避しています。
 
ネットワークドライブはZ:に固定、
ネットワークドライブ供給元の共有とアクセス権の設定を適切に済ませておきます。
BartPEビルドの前に"Documents and Settings"と"Programs"へのパスが含まれる
プラグインに関しては、ネットワークドライブを対象に書き換える必要があります、
一部の移動できないファイルは変更せずにそのまま残します。
Cookies、Historyは既に起動しているExplolerが掴んだ状態なので移動は無理でした。
 
起動までの流れはこのような感じになります。
1.BartPEの起動
2.ExecuteServiceから、コマンド(subst z: x:\)を実行
3.Z:がX:の仮想ドライブの状態でログオン開始
4.penetcfgが起動されネットワーク接続が確立
5.penetcfg.iniの[PostNetAutoRun]に追加した次のコマンドが実行される
 net stop ExecuteService (ExecuteServiceの停止)
 subst Z: /D (仮想ドライブの解除)
 net use Z: 〜 (ネットワークドライブへ接続)
  NET USE
   [デバイス名 | *] [\\コンピュータ名\共有名[\ボリューム]
   [パスワード | *]] [/USER:[ドメイン名\]ユーザー名
   [/USER:[ドット形式のドメイン名\]ユーザー名]
   [/USER:[ユーザー名@ドット形式のドメイン名]
 IconMetrics (デスクトップアイコンの再描画)
 
今回はBartPE起動用のイメージファイルにISOイメージではなく
Bart's PE Builder スレッド 6枚目で109氏に教えていただいた
圧縮NTFSイメージを使用します。
109氏、情報ありがとうございました。
これにより、イメージファイルのサイズを400MBから300MBに減量することが出来ました。
さらに圧縮NTFSイメージで起動した、ルートドライブは書き換え可能になるため
RAMディスクが不要になりました。(データは起動中のみ保持)
 
作成手順
 
○ビルド前のプラグインの準備
ramdisk.infを改造してDiskLess.infを作成
RAMディスクは未使用のため、RAMディスクドライバの部分を削除して
環境変数関連をネットワークドライブに変更
netdrv -> Z:
ramdrv -> Z:
USERPROFILE -> %netdrv%\Documents and Settings\Default User
ALLUSERSPROFILE -> %netdrv%\Documents and Settings\All Users
temp -> %USERPROFILE%\Local Settings\Temp
tmp -> %USERPROFILE%\Local Settings\Temp
penetcfg.iniの[PostNetAutoRun]へのコマンド追加
[SetValue]
"penetcfg.ini", "PostNetAutoRun", "00", "net stop ExecuteService"
"penetcfg.ini", "PostNetAutoRun", "000", "subst Z: /D"
"penetcfg.ini", "PostNetAutoRun", "0000", "net use Z: \\ホスト名\共有名 パスワード /user:ドメイン名\ユーザ名"
"penetcfg.ini", "PostNetAutoRun", "01", "IconMetrics"
DiskLessプラグインにDiskLess.infが入っています。
 
Explorer&IE.infのdocuments and Settingsパス関連をネットワークドライブ対応に変更
Default Userパス関係 -> %USERPROFILE%\
All Usersパス関係 -> %ALLUSERSPROFILE%
%ramdrv% -> %netdrv%
%SystemDrive%\Documents -> %netdrv%\Documents
Cookies、History関連は移動できないので変更しない
いくつか固定の必要のあるパスも変更しない
イベント ログ サービスは%SystemDrive%に設定しないと
サービスが開始しないエラーとなる
 
Programsに関連するパスがX:\Programsなど直接指定されている
プラグインがあれば、修正しない限りネットワークドライブへの移動は出来ません
環境変数%ProgramFiles%に対応しているプラグインの場合には、変更なしで
ネットワークドライブに対応できるかもしれません。
 
○ビルド
エラーがないことを確認。
 
○イメージファイルの作成
1.仮想ディスクドライバ FileDiskをインストール
 filedisk.zip を適当なフォルダに展開して、filedisk.regをインポート
 filedisk.sysを\Windows\system32\driversにコピーして再起動でOK。
2.適当なサイズのイメージをfsutilで作って、ディスクイメージとしてマウント
 fsutil file createnew d:\pebuilder.img 314572800
 300MBなら300×1024×1024と計算します。
3.ディスクイメージをマウント(絶対パスで指定する必要がありました)
 filedisk.exe /mount 0 c:\pebuilder.img x:
4.続いてNTFSでドライブ全体を圧縮付きでフォーマット
 format x: /FS:NTFS /Q /C
5.ビルドしたBartPEファイルをディスクイメージのマウント先にコピー
 先にi386、次にDocuments and Settings
 ネットワークドライブに移動する"Programs"以下のフォルダはコピーしない
 (移動出来ないフォルダのみコピー)
6.ディスクイメージをアンマウント
 filedisk.exe /umount x:
 
○tftpサーバの準備
基本は先のネットワークブートのファイル構成と同じです。
1.setupldr.ex_ (Server2003SP1からExpandで解凍してNTLDRにrename)
2.startrom.n1_ (Server2003SP1からExpandで解凍してstartrom.0にrename)
3.ntdetect.com (BartPE\i386から)
4.PEBUILDER.IMG (作ったディスクイメージ)
5.winnt.sif (下の内容で作成)
 winnt.sifの変更OsLoadOptionsから/rdexportascdを取る
 /rdpathはイメージファイルのパスを指定
 [SetupData]
 BootDevice = "ramdisk(0)"
 BootPath = "\i386\System32\"
 OsLoadOptions = "/noguiboot /fastdetect /minint /rdpath=pebuilder.img"
 
○ネットワークドライブの準備
BartPEのDocuments and Settingsをフォルダごとコピー
ネットワークドライブへの移動に対応できたPrograms以下のプラグインのフォルダをコピー
 
○完了
あとは、起動するだけ
うまくいかない時は、あわてず、あせらず問題点を探して下さい
書き足りない部分もあるかもしれません、その時はごめんなさい…
 
御礼

使用させていただいた、ツール、プラグイン、フリーソフトの作者様
貴重な情報を公開しているHPや掲示板の管理人、住人様
この場を借りて、お礼を申し上げます。
どうもありがとうございました。
 
あと、いろいろ作ったり検証するのに結構苦労してたりします。
再配布、無断改変とか内容のコピペはやらない方向で… (適時修正もしたいので)
参照のときは、このページにリンクでお願いします。
 
 
リンク

Bart's PE Builder スレッド 6枚目


< ホームに戻る (Attic or Garret)
< 屋根裏実験室に戻る