UEFI vous connaissez ? “Unified Extensible Firmware Interface”, c’est le nouveau standard qui à terme devrait remplacer le BIOS.
Les raisons principales de ce changement sont les suivantes :
UEFI adresse toutes ces limitations, et fait bien plus encore ! Pour être claire UEFI est un véritable OS embarqué. Pour en connaitre les principaux contours, voici une très bonne vidéo de présentation !
La partie qui nous préoccupe aujourd’hui est la partie disque, et dans ce domaine UEFI a de quoi faire rêver :
UEFI met fin au règne des disque MBR dont j’ai cité les limitations plus haut, et donne naissance au disque GPT (Bravo pour le nom !!) qui peuvent adresser pas moins de 128 partitions de 9.4 milliard de tera octets (Zo) par disque physique (Non, il n’y à pas erreur !).
L’accès à ces partitions gigantesques est soumis à quelques contraintes dont les principales sont les suivantes :
Cependant, si vos disques font moins de 2.2 tera et ne sont pas GPT vous pouvez quand même implémenter GPT, ceci dit l’intérêt devient plus que discutable…
Pour infos les versions précédentes de Windows permettaient déjà de créer des disques GPT, mais pas pour les partitions devant booter sur l’OS.
Comme vous le constatez également, en dehors d’un OS 64 Bits ; point de salut. Oubliez donc le boot UEFI sur les OS 32 Bits car même si cette spécification existe, Microsoft n’a pas voulu l’implémenter…
UEFI embarque un mode de compatibilité qui émule le BIOS. Le guide que je vous propose va vous permettre d’utiliser UEFI en mode natif, c’est à dire : en désactivant la compatibilité avec les anciens mode de démarrage BIOS.
La conséquence directe de ce mode natif impliquera non seulement que vos disques durs et partitions OS soient configurés en mode UEFI, mais également tout périphériques susceptibles de booter !!! Donc également les clés USB (Les CD/DVD restant lisibles dans leur format d’origine malgré l’existence d’une spécification UEFI !).
Problèmes des clés USB
Si le partitionnement du disque dur et l’installation de l’OS ne présentent pas de difficultés particulières; il va falloir ruser un peu pour les clés USB, mais nous allons voir cela tout de suite :
Le file system de l’UEFI est (accrochez-vous à votre chaise ! ) du FAT/FAT32. Cette spécification met des facto en péril vos futur déploiement du fait des limites techniques du système FAT qui ne peut pas gérer des fichiers de plus de 4 GO…(UEFI ne supportant pas non plus ExFAT !)
Pour rappel, 4 GO c’est la taille que fera votre fichier Install.WIM (le fichier principal d’installation de Windows) après l’intégration du SP1 et de quelques patches supplémentaires, c’est aussi la taille du fichier d’installation de Windows 8 !
Est-ce vraiment un problème ? … en fait pas vraiment… En repassant l’UEFI en mode compatibilité on peut s’affranchir de cette limitation et utiliser le NTFS ! Cependant, j’ai lu ça et là que ce mode de compatibilité pourrait disparaitre un jour, aussi, étudier la question avant de se retrouver au pied du mur me paraissait important.
Donc,pour contourner ce “problème” nous allons devoir créer une seconde partitions sur la clé USB que nous formaterons cette fois en NTFS, et sur laquelle nous pourrons déposer nos fichiers volumineux.
Nouvelle coquille : Windows 7 n’est capable de ne lire ou formater qu'une seule et unique partition sur un média amovible !!!! La seconde partition n’étant tout bonnement pas affichée. Windows 8 fait à peine mieux, puisqu'il affiche les deux partitions, mais ne sait lire que la première.
Le seul moyen pour que les deux partitions de cette clé soient accessibles quelque soit le contexte (BIOS, WinPE, Windows) et qu'‘elle soit détecté, non pas comme un média amovible, mais comme un disque local !
Clés USB ‘Fixed Disk’
A l’heure actuelle, vous pouvez aller acheter une clé USB qui, selon une logique propre à chaque constructeur, sera reconnue comme disque local (fixed drive), ou comme média amovible (removable device).
Soyons claire : il n’existe actuellement aucun moyen d’identifier quel est le type de la clé avant de l’avoir acheté !!!
Sachez également que vous aurez besoin du même type de clé si vous voulez utiliser WindowsToGo.
Deux solutions s’offrent à vous pour régler ce problème : soit avoir de la chance à l’achat de votre clé, soit transformer celle-ci en disque local, voici brièvement comment faire :
Téléchargez et installez l’application ChipGenius à cette adresse afin de connaitre les spécifications de votre clé USB.
Nous avons besoin de deux Informations importantes : les numéros VID et PID :
Ensuite, vous pouvez soit vous rendre sur le liens proposé par l’application, soit entrez vos VID/PID sur cette page.
quel en est l’intérêt : la page internet va vous dire quelles applications connues peuvent reformater votre clé.
Si une application existe, vous pourrez la télécharger en allant sur cette page là.
La plus part des outils de reformatage qui vous seront proposés ne fonctionnent que sur votre clé, n’essayez donc pas le même utilitaire sur un model de marque différente, vous risqueriez de détruire votre clé.
Le reformatage permet, entre autre de changer le type de votre clé et donc de transformer cette dernière en Fixed Drive.
Préparation de votre environnent de travail
Le problème de clé étant maintenant réglé, voici la liste des près-requis pour mener à bien notre installation :
Sur le PC de test, vous allez activer l’UEFI en éditant le BIOS. l’UEFI est en général configuré en mode compatible afin de pouvoir gérer à la fois les disque MBR et GPT. Vous allez le passer en mode natif UEFI :
Partitionnement de la clé USB
Insérez votre clé USB et ouvrez une invite de commande en mode administrateur. Lancez Diskpart avec les commandes suivantes :
DISKPART
LIST DISK (identifiez votre clé USB, dans cet exemple ma clé à le numéro 1)
Puis sélectionnez la avec la commande :
SELECT DISK 1 (Remplacer le chiffre 1 par le numéro correspondants à votre propre clé USB).
CLEAN (pour effacer tout contenu existant)
CREATE PARTITION PRIMARY SIZE=204
FORMAT FS=FAT32 LABEL=”EFI” QUICK
ASSIGN
CREATE PARTITION PRIMARY
FORMAT FS=NTFS LABEL=”OS” QUICK
ASSIGN
Bravo, vous venez de créer une partition Fat32 de 200 Mo et une partition NTFS qui utilise la quantité restante sur votre clé :
Préparation de la Clé USB
Munissez-vous maintenant de votre CD d’installation Windows 7/8 X64 et copiez les fichiers et répertoires suivants sur la partition nommé “EFI” de votre clé USB :
Boot
Efi
autorun.inf
Bootmgr
Bootmgr.efi
Copiez ensuite les fichiers et répertoires suivants sur la partition nommée '”OS” de votre clé USB :
Sources
Support
upgrade
setup.exe
Si Vous êtes sous Windows 7 X64, quelques opérations supplémentaires par rapport à Windows 8 sont à opérer :
Retournez dans la partition EFI et copiez le répertoire EFI\Microsoft\Boot un niveau au dessus afin qu’il se retrouve dans EFI\Boot
Récupérez le fichier Bootmgfw.efi qui se trouve dans C:\Windows\Boot\EFI et copiez le sur la clé dans le répertoire EFI\Boot en le renommant en Bootx64.efi
l’ arborescence de votre répertoire boot doit maintenant ressembler à ça :
Nous allons maintenant modifier le magasin BCD afin que le boot sache à quel endroit aller chercher ces fichiers de démarrage.
Si vous ne l’avez pas encore fait, installez Visual BCD et dans le menu Store de celui-ci, cliquez sur Open Store et choisissez le fichier E:\efi\microsoft\boot\bcd (Remplacez E par la lettre correspondant la partition EFI de votre clé USB)
Dans l’arborescence de droite sélectionnez Windows Setup
et modifiez successivement les entrées ApplicationDevice et OSDevice en remplaçant dans le chemin du ramdisk, l’emplacement [boot] par la lettre correspondant à la partition OS de votre clé USB.
Votre Magasin BCD doit normalement ressembler à ça :
Une fois ceci terminé quittez Visual BCD, Notre clé est prête !!
Préparation de l’OS
Nous allons maintenant créer un fichier de réponse afin que Windows s’installe en créant les partitions dont il à besoin pour gérer correctement l’UEFI, à savoir :
Pour Créer le fichiers de réponse installez le WAIK ou l’ ADK et lancez WSIM (Windows System Image Manager). Je vous invite à vous reporter à mon article sur l’installation silencieuse de Windows 8 pour tous les détails. le fichier à créer est en tout point identique sauf en ce qui concerne les éléments suivants :
Microsoft-Windows-Setup_neutral > DiskConfiguration >Disk
DiskID=0
sélection du 1er disque
WillWipeDisk = true
le disque sera reformaté dans son intégralité
Création d’une partition principale (Primary) pour WINRE.
Microsoft-Windows-Setup_neutral > DiskConfiguration >Disk >CreatePartition
Order = 1
définit l'ordre de création des partitions sur le disque
Size = 300
taille de la partition en Mégabits (ici 300 MO).
Type = Primary
type de partition : Primary
Création de la partition UEFI.
Microsoft-Windows-Setup_neutral > DiskConfiguration > Disk > CreatePartition
Order = 2
Size = 260
Taille minimum pour les disques Advanced Format
Type = EFI
Création de la partition MSR (réservé pour Windows).
Microsoft-Windows-Setup_neutral > DiskConfiguration > Disk > CreatePartition
Order = 3
Size = 128
Type = MSR
Création de la partition Windows
Microsoft-Windows-Setup_neutral > DiskConfiguration > Disk > CreatePartition
Order = 4
Size = 80000
Partition OS de 80 Go
Type = Primary
Création de la seconde partition NFTS
Microsoft-Windows-Setup_neutral > DiskConfiguration > Disk > CreatePartition
Extend = True
Utilise tout l'espace restant pour créer la partition
Order = 5
Type = Primary
Définition des paramètres de formatage pour nos différentes partitions :
Microsoft-Windows-Setup_neutral > DiskConfiguration > Disk > ModifyPartition
Format = NTFS
Label = WINRE
Order = 1
PartitionID = 1
Microsoft-Windows-Setup_neutral > DiskConfiguration >Disk >ModifyPartition
Format = FAT32
Label = SYSTEM
Order = 2
PartitionID = 2
Microsoft-Windows-Setup_neutral > DiskConfiguration >Disk >ModifyPartition
Format = NTFS
Label = WINDOWS
Order = 3
PartitionID = 4
Microsoft-Windows-Setup_neutral > DiskConfiguration >Disk >ModifyPartition
Format = NTFS
Label = Data
Order = 4
PartitionID = 5
Installation de l’OS
Microsoft-Windows-Setup_neutral > Image Install >OS Image >InstallTo
DiskID = 0
Disque d’installation de l’OS
Partition = 4
Partition d’installation de l’OS
Notre fichier est prêt, sauvez le sous le nom autounattend.xml sur la partition OS de votre clé USB.
Pour finir, nous allons devoir ouvrir l’image Boot.wim afin d’ordonner à Setup.exe (fichier responsable de l’installation de Windows) d’aller chercher ces informations sur la seconde partition de la clé.
Ouvrez une invite de commande en mode administrateur et tapez les commandes suivantes pour monter l’image :
MD c:\temp
Dism /Mount-Wim /WimFile:H:\sources\boot.wim /index:2 /MountDir:C:\Temp
Dans le répertoire C:\Temp\Windows\System32 nous allons créer un fichier winpesh.ini qui sera exécuté à la place de Setup.exe. Voici ce qu’il faudra y mettre :
[LaunchApps]
Cscript.exe, %WINDIR%\system32\winpesh.vbs
Enfin, un petit script vbs que nous nommerons winpesh.vbs va nous permettre de relancer setup.exe sur la bonne partition avec le fichier de réponse adéquat :
' Script By Diagg 01/05/2012
' www.zany-openeyes.fr
' Launch Windows installation setup with the first autounattend.xml found in any drive
Set oShell = CreateObject("WScript.Shell")
Set oFSO = CreateObject("Scripting.FileSystemObject")
Set oDrives = oFSO.Drives
FndXML = 0
For each oDrvFound in oDrives
If oFSO.FileExists(oDrvFound & "\autounattend.xml") Then
FndXML = 1
oShell.run "%SYSTEMDRIVE%\sources\setup.exe /unattend:"& oDrvFound & "\autounattend.xml", 0,True
Exit for
End IF
Next
If FndXML = 0 Then
oShell.run "%SYSTEMDRIVE%\sources\setup.exe", 0,True
End If
Une fois le fichier de script crée, nous pouvons refermer notre image WIM :
Dism /Unmount-Wim /Mountdir:C:\Temp /Commit
La Clé USB est maintenant 100% opérationnelle en mode “UEFI Only”, et l’OS le sera également dés qu'il sera installé.
Petit regret : la solution n’est pas compatible avec le mode “Legacy Only” (Bios uniquement) pour une raison que je n’ai pas eu le temps de déterminer ( si quelqu’un a l’info, n’hésitez pas à partager).
J’insiste encore : il est probable que vous n’ayez jamais à utiliser le mode “UEFI Only” et donc toute la partie inhérente à la clé USB. Si ce jour devait malgré tout arriver, nous somme prêt !
Je n’ai délibérément traité que la partie Boot Windows dans ce billet, les sujets sur l’UEFI sont légion : Secure Boot, Dual Boot OS X/Windows, Shell UEFI, Applications UEFI etc etc… Il est probable que je re-aborderai le sujet dans de prochains billets, d’ici là, je vous laisse vous faire la main sur la question et vous invite à méditer ce tweet de Michael Niehaus (Monsieur MDT) qui en dit long sur la question…
LES COMMENTAIRES (5)
posté le 05 octobre à 21:18
bonjour, j'ai actuellement w7(64bits) sur une clé USB, j'ai copié simplement les fichiers w7(64bits), j'installe, et j'arrive jusqu’à la détection des disques,... donc aujourd'hui, cela fonctionne, .... par contre il ne me reconnait pas tous les disques (en particulier, ceux en raid, mais les autres oui), c'est tout...
je désespères pas de trouver la solution ! :)...[c’était juste pour info]
posté le 23 avril à 15:52
Bonjour Auriez vous une solution SIMPLE pour réparer la possibilité de boot avec Uefi sur win 8 dans la mesure ou cette partition n'existe plus car du bios au boot windows 20 c'est un peu long..... Asus série Essentio 6730 d'avance merci
posté le 09 octobre à 08:54
Incompréhensible. On ne voit méme pas le pourquoi "Le guide que je vous propose va vous permettre d’utiliser UEFI en mode natif, c’est à dire : en désactivant la compatibilité avec les anciens mode de démarrage BIOS." Pourquoi et quel rapport avec le titre ???
posté le 19 mai à 17:03
Personne ne pourra jamais utiliser cette manipulation sans se tromper quelque part. Inutile.