vendredi 29 avril 2011

Installer xp sur usb en 11 étape

Pré-requis :

-CD d'installation de Windows XP
-Les drivers USB du Windows SP1 (problème avec les drivers du SP2)
http://www.allbootdisks.com/disk_c [...] xppro.html (Merci LimDul)
-Clé USB bootable
-Un ordinateur pouvant booter sur USB (ou à défaut un CD qui permet de booter sur un périphérique USB si le bios du PC ne le permet pas :
http://www.plop.at/en/bootmanager.html (Merci Dnlilas))

-L'outil Microsoft CAB SDK : http://download.microsoft.com/down [...] Cabsdk.exe
-Un logiciel (gratuit) pour graver une image ISO tel que DeepBurner : http://www.clubic.com/telecharger- [...] urner.html

ETAPE 1

-Copiez le contenu entier de votre CD d'installation de Windows XP dans un répertoire de votre disque dur, par exemple C:\XP_USB.

ETAPE 2

-Installez l'application CAB SDK dans le répertoire de votre choix.



ETAPE 3
 

-Copiez les fichiers suivants présents dans le répertoire C:\XP_USB\I386 dans le répertoire cabSDK\BIN de l'application CAB SDK :

    * TXTSETUP.SIF
    * DOSNET.INF
    * USB.IN_
    * USBPORT.IN_
    * USBSTOR.IN_

ETAPE 4

-Créez un fichier decompresser.bat dans le répertoire cabSDK\BIN (pour créer un fichier .bat, il suffit d'ouvrir le bloc note Windows et d'enregistrer le fichier avec comme nom NomDuFichier.bat, ce qui fait que les instructions du fichier peuvent être exécutées lorsque l'on double-clic dessus)
et copiez y les lignes suivantes :

cabarc x USB.IN_
cabarc x USBPORT.IN_
cabarc x USBSTOR.IN_

ETAPE 5

-Double-cliquez sur le fichier decompresser.bat
-Les fichiers suivants sont crées dans le répertoire cabSDK\BIN

    * usb.inf
    * usbport.inf
    * usbstor.inf

-Vous pouvez supprimer les fichiers :

    * USB.IN_
    * USBPORT.IN_
    * USBSTOR.IN_

ETAPE 6 : Modification des fichiers

Fichier TXTSETUP.SIF

-Editez le fichier TXTSETUP.SIF (avec notepad par exemple) et recherchez les sections suivantes :
-Déplacez les lignes barrées de [InputDevicesSupport.Load] vers la section [BootBusExtenders.Load] comme l'illustre l'exemple ci-dessous :

[BootBusExtenders.Load]
pci = pci.sys
acpi = acpi.sys
isapnp = isapnp.sys
acpiec = acpiec.sys
ohci1394 = ohci1394.sys
usbehci = usbehci.sys
usbohci = usbohci.sys
usbuhci = usbuhci.sys
usbhub = usbhub.sys
usbstor = usbstor.sys

[InputDevicesSupport.Load]
usbehci = usbehci.sys
usbohci = usbohci.sys
usbuhci = usbuhci.sys
usbhub = usbhub.sys
usbccgp = usbccgp.sys
hidusb = hidusb.sys
serial = serial.sys
serenum = serenum.sys
usbstor = usbstor.sys

...Faites la même chose pour les sections [BootBusExtenders] et [InputDevicesSupport]

    [BootBusExtenders]
    pci = "PCI-Bustreiber",files.pci,pci
    acpi = "ACPI Plug & Play-Bustreiber",files.acpi,acpi
    isapnp = "ISA Plug & Play-Bustreiber",files.isapnp,isapnp
    acpiec = "Integrierter ACPI-Controllertreiber",files.none,acpiec
    ohci1394 = "IEEE-1394-Bus-OHCI-konformer Anschlusstreiber",files.ohci1394,ohci1394
    usbehci = "Erweiterter Hostcontroller",files.usbehci,usbehci
    usbohci = "Open Hostcontroller",files.usbohci,usbohci
    usbuhci = "Universeller Hostcontroller",files.usbuhci,usbuhci
    usbhub = "Standard-USB-Hubtreiber",files.usbhub,usbhub
    usbstor = "USB-Speicherklassentreiber",files.usbstor,usbstor

    [InputDevicesSupport]
    usbehci = "Erweiterter Hostcontroller",files.usbehci,usbehci
    usbohci = "Open Hostcontroller",files.usbohci,usbohci
    usbuhci = "Universeller Hostcontroller",files.usbuhci,usbuhci
    usbhub = "Standard-USB-Hubtreiber",files.usbhub,usbhub
    hidusb = "HID-Parser",files.hidusb,hidusb
    serial = "Treiber fr seriellen Anschluss",files.none,serial
    serenum = "Enumerator fr seriellen Anschluss",files.none,serenum
    usbstor = "USB-Speicherklassentreiber",files.usbstor,usbstor
    usbccgp = "USB Generic Parent Driver",files.usbccgp,usbccgp

-Insérez les lignes en gras dans la section suivante :

    [HiveInfs.Fresh]
    AddReg = hivedef.inf,AddReg
    AddReg = hivesys.inf,AddReg
    AddReg = hivesft.inf,AddReg
    AddReg = hivecls.inf,AddReg
    AddReg = hiveusd.inf,AddReg
    AddReg = dmreg.inf,DM.AddReg
    AddReg = usbboot.inf,usbservices

et dans [SourceDisksFiles]

    [SourceDisksFiles]
    usbboot.inf = 1,,,,,,_x,3,,3
    bootvid.dll = 1,,,,,,3_,2,0,0,,1,2
    kdcom.dll = 1,,,,,,3_,2,0,0,,1,2

-Sauvez le fichier TXTSETUP.SIF.

Fichier DOSNET.INF

-Editez le fichier DOSNET.INF, et changez la seconde section [Files] comme ci-dessous :

    [Files]
    d1,usbboot.inf
    d1,_default.pif
    d1,12520437.cpx
    d1,12520850.cpx

    ....

-Sauvez le fichier DOSNET.INF.

Fichier usb.inf

-Editez le fichier usb.inf, et changez les lignes en gras dans les sections [StandardHub.AddService] et [CommonClassParent.AddService] comme ci-dessous :

[StandardHub.AddService]
DisplayName = %StandardHub.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbhub.sys
LoadOrderGroup = Boot Bus Extender

[CommonClassParent.AddService]
DisplayName = %GenericParent.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 0 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\usbccgp.sys
LoadOrderGroup = Boot Bus Extender

-Sauvez le fichier usb.inf.

Fichier usbport.inf

-Editez le fichier usbport.inf, et changez les lignes en gras dans les sections EHCI.AddService], [OHCI.AddService], [UHCI.AddService] et [ROOTHUB.AddService] comme ci-dessous :

    [EHCI.AddService]
    DisplayName = %EHCIMP.SvcDesc%
    ServiceType = 1 ; SERVICE_KERNEL_DRIVER
    StartType = 0 ; SERVICE_DEMAND_START
    ErrorControl = 1 ; SERVICE_ERROR_NORMAL
    ServiceBinary = %12%\usbehci.sys
    LoadOrderGroup = Boot Bus Extender

    [OHCI.AddService]
    DisplayName = %OHCIMP.SvcDesc%
    ServiceType = 1 ; SERVICE_KERNEL_DRIVER
    StartType = 0 ; SERVICE_DEMAND_START
    ErrorControl = 1 ; SERVICE_ERROR_NORMAL
    ServiceBinary = %12%\usbohci.sys
    LoadOrderGroup = Boot Bus Extender

    [UHCI.AddService]
    DisplayName = %UHCIMP.SvcDesc%
    ServiceType = 1 ; SERVICE_KERNEL_DRIVER
    StartType = 0 ; SERVICE_DEMAND_START
    ErrorControl = 1 ; SERVICE_ERROR_NORMAL
    ServiceBinary = %12%\usbuhci.sys
    LoadOrderGroup = Boot Bus Extender

    [ROOTHUB.AddService]
    DisplayName = %ROOTHUB.SvcDesc%
    ServiceType = 1 ; SERVICE_KERNEL_DRIVER
    StartType = 0 ; SERVICE_DEMAND_START
    ErrorControl = 1 ; SERVICE_ERROR_NORMAL
    ServiceBinary = %12%\usbhub.sys
    LoadOrderGroup = Boot Bus Extender

-Sauvez le fichier usbport.inf.

Fichier usbstor.inf

-Editez le fichier usbstor.inf et Changez/Ajoutez les lignes en gras dans la section [USBSTOR.AddService] comme ci-dessous :

    [USBSTOR.AddService]
    DisplayName = %USBSTOR.SvcDesc%
    ServiceType = 1
    StartType = 0
    Tag = 3
    ErrorControl = 1
    ServiceBinary = %12%\USBSTOR.SYS
    LoadOrderGroup = Boot Bus Extender

-Sauvez le fichier usbstor.inf.

Nouveau fichier : USBBOOT.INF

-Créez un nouveau fichier nommé USBBOOT.INF dans le même répertoire que les autres fichiers modifiés et copiez y les lignes ci-dessous :

    [usbservices]

    HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","DisplayName",0x00000000,"USB Mass Storage Driver"
    HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","ErrorControl",0x00010001,1
    HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","Group",0x00000000,"System Reserved"
    HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","ImagePath",0x00020000,"system32\DRIVERS\USBSTOR.SYS"
    HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","Start",0x00010001,0
    HKLM,"SYSTEM\CurrentControlSet\Services\USBSTOR","Type",0x00010001,1

    HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","DisplayName",0x00000000,"USB 2.0 Enhanced Host Controller Miniport Driver"
    HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","ErrorControl",0x00010001,1
    HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","Group",0x00000000,"System Reserved"
    HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","ImagePath",0x00020000,"system32\DRIVERS\usbehci.sys"
    HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","Start",0x00010001,0
    HKLM,"SYSTEM\CurrentControlSet\Services\usbehci","Type",0x00010001,1

    HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","DisplayName",0x00000000,"USB2 Enabled Hub"
    HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","ErrorControl",0x00010001,1
    HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","Group",0x00000000,"System Reserved"
    HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","ImagePath",0x00020000,"system32\DRIVERS\usbhub.sys"
    HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","Start",0x00010001,0
    HKLM,"SYSTEM\CurrentControlSet\Services\usbhub","Type",0x00010001,1

    HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","DisplayName",0x00000000,"Microsoft USB Universal Host Controller Miniport Driver"
    HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","ErrorControl",0x00010001,1
    HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","Group",0x00000000,"System Reserved"
    HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","ImagePath",0x00020000,"system32\DRIVERS\usbuhci.sys"
    HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","Start",0x00010001,0
    HKLM,"SYSTEM\CurrentControlSet\Services\usbuhci","Type",0x00010001,1

    HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","DisplayName",0x00000000,"Microsoft USB Open Host Controller Miniport Driver"
    HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","ErrorControl",0x00010001,1
    HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","Group",0x00000000,"System Reserved"
    HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","ImagePath",0x00020000,"system32\DRIVERS\usbohci.sys"
    HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","Start",0x00010001,0
    HKLM,"SYSTEM\CurrentControlSet\Services\usbohci","Type",0x00010001,1

-Sauvez le fichier USBBOOT.INF.

ETAPE 7

-Créez un fichier compresser.bat dans le répertoire cabSDK\BIN et copiez y les lignes suivantes :

cabarc n USB.IN_ usb.inf
cabarc n USBPORT.IN_ usbport.inf
cabarc n USBSTOR.IN_ usbstor.inf

ETAPE 8

-Double-cliquez sur le fichier compresser.bat
-Les fichiers suivants sont recréés dans le répertoire cabSDK\BIN

    * USB.IN_
    * USBPORT.IN_
    * USBSTOR.IN_

-Vous pouvez supprimer les fichiers :
   
    * usb.inf
    * usbport.inf
    * usbstor.inf

ETAPE 9

-Copier les fichiers suivants que vous venez de créer du répertoire cabSDK\BIN au répertoire C:\XP_USB\I386, vous pouvez écraser les anciennes versions :

    * TXTSETUP.SIF
    * DOSNET.INF
    * USB.IN_
    * USBPORT.IN_
    * USBSTOR.IN_
    * USBBOOT.INF

ETAPE 10

-Si votre CD de windows XP intègre le SP2 (ou si vous souhaitez créer l'image ISO en y intégrant le SP2), je vous conseille d'écraser certains drivers USB de votre répertoire C:\XP_USB\I386 avant la création de l'image ISO par ceux du SP1, pour qu' XP puisse correctement se lancer à partir de votre clé USB, comme expliqué ici : http://forums.ngine.de/viewtopic.p [...] ht=usbport

-Les fichiers de drivers USB de remplacement se trouvent dans le répertoire I386 de la racine de votre CD du SP1 :
   
usbd.sy_
usbohci.sy_
usbuhci.sy_
usbehci.sy_
usbstor.sy_
usbhub.sy_
usbport.sy_
USBGGCP.SY_

ETAPE 11

-Créez l'image ISO du répertoire C:\XP_USB, vous pouvez utiliser pour cela l'application WinFuture xp-Iso-Builder téléchargeable gratuitement à l'adresse : http://www.winfuture.de/xpisobuilder3_en
-Note : A cette étape, vous pouvez inclure le SP2 (http://www.clubic.com/telecharger- [...] -sp2-.html) dans votre installation, cependant, les drivers USB utilisés peuvent faire planter le démarrage d'XP sur votre clé après installation : La solution est la création de l'image, puis son édition avec ULTRA-ISO par exemple, pour supprimer les drivers USB SP2 et intégrer les drivers USB SP1 comme expliqué à l'étape 10.

ETAPE 12

-Graver l'image ISO sur un CD (de préférence réinscriptible  :) ) avec DeepBurner 1.8.0.224 ou le logiciel de gravure de votre choix.

ETAPE 13

-Eteignez votre ordinateur. Déconnectez tout vos disques internes et externes (Afin que Windows ne les voie pas durant l'installation et ne puisse pas lire leur Master Boot Records hehe). Certains ordinateurs ne pourront pas démarrer sans un disque dur interne connecté, vérifiez dans votre bios s'il est possible de supprimer le disque dur de la séquence de boot et positionnez le disque USB en tant que first boot device, et le CDROM en second.

-Connectez votre clé usb directement à l'ordinateur, sans aucun hub entre les deux.
-Démarrez votre ordinateur et lancez l'installation de Windows XP sur votre clé (lors de l'installation, formattez votre clé au format NTFS).

-Une fois que le système est lancé, éteignez l'ordinateur et reconnectez vos disques.

Encore merci à Emanuel Schleussinger pour son tutorial (en anglais) : http://www.ngine.de
Prochainement je vais vous fournir une méthode plus simple ( en 3 ligne ) qui permet de faire la même  chose .
Bon courage  ;)



Aucun commentaire:

Enregistrer un commentaire