
Ayant besoin d'avoir accès en réseau à quelques utilitaires maison, j'ai créé une boot image à base de WinPE avec un shell bien connu sous BartPE : Nu2.
Pour cela, nous avons besoin de Windows AIK (Windows Automated Installation Kit), qui est gratuit, et qui va nous permettre de créer un WinPE (Windows PE). Une fois téléchargé et installé, se rendre dans le menu "Microsoft Windows AIK" puis "Windows PE Tools Command Prompt". L'invite de commande s'ouvre, puis nous entrons la commande suivante qui va nous permettre de créer le WinPE :
Copype.cmd x86 c:\winpe_x86 (winpe_x86 étant le dossier où l'on va retrouver notre WinPE)
Il nous faut maintenant monter l'image de notre WinPE dans un dossier (ici "mount") : se rendre dans le dossier c:\winpe_x86 puis entrer
C:\winpe_x86imagex /mountrw winpe.wim 1 c:\winpe_x86\mount\
On en profite pour installer quelques packages utiles :
peimg /install=winpe-hta-package /image=c:\winpe_x86\mount
peimg /install=winpe-XML* /image=c:\winpe_x86\mount
peimg /install=winpe-WMI* /image=c:\winpe_x86\mount
peimg /install=winpe-Scripting* /image=c:\winpe_x86\mount
Voilà, maintenant on s'attaque au 'shell' que l'on va intégrer dans notre WinPE : Nu2. Vous pouvez le télécharger à cette adresse (menu download) puis décompressez le dans un dossier de votre choix. Nous allons ensuite copier l'intégralité du répertoire Nu2 dans l'arborescence de notre image, qui se trouvre dans 'c:\winpe_x86\mount'. Créer un nouveau dossier que nous appelerons 'softs', puis dans celui-ci créer un autre répertoire avec le nom 'Nu2'. Copiez y tous les fichiers décompressés dedans.
Pour que le shell puisse se lancer au démarrage, il nous faut créer le fichier 'Winpeshl.ini' que nous allons placer dans le dossier 'c:\winpe_x86\mount\windows\system32'. Voici son contenu :
[LaunchApp]
AppPath = %SYSTEMDRIVE%\softs\nu2\nu2menu.exe
[LaunchApps]
AppPath =
A ce stade là, il nous faut maintenant ajouter quelques applications et éditer les menus. Pour cet exemple, je vais intégrer un explorateur de fichier (Explorer++) et un utilitaire de diagnostique léger (ReSysInfo). Pour ces applications, récupérez les dans leurs versions compressées ZIP. J'ai décompressé Explorer++ dans un dossier appelé "explorer" et pour ReSysInfo, je l'ai mis dans un dossier nommé "resysinfo". Copions ces dossiers dans notre WinPE : 'c:\winpe_x86\mount\softs'. Maintenant nous allons éditer notre menu pour y faire apparaître nos applications : modifier le fichier 'nu2menu.xml' qui se trouve dans 'c:\winpe_x86\mount\softs\nu2'. Pour faire simple, copiez le contenu ci-dessous à la place de l'existant :
<?xml version="1.0"?>
<NU2MENU ID="Nu2MenuSystem001"
AUTHOR="Henk de Jong"
DATE="2005-02-17, 20:15"
VERSION="V0.350"
COPYRIGHT="(c)2003-2005 Nu2 Productions"
REMARK="ALL NODES ARE CASE-SENSITIVE!!!!!">
<MENU ID="mainmenu">
<MITEM TYPE="ITEM" CMD="RUN" FUNC="@GetProgramDrive()\softs\explorer\Explorer++.exe">Explorateur de fichiers</MITEM>
<MITEM TYPE="SEPARATOR"></MITEM>
<MITEM TYPE="POPUP" MENUID="admin">Logiciels</MITEM>
<MITEM TYPE="ITEM" CMD="RUN" FUNC="@ShowRunDialog()">Run...</MITEM>
<MITEM TYPE="SEPARATOR"></MITEM>
<MITEM TYPE="ITEM" CMD="EXIT">Exit</MITEM>
</MENU>
<MENU ID="admin">
<MITEM TYPE="ITEM" CMD="RUN" FUNC="@GetProgramDrive()\softs\explorer\Explorer++.exe">Explorateur de fichiers</MITEM>
<MITEM TYPE="ITEM" DISABLED="@SetMenuPos( 'L','B' )@Not(@FileExists( @GetWinDir()\system32\notepad.exe ))" CMD="RUN" FUNC="@GetWinDir()\system32\notepad.exe" PARM="1">Notepad</MITEM>
<MITEM TYPE="SEPARATOR"></MITEM>
<MITEM TYPE="ITEM" CMD="RUN" FUNC="@GetProgramDrive()\softs\resysinfo\ReSysInfo.exe">Informations système</MITEM>
</MENU> </NU2MENU>

Ce menu assez simple permet de se familiariser avec la syntaxe. Enregistrez le fichier...
Il ne reste plus qu'à appliquer les modifications dans l'image avec la commande :
ImageX /unmount c:\winpe_x86\mount\ /commit
Notre WinPE est prêt et il ne reste plus qu'a l'intégrer dans notre serveur de déploiement...

Si vous voulez mettre votre WinPE sur une clé USB pour booter dessus, il faut utiliser cette commande :
copy c:\winpe_x86\winpe.wim c:\winpe_x86\iso\sources\boot.wim (on s'apperçoit ici que le winpe.wim devient boot.wim)
Ensuite, il faut copier tous les fichiers nécessaires sur votre clé USB : insérez là dans votre PC et via le menu 'Démarrer' puis 'Exécuter', saisissez la ligne de commande suivante :
xcopy c:\winpe_x86\iso\*.* /s /e /f h:\ (h:\ étant la lettre de votre clé USB)
Après, vous devez rendre votre clé USB bootable, pour cela dans l'invite de commande tapez :
'cd \Program Files\Windows AIK\Tools\PETools\x86' puis 'bootsect /nt60 h:'
Et enfin si vous préférez mettre le tout sur un CD-Rom, nous allons générer une image ISO via cette commande :
oscdimg -n -bc:\winpe_x86\iso\boot\etfsboot.com c:\winpe_x86\iso c:\winpe_x86\winpe.iso
