Table des matières
Créer un DVD (ou CD) multibootable ultime pour PC
Pour ne pas multiplier les CDs, on peut regrouper sur un dvd ou cd unique plusieurs installateurs pour des systèmes d'exploitation ou pour des logiciels (par ex. Office) dont on possède évidemment la licence originale !
<note>Ces pages sont la compilation des infos que j'ai glanées ici ou là (encore en cours d'élaboration)</note>
Bootable CD Wizard : Gestionnaire de CD Bootable à images multiples
sources
- CDshell : http://www.cdshell.org/, aujourd'hui disparu mais encore dans les archives d'internet : http://wayback.archive.org/web/20100701000000*/http://www.cdshell.org/
- [How To] Multi-boot DVD Guide (en anglais)
- pour windows 7 : http://www.forum-unattend.fr/phpBB3/viewtopic.php?f=30&t=428
Autres pages :
Introduction
Nous allons créer un DVD (ou un CD si tout tient dessus) de démarrage (“bootable”) capable de :
- installer plusieurs versions de Windows : 95, 98 SE, Me, NT, 2000, XP (Home, Pro, Media Center, avec un SPx …), Server 2003 (Standard, Enterprise, Web, Data Center)…
- utiliser Bart PE, une version réduite autonome d'XP (ou 2003) avec interface graphique, multitâche, NTFS…
- utiliser des distributions Linux autonomes, comme Knoppix, Slax…
- intégrer tous les outils de Ultimate Boot CD
- lancer des outils de dépannage/diagnostic basés sur des (images de) disquettes de démarrage DOS, Linux ou autre.
- installer les programmes windows (ou DOS) que l'on veut.
- stocker des données.
A chacun de choisir ce qu'il veut intégrer…
Deux méthodes de travail sont possibles :
- faire toutes les étapes pour un OS, puis on recommence depuis le début avec l'OS suivant.
- ou faire l'étape 1 pour tous les OS, puis l'étape suivante pour tous les OS et ainsi de suite… Ce peut être une bonne idée car si quelque chose se passe mal, on sait où chercher : on gagne du temps car on ne peut tester le DVD qu'une fois l'image ISO créée.
Plusieurs logiciels peuvent être utilisés :
Nous utiliserons la dernière version, améliorée disponible ici : 2.01a, RescueCD, avec les explications sur le forum : [Tutorial] How to make a multiboot CD/DVD, This one works
De quoi aurons-nous besoin ?
Outre du temps et de la patience (il faut être méthodique et posé…), il nous faut :
- Assez d'espace disque (+5 GB pour être tranquille)
- un graveur de DVD (ou de CD)
- un support (ré)enregistrable
- les CDs d'installation (ou les isos) des OS que l'on veut regrouper sur le DVD.
- Régler l'affichage de l'explorateur de fichiers de windows (Outils → Options, onglet Affichage) pour voir tous les fichiers (y compris système et cachés) avec leur extension.
- images *.IMA des disquettes de démarrage pour la famille Windows 9x (voici celles que j'utilise : (sur mon site). Décompresser le fichier zip dans un répertoire (par exemple c:\dk)
- images *.DAT des disquettes de démarrage pour la famille Windows NT (sur le site : http://severinterrier.free.fr/Boot/UltimeDVD/DAT.zip ou leur copie (sur mon site). Décompresser le fichier zip dans le même répertoire (par exemple c:\dk)
et des logiciels :
- un logiciel de gravure sachant graver une image ISO, comme CDBurner XP
- Un éditeur de texte, comme NotePad++ (site : http://notepad-plus-plus.org/)
- un convertisseur OEM ↔ ANSI (disponible ici, sur mon site)
- un éditeur hexadécimal, comme HxD
- CDIMAGE, version en ligne de commande : CDImage (exe) ou version GUI : http://unattended.msfn.org/files/global/CDIMAGE_GUI.EXE)
- CD Shell, disponible ici, sur mon site (le site officiel semble mort) ; Un manuel succinct se trouve ici : http://www.hotline-pc.org/cdshell.htm
Préparation
- Choisir un emplacement pour être le répertoire racine (par exemple
C:\DVD
, que nous figurerons par [/]), comportant environ 11 Go libres (avant optimisation par CDIMAGE qui évite les doublons, les fichiers peuvent occuper 7 Go), créer la structure suivante (c'est un exemple de dénominations) :
[/] --> recevra les images des disquettes de boot pour les OS de type 9x et les répertoires pour les disquettes de boot des OS de type NT | BOOT --> recevra le système cdshell | | PRO1 (pour XP Pro, recevra PRO1.DAT) | HOM1 (pour XP Home, recevra HOM1.DAT) | 2PRO (pour 2000 Pro, recevra 2PRO.DAT) | NT4W (pour NT4 WorkStation; recevra NT4W.DAT) | | SETUP --> recevra les contenus de tous les cds (DVD\SETUP\WINXPPRO par exemple) | WIN95 | WIN98SE | WINME | WINXPPRO | WINXPHOM | WIN2000 | | ADVSERV (2000 Advanced Server) | | SERVER (2000 Server) | | PRO (2000 Pro) | WINNT4 | | SERVER (NT4 Serveur) | | WRKSTN (NT4 WorkStation) | WIN2003 | DCT (2003 Datacenter) | ENT (2003 Enterprise) | STD (2003 Standard) | WEB (2003 Web)
On peut créer cette arborescence d'un coup avec le script batch suivant (utilisable sous XP, téléchargeable sur mon site : ici) :
- CreeArborescence.bat
@echo off set racine= set /p racine="Chemin complet de la racine du dvd : for %%i in (SETUP, BOOT, PRO1, HOM1, 2PRO, NT4W) do md %racine%\%%i for %%i in (WIN95, WIN98SE, WINME, WINXPPRO, WINXPHOM, WIN2000, WINNT4, WIN2003) do md %racine%\setup\%%i for %%i in (ADVSERV, SERVER, PRO) do md %racine%\setup\WIN2000\%%i for %%i in (SERVER, WRKSTN) do md %racine%\setup\WINNT4\%%i for %%i in (DCT, ENT, STD, WEB) do md %racine%\setup\WIN2003\%%i pause
Placer toutes les images des disquettes de démarrage (*.IMA pour la famille 9x et *.DAT pour la famille NT), dans un même répertoire,
On peur le batch suivant (téléchargeable sur mon site : ici) pour les installer au bon endroit :
- CopieImagesDisquettes.bat
@echo off set racine= set /p racine="Chemin complet de la racine du dvd : " if exist %racine% goto racineExiste echo Le chemin %racine% n'existe pas. goto Fin :racineExiste set dskt= set /p dskt="Chemin complet du répertoire contenant les images des disquettes de démarrage de Windows (*.IMA et *.DAT) : " echo famille 9x for %%i in (WIN95, WIN98SE, WINME) do ( if exist %dskt%\%%i.IMA copy %dskt%\%%i.IMA %racine%\ if not exist %dskt%\%%i.IMA echo erreur : %dskt%\%%i.IMA introuvable... ) echo famille NT for %%i in (NT4S, NT4W, 2ADV, 2SRV, 2PRO, PRO1, HOM1, 3DCT, 3ENT, 3WEB) do ( if exist %dskt%\%%i.DAT copy %dskt%\%%i.DAT %racine%\ if not exist %dskt%\%%i.DAT echo erreur : %dskt%\%%i.DAT introuvable... ) :Fin pause
- Décompresser le fichier CDShell.zip et :
- déplacer le contenu du répertoire BOOT de cdshell dans le répertoire DVD\BOOT\
- déplacer le répertoire TOOLS dans le répertoire BOOT (–>DVD\BOOT\TOOLS\)
Le répertoire SETUP recevra les contenus des différents CDs.Pour simplifier la tâche, on peut télécharger une archive contenant les images des secteurs de boot modifiés pour les différents systèmes d'exploitation. Il suffira d'utiliser les images de secteurs de boot nécessaires…
Nous utilisons la totalité des cds d'installation. Cela permet d'utiliser les fichiers setup.exe (ou install.exe) pour chaque OS, pour éventuellement vérifier la compatibilité matériel, ou faire des mises à jour depuis une version plus ancienne de Windows.
Préparation des fichiers
OS de la famille Windows NT (NT4, 2000, XP, 2003)
La procédure est exactement la même pour les différents systèmes d'exploitation de la famille NT.
Deux solutions :
- soit on fait toutes les étapes pour un OS, puis on vous recommence depuis le début avec l'OS suivant,
- soit on fait l'étape 1 pour tous les OS, puis l'étape suivante pour tous les OS et ainsi de suite…
Version de Windows Nom du fichier de secteur de boot Répertoire de démarrage Répertoire contenant les fichiers d'installation NT4 Serveur NT4S.DAT D:\DVD\NT4S\ D:\DVD\SETUP\WINNT4\SERVER NT4 WorkStation NT4W.DAT D:\DVD\NT4W\ D:\DVD\SETUP\WINNT4\WRKSTN 2003 Datacenter 3DCT.DAT D:\DVD\3DCT\ D:\DVD\SETUP\WIN2003\DCT\ 2003 Enterprise 3ENT.DAT D:\DVD\3ENT\ D:\DVD\SETUP\WIN2003\ENT\ 2003 Standard 3STD.DAT D:\DVD\3STD\ D:\DVD\SETUP\WIN2003\STD\ 2003 Web 3WEB.DAT D:\DVD\3WEB\ D:\DVD\SETUP\WIN2003\WEB\ XP Pro PRO1.DAT D:\DVD\PRO1\ D:\DVD\SETUP\WINXPPRO\ XP Home HOM1.DAT D:\DVD\HOM1\ D:\DVD\SETUP\WINXPHOM\ 2000 Advanced Server 2ADV.DAT D:\DVD\2ADV\ D:\DVD\SETUP\WIN2000\ADVSERV 2000 Server 2SRV.DAT D:\DVD\2SRV\ D:\DVD\SETUP\WIN2000\SERVER 2000 Pro 2PRO.DAT D:\DVD\2PRO\ D:\DVD\SETUP\WIN2000\PRO Voici la méthode pour chaque système :
Pour une installation sans surveillance, se reporter à la page start
OS de la famille Windows 9x (95, 98 SE, ME)
Pour les systèmes d'exploitation de la famille 9x, la méthode est différente de celle des OS de la famille NT, qui nécessitent un répertoire de démarrage.
Ici, pas besoin de répertoire de démarrage, mais d'une (image de) disquette avec support CD-Rom, qui lance l'installation depuis le CD.
Deux solutions :
- soit on fait toutes les étapes pour un OS, puis on vous recommence depuis le début avec l'OS suivant,
- soit on fait l'étape 1 pour tous les OS, puis l'étape suivante pour tous les OS et ainsi de suite…
Nous prendrons l'exemple de Windows 98 SE.
La procédure est exactement la même pour les différents systèmes d'exploitation de la famille 9x. Il suffira de répéter la méthode pour chaque OS à installer, en modifiant les noms des répertoires et des fichiers selon le tableau ci-dessous.
Version de Windows Nom de l'image Répertoire contenant les fichiers d'installation 95 WIN95.IMA D:\DVD\SETUP\WIN95\ 98 SE WIN98SE.IMA D:\DVD\SETUP\WIN98SE\ ME WINME.IMA D:\DVD\SETUP\WINME\ OS de la famille Windows Vista (Vista, Seven)
Le systeme de WINDOWS 7 (c'est presque la même chose pour WINDOWS VISTA) utilise principalement 2 fichiers :
boot.wim
qui contient les informations concernant le boot lui-même- et
install.wim
qui contient tout (fichiers, configurations, softs,…) ce qui concerne les différentes versions d'installations présentes sur le DVD de WINDOWS 7. C'est ce fichier qui installe notre WINDOWS 7
<note> Le Format de fichier .WIM
En fait l'installation de ces OS consiste en un déploiement d'une image WIM identique sur chaque PC.
WIM
signifie Windows IMaging. C'est un fichier image disque. Ce format est utilisé nativement pour l'installation de Windows Vista, de Windows Server et de WINDOWS 7.Contrairement aux fichiers images orientés secteurs (.iso, .cue, …), un fichier WIM est orienté partitions ; il contient, en plus des fichiers d'une partition, des métadonnées sur les fichiers contenus dans la partition.
Le format WIM est donc indépendant du matériel (taille des secteurs) et les fichiers identiques au sein d'un fichier WIM (qui peut contenir plusieurs images de partitions) ne sont stockés qu'une fois. Comme ceux ci sont stockés dans une base WIM, la surcharge réseau et disque est réduite lors de leur ouverture.
En outre, les images WIM doivent être déployées sur un volume ou une partition déjà créés. Cela peut se faire au sein de l'environnement de pré-installation
Windows PE 2
à l'aide de la commandediskpart
Les images contenues au sein d'un fichier WIM sont référencées par un numéro d'index. Un fichier WIM peut aussi être partitionné en de multiples fichiers (.svm) afin, par exemple, d'être enregistrés sur CD ou DVD.
Explication technique sur le FORMAT .WIM :
- L'en-tête (WIM Header) : définit le contenu, des informations sur le fichier (version, taille, compression) et l'emplacement des éléments clefs.
- Fichiers (File Ressources) : il s'agit du package à proprement parler, contenant les fichiers.
- Métadonnées (Metadata Ressource, une ressource de Métadonnées par image) : fournissent les attributs de fichiers et la structure des répertoires des images capturées.
- Table d'allocation (Lookup Table) : contient les emplacement des fichiers dans les images.
- XML : informations additionnelles sur les images (au format XML)
- Table d’intégrité : informations d’intégrité permettant de s'assurer de l'application correcte des images lors de leur déploiement.
Pour plus d'information, voir : http://fr.wikipedia.org/wiki/Format_Windows_Imaging_(WIM) et http://toutwindows.com/ws2008_wds_WIM.shtml </note>
Nettoyage des fichiers inutiles
Pour que notre DVD fonctionne correctement, il faut supprimer quelques fichiers inutiles (qui peuvent êtres gênants).
Chercher dans le répertoire
DVD
et ses sous répertoires les fichiers suivants :Type ou nom de fichier Suppression possible ou action à effectuer bootfix.bin Ces fichiers affichent “Appuyez sur n'importe quelle touche pour démarrer depuis le cd…”. On peut supprimer ces fichiers pour lancer directement l'installation du système d'exploitation que l'on a choisi. .bak Les fichiers .bak sont des fichiers de sauvegarde qui ont été créés par votre éditeur texte et/ou hexadécimal. Ils peuvent êtes supprimés. txtsetup.si_ S'il en existe, ils peuvent être supprimés. txtsetup.sif On peut supprimer des fichiers “txtsetup.sif” qui seraient dans des répertoires “i386”.
Attention de NE PAS supprimer ces fichiers s'ils sont dans les répertoires de démarrage (PRO1, PRO2, 3ENT, NT4S, etc).setupldr.bi_ S'il en existe, ils peuvent être supprimés. setupldr.bin On peut supprimer des fichiers “setupldr.bin” qui seraient dans des répertoires “i386”.
Attention de NE PAS supprimer ces fichiers s'ils sont dans les répertoires de démarrage (PRO1, PRO2, 3ENT, NT4S, etc).<note tip>Si on ne fait pas ce nettoyage de fichiers, on aura des messages d'erreur comme “Le programme d'installation ne trouve pas le contrat de licence d'utilisateur final.”.</note>
Intégration de Ultimate Boot CD
On peut intégrer au DVD tout le contenu du Cd “Ultimate Boot CD”.
Ultimate Boot CD
regroupe plusieurs utilitaires gratuits, de partitionnement, formatage, récupération…Cette procédure fonctionne à partir de la version 2.2 de Ultimate Boot CD, qui utilise également CD Shell, ce qui simplifie son intégration dans le DVD.
Voici la procédure à suivre (exemple de Ultimate Boot CD 5.0.3).
- Créer le répertoire “
D:\DVD\SETUP\UBCD503\
, qui contiendra tous les fichiers d'Ultimate Boot CD. Le nom du dossier rappelle la version. - Télécharger Ultimate Boot CD, et décompacter les fichiers jusqu'à obtenir le fichier .ISO (
ubcd503.iso
). - Extraire tous les fichiers et répertoires, depuis l'image ISO vers le répertoire “D:\DVD\SETUP\UBCD503\”. On utilisera pour cela des outils comme WinISO. Tout extraire dans un répertoire permet éventuellement de recréer le CD d'origine de Ultimate Boot CD, à partir de ce répertoire et du fichier image du secteur de boot.
- Cela permet d'accéder au contenu des répertoires qui ne seront pas ramenés dans la racine (tels la documentation des logiciels inclus, les quelques pages du site d'Ultimate Boot CD…).
- Copier tout le contenu de
D:\DVD\SETUP\UBCD503\IMAGES\
dansD:\DVD\IMAGES\
. Cela recrée la même arborescence de fichiers que sur le CD d'origine, ainsi l'appel des images de boot peut se faire sans manipulation particulière. - Copier tout le contenu de
D:\DVD\SETUP\UBCD503\BOOT\
dansD:\DVD\UBCD\
. - Créer le fichier image du secteur de boot. Pour cela, on peut utiliser BBIE : Ouvrir une ligne de commande, et taper la commande
bbie ubcd503.iso
(si les 2 fichiers sont dans le même répertoire). - Renommer le fichier
image1.bin
obtenu enubcd503.dat
que l'on place dansD:\DVD\IMG_BOOT\
. - Editer
ubcd503.dat
avec un éditeur hexadécimal (comme Free Hex Editor). Rechercher les occurences de/boot
et les remplaçer par/ubcd
. Sauvegarder le fichier.
Voila, tous les fichiers sont prêts pour intégrer Ultimate Boot CD.
Pour lancer Ultimate Boot CD, il faudra ajouter dans le fichier cdshell.ini une commande
chain /IMG_BOOT/ubcd503.dat
.Ce qui peut donner une ligne complète de la forme suivante (touche U pour lancer Ultimate Boot CD) :
if $lastKey == key[U]; then chain /IMG_BOOT/ubcd503.dat
Ajout de fichiers permettant d'installer des programmes windows
Ajout de fichiers personnels
Arborescence du DVD
Vérifions maintenant que l'arborescence de notre DVD ressemble à ce qui suit. Si c'est le cas, tout va bien.
<note tip>Ce qui suit n'est qu'un exemple qui comporte XP Pro et Server 2003, mais on peut ajouter autant de versions qu'on veut tant qu'elles tiennent sur le DVD</note>
C:\DVD\ - Source du DVD Multi-boot C:\DVD\BOOT\ - répertoire CDShell C:\DVD\i386\ - répertoire réduit pour Windows XP Pro (facultatif) C:\DVD\PRO1\ - 1er répertoire de boot pour XP Pro C:\DVD\PRO2\ - 2e répertoire de boot pour XP Pro C:\DVD\3ST1\ - 1er répertoire de boot pour Server 2003 C:\DVD\3ST2\ - 2e répertoire de boot pour Server 2003 C:\DVD\SOFTWARE\SOFTWARE\ - répertoire contenant les logiciels C:\DVD\SOFTWARE\Install.cmd - fichier CMD qui s'occupe de l'installation des logiciels C:\DVD\SOFTWARE\SOFTWARE_ALL\ - répertoire contenant le logiciel pour tous les OS C:\DVD\SETUP\XP\Professional\i386\CMD\RunOnce.cmd C:\DVD\SETUP\Server2003\Standard\I386\CMD\RunOnce.cmd
Créer le menu de démarrage multiboot
Création d'un menu de boot (CDShell)
L'écriture de script avec CD Shell est très simple : il suffit de modifier l'exemple que l'on trouvera à http://www.msfn.org/board/post-a13636-cdshell.ini selon les besoins.
Rester simple, pour le menu de boot, utiliser CD Shell, des fichiers winnt.sif simples, etc. On pourra raffiner, seulement après avoir terminé avec succès et booté tous les OS. On trouvera à la fin de ce guide quelques options pour raffiner.
Télécharger le fichier cmd à dézipper (sur mon site)
Le lancer et naviguer jusqu'au répertoire du DVD. En se terminant, il ouvre create_boot_folders.cmd ; le modifier selon les besoins.
Il crée le répertoire de boot PRO1, modifie setupldr.bin, modifie txtsetup.sif, crée le secteur de boot PRO1.bin et copie les fichiers repères WIN51, WIN51IP et WIN51IP.SP1 (WIN51IP.SP2 si Service Pack 2). (Noter que PRO1.bin a exactement 4 lettres en majuscule)
call create_boot_folder.cmd C:\DVD\SETUP\XP\Professional C:\DVD PRO1 FOO 0
Avec NotePad, créer un fichier texte dans PRO1 et le renommer en winnt.sif.
[GuiUnattended] DetachedProgram="%SystemRoot%\System32\cmd.exe /c @ECHO something>%SystemDrive%\XPPRO.TAG"
Cette instruction dit à winnt.sif de créer un fichier repère qui identifie l'OS en cours d'installation. Dans ce cas, le fichier repère sera XPPRO.TAG, mais on peut spécifier ce qu'on veut.
Création de RunOnce.cmd
- Créer un fichier RunOnce.cmd dans DVD\SETUP\XP\Professional\i386\CMD\ et y recopier le code.
- RunOnce.cmd recherche Install.cmd sur le DVD et le lance.
@echo off for %%i in (c d e f g h i j k l m n o p q r s t u v w x y z) do if exist "%%i:\software\Install.cmd" call %%i:\software\Install.cmd exit
Pour cela, on peut se servir de la méthode RunOnceEx (explications en anglais). RunOnceEx ne se lance qu'à la première connexion, de sorte que les applications peuvent avoir besoin de redémarrage. La méthode ci-dessus contourne ce problème : elle est “sans redémarrage”.
Lancement de RunOnce.cmd à partir de Svcpack.inf
- Ajouter à svcpack.inf dans DVD\SETUP\XP\Professional\i386\ les lignes suivantes :
[SetupData]CatalogSubDir="\i386" [SetupHotfixesToRun] CMD\RunOnce.cmd
<note tip>
- On peut voir que Svcpack.inf lancera RunOnce.cmd à l'étape T-13.
- Il faut adapter le catalogue [ProductCatalogsToInstall] dans svcpack.inf selon le nouveau CatalogSubDir=“\i386” car il peut pointer sur un autre emplacement (ce qui donnerait un message d'erreur pendant l'installation). S'il n'y a pas de référence sous, [ProductCatalogsToInstall], aucun souci.
- Recompresser (facultatif) svcpack.inf en svcpack.in_ avec l'utilitaire eXPander.
</note>
Creation du fichier Install.cmd
- Dans DVD\SOFTWARE\, créer un fichier Install.cmd et y recopier ce qui suit :
@echo off REM next line makes sure the *.TAG extension is identified setlocal enableextensions REM checks for the XPPRO.tag file and go to the corresponding section: if exist %SystemDrive%\XPPRO.TAG call :XPPRO REM checks for the XPPRO2.tag and go to the corresponding section: if exist %SystemDrive%\XPPRO2.TAG call :XPPRO2 REM checks for the SERVER2003.tag file and go to the corresponding section: [if exist %SystemDrive%\SERVER2003.TAG call :SERVER2003 REM End goto :end :XPPRO REM Here we'll add the software to install to the XP Pro version. Example: REM "%~dp0" refers to the full path the Install.cmd is in, so you don't have to worry about drive letters start /wait %~dp0\Software\Program1.exe /s start /wait %~dp0\Software\Program2.exe start /wait %~dp0\Software\Program3.exe /qn REM End this section REM end of this section : goto :end :XPPRO2 REM Here we'll add the software to install to the XP Pro Unattended version. Example: start /wait %~dp0\Software\Program1.exe /s start /wait %~dp0\Software\Program2.exe start /wait %~dp0\Software\Program3.exe /qn REG IMPORT %~dp0\Software\Tweaks.reg REM End this section REM end of this section : goto :end :SERVER2003 REM Here we'll add the software to install to the Server 2003 version. Example: REG IMPORT %~dp0\Software\Workstation.reg start /wait %~dp0\Software\ProgramA.exe /s start /wait %~dp0\Software\ProgramB.exe REM End this section REM end of this section : goto :end :end REM Here we'll add the options for every OS. start /wait %~dp0\SOFTWARE_ALL\AntiVirus.exe start /wait %~dp0\SOFTWARE_ALL\Firewall.exe /s REM Applying tweaks to the registry. Independent of the TAG: REG IMPORT %~dp0\Software\Tweaks.reg del /f /q %SystemDrive%\*.TAG del /q /f %SystemRoot%\*.bmp del /q /f %SystemRoot%\system32\dllcache\*.scr del /q /f %SystemRoot%\system32\setupold.exe del /q /f %SystemRoot%\system32\presetup.cmd exit
Install.cmd recherche les fichiers repères ; quand il en trouve un, il fait l'action correspondante.
On constate que les applications sont installées directement depuis le DVD (sans copie sur le disque, ce qui gagne du temps) ; il est donc inutile d'employer OEMPreInstall=Yes ou [GuiRunOnce] dans winnt.sif, que l'on peut cependant encore employer pour lancer d'autres choses si besoin.
Ajout d'une option Unattended
Dans cette section, nous allons apprendre à ajouter une option qui permet une installation de Windows sans intervention.
- Copier le répertoire PRO1 et le fichier PRO1.DAT en “Copie de PRO1” et “Copie de PRO1.DAT”
- Les renommer en PRO2 et PRO2.DAT
- Éditer en hexadécimal PRO2.dat et descendre jusqu'à trouver “PRO1” dans la colonne de droite. Remplacer PRO1 par PRO2.
- Éditer en hexadécimal setupldr.bin dans le répertoire PRO1, faire Ctrl+H, chercher le Type: “Text String” “PRO1” et le remplacer par PRO2.
- Enregistrer le fichier sans faire de backup.
- Un clic sur “OK” et choisir “Replace All”. Il s'affiche “4 Occurrences Replaced”. Quand c'est fait, enregistrer le fichier sans faire de backup.
- Editer winnt.sif pour y ajouter les options unattended.
C'est peut-être le moment de lire le fichier ref.chm dans Microsoft Deployment Tools, il explique comment régler winnt.sif pour une installation.
Le fichier winnt.sif permet de sauter quelques étapes fastidieuses de l'installation, comme de taper le numéro de série, définir la langue ou le clavier ou même de sauter toutes les étapes avec la commande UnattendMode=FullUnattended.
Une fois winnt.sif créé, lui ajouter ces lignes pour qu'il repère l'OS à installer :
[GuiUnattended]DetachedProgram="%SystemRoot%\System32\cmd.exe /c @ECHO something>%SystemDrive%\XPPRO.TAG"
- Bien, nous avons maintenant une deuxième option de boot. Il est temps de l'ajouter au menu de boot, pour pouvoir la choisir. Ouvrir DVD\BOOT\cdshell.ini et y ajouter les lignes :
XP_Pro: print c "\n\cXXMicrosoft Windows XP Professional \n" print "1) Regular \n" print "2) Unattended \n" XP_Pro_Key: if $lastKey == key[1]; then chain /PRO1.DAT if $lastKey == key[2]; then chain /PRO2.DAT
Créer le fichier de démarrage (automatique) pour Windows
Créer le fichier ISO (CDImage)
Il ne nous reste plus qu'à créer l'ISO pour tester notre our DVD.
Nous suivrons le tutoriel de CDImage en ligne de commande, mais on peut aussi suivre celui de la version GUI de CDImage si on veut.
Placer cdimage.exe dans le même répertoire que le DVD :
C:\CDImage.exe C:\DVD
Automatisation du processus
Créer un fichier batch que l'on peut lancer chaque fois que l'on veut créer l'ISO.
Pour cela, ouvrir le bloc-notes et y recopier le code ci-dessous. Enregistrer ce fichier où on veut et le renommer en .bat, comme C:\makeiso.bat.
DEL C:\*.ISO start cdimage.exe -lDVD -t01/01/2006,12:00:00 -b\DVD\BOOT\loader.bin -h -n -o -m \DVD C:\AIODVD.iso EXIT
Maintenant, chaque fois qu'on exécute makeiso.bat, il crée l'ISO pour nous.
Il reste à tester l'ISO (par exemple avec VMware) et ajouter d'autres OS !
Tester le fichier ISO (avec VmWare ou Virtual PC)
Graver le DVD (ou le CD) multiboot
Possibilités de la méthode
- Création automatique de répertoires et de fichiers multi-boot
- Installe tous les logiciels directement depuis le CD/DVD (pas besoin de les copier sur le disque, d'où gain de temps)
- Un seul fichier Install.cmd pour mettre à jour et entretenir les logiciels
- Détermine quels logiciels installer dans quel OS
- On peut encore utiliser OEMPreInstall=Yes et [GuiRunOnce] dans winnt.sif pour lancer d'autres logiciels
- On peut “slipstreamer” des drivers pour chaque OS que l'on veut, en n'en ayant qu'une seule copie
- On peut utiliser des méthodes post-installation (RunOnceEx, kTool, WPI, WIHU, XPlode, whatever)
En pratique
Compléments
Ajout de Windows 98
Suivre ce guide.
Ajout de drivers
Suivre ce guide
Ressources supplémentaires
- Création d'écrans de démarrage (ou apprendre comment en créer des personnalisés ici).
- Microsoft Deployment Tools chez Microsoft et Rapidshare. Ils contiennent le fichier ref.chm qui contient des infos sur la configuration de WINNT.SIF, ainsi que d'autres utilitaires.
- un exposé des possibilités de cdshell : http://www.hotline-pc.org/cdshell.htm