Créer un lecteur USB Windows 10 (UEFI) amorçable à partir de Linux

24

Comment puis-je créer un lecteur USB Windows 10 amorçable à partir de Linux?

Notez s'il vous plaît:

  • WinUSB ne fonctionne pas avec Windows 10.
  • UNetbootin ne fonctionne pas non plus.
  • dd la méthode ne fonctionnait pas aussi bien.

À côté de cela, j'ai essayé de créer une table de partition GPT et une partition de type ef00 et formatée en fat32, puis j'ai copié tout le contenu ISO. Il démarre correctement, mais lorsque je commence l'installation, il affiche l'invite de dialogue de support.

Mise à jour

Un autre essai:

  1. Créé un GPT
  2. Création d'un FAT32 à la fin du lecteur de 50 Mo
  3. NTFS créé à l'espace restant
  4. Mettez UEFI: NTFS sur FAT32
  5. Contenu ISO copié sur NTFS

L'installation démarre correctement, mais au début de la progression, affiche l'erreur 0xc0000005 (si je me souviens bien).

Victor Aurélio
la source
Je pense qu'il devrait être formaté en NTFS ... (êtes-vous le gars qui a demandé cela sur reddit aussi btw?)
Alex
@Alex, non, ce n'était pas moi ... et non, UEFI ne peut démarrer qu'à partir de FAT32!
Victor Aurélio
Avez-vous réparé le magasin BCD?
fpmurphy
@ fpmurphy1 non, comment faire?
Victor Aurélio
1
Que signifie «Mettre UEFI: NTFS sur FAT32»?
Philipp Ludwig

Réponses:

7

Tu as bien fait. Créez un tableau gpt avec fat32 et copiez toutes les données de l'iso dessus. Mais vous devez également définir l'indicateur "msftdata" (pas "boot") sur cette partition avec par exemple parted.

Feretj
la source
1
Pour ceux qui utilisent gdisk: au lieu de créer un ef00créer une 0700partition.
Victor Aurélio
mettre le drapeau "msftdata" (pas "boot"), merci @Feretj, tu me
sauves la
Vous ne pouvez pas mettre toutes les données sur un lecteur FAT32 à partir de juin 2019. La dernière mise à jour contient un windows.wimqui est supérieur à 4,1 Gio.
Ben
8

Guide de préparation de la clé USB de démarrage UEFI pour Windows 10 octobre 2018 sur n'importe quelle distribution Linux.

Notez que la version d'octobre 2018 de Windows 10 a un fichier d'installation sources/install.wimplus grand que la FAT32taille de fichier maximale , nous allons donc formater la clé USB en NTFS. Le programme d'installation de Windows ne peut pas non plus fonctionner avec une partition EFI (code ef00), nous utiliserons donc le Microsoft basic datatype de partition (code 0700).

Étapes pour créer un lecteur USB avec un nom /dev/sdc( Remplacez toutes les commandes par le nom de VOTRE appareil! ):

  1. Insérez la clé USB dans l'ordinateur et assurez-vous qu'elle n'est pas montée. Certaines distributions aiment monter automatiquement des lecteurs USB, alors assurez-vous de les démonter. Les partitions montées peuvent être trouvées avec mount -l | grep '/dev/sdc', puis démontées avec sudo umount /dev/sdcX(X est le numéro de partition).
  2. Ouvrez le périphérique de blocage USB à l'aide de gdisk /dev/sdc, configurez-le en tant que GPTet créez la Microsoft basic datapartition (code 0700), puis écrivez les modifications et quittez (les étapes suivantes détruiront la table de partition sur votre clé USB !!! ).
sudo gdisk /dev/sdc
o
> This option deletes all partitions and creates a new protective MBR.
> Proceed? (Y/N): y
n
> Partition number ... > hit Enter
> First sector ... : > hit Enter
> Last sector ... : > hit Enter
> Current type is 'Linux filesystem'
> Hex code or GUID (L to show codes, Enter = 8300): 0700
p
> Should print something like:
> Disk /dev/sdc: 15646720 sectors, 7.5 GiB
> Model: DataTraveler 160
> Sector size (logical/physical): 512/512 bytes
> Disk identifier (GUID): ...
> Partition table holds up to 128 entries
> Main partition table begins at sector 2 and ends at sector 33
> First usable sector is 34, last usable sector is 15646686
> Partitions will be aligned on 2048-sector boundaries
> Total free space is 2014 sectors (1007.0 KiB)
> Number  Start (sector)    End (sector)  Size       Code  Name
>    1            2048        15646686   7.5 GiB     0700  Microsoft basic data
w
> Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING PARTITIONS!!
> Do you want to proceed? (Y/N): y
q
  1. Formatez la nouvelle partition en NTFS:
sudo mkfs.ntfs /dev/sdc1
  1. Montez une nouvelle partition USB dans un répertoire temporaire de votre domicile:
mkdir ~/tmp-win10-usb-drive
sudo mount /dev/sdc1 ~/tmp-win10-usb-drive
  1. Téléchargez l'ISO d'installation de Windows, créez un nouveau répertoire temporaire dans votre maison et montez-le là:
mkdir ~/tmp-win10-iso-mnt
sudo mount Win10_1809Oct_English_x64.iso ~/tmp-win10-iso-mnt
  1. Copiez tous les fichiers de l'ISO monté sur le lecteur USB (vous pouvez utiliser rsyncpour voir la progression):
sudo cp -rT ~/tmp-win10-iso-mnt/ ~/tmp-win10-usb-drive/
  1. Démontez le lecteur Windows ISO et USB et supprimez les répertoires temporaires:
sudo umount ~/tmp-win10-iso-mnt/ ~/tmp-win10-usb-drive/
rmdir ~/tmp-win10-iso-mnt/ ~/tmp-win10-usb-drive/
  1. Insérez une clé USB dans un nouvel ordinateur et démarrez-le.
Lirt
la source
2
Certains firmwares ne vérifient pas les fichiers de démarrage dans une partition NTFS, quelqu'un me corrige si je me trompe.
Victor Aurélio
Vous pouvez compresser install.wim pour qu'il soit inférieur à 4 Go en utilisant le niveau de compression "wimtools" et "solid". De cette façon, vous pouvez simplement utiliser FAT32, voir tqdev.com/2019-cannot-copy-windows-10-install-wim
mevdschee
Vous pouvez accélérer considérablement le formatage de la clé lorsque vous sautez d'abord le remplissage avec des zéros: sudo mkfs.ntfs -Q / dev / sdc1
Robert
3

J'ai utilisé woeusb sur Ubuntu de la manière suivante ( Attention: cela écrasera toute votre table de partition! ):

sudo woeusb --tgt-fs NTFS --device Win10_1809Oct_Hungarian_x64.iso /dev/sdc

Si vous rencontrez ce message d'erreur:

La partition est toujours détectée après avoir effacé toutes les signatures, cela indique que le lecteur peut être verrouillé en mode lecture seule en raison de la fin de la durée de vie.

procédez comme suit sudo fdisk /dev/sdc:, dpuis choisissez et enfinw .

(Source: https://github.com/slacka/WoeUSB/issues/219 .) Après cela, essayez à nouveau d'exécuter la commande ci-dessus.

Quoi qu'il en soit, avec cette méthode, woeusb a créé une table de partition gpt avec deux partitions:

partition      file system    label          size          flags
----------------------------------------------------------------
/dev/sdc1      nfts           Windows USB     57.00 GiB
/dev/sdc2      fat16          UEFI_NTFS      512.00 KiB    lba
unallocated                                    4.00 MiB

Enfin, tout ce que j'avais à faire était de mettre l' indicateur de démarrage avec gparted pour la partition / dev / sdc2 (à côté de lba).

De cette façon, j'ai pu démarrer avec succès en mode UEFI et installer Windows 10 à partir de ma clé USB.

Varga
la source
Commentant juste pour me rappeler de voter positivement si cela fonctionne.
Ce brésilien Guy
2

Essayez d'utiliser Rufus avec Wine.

Cordialement.

aalf1987
la source
2
Ce n'est pas une solution "linux".
Victor Aurélio
1
Mais ça marche bien.
aalf1987
Rufus est open source. Rapide, efficace, fonctionne sous Linux. Merci!
akhmed
0

La partition EFI doit être Fat32. C'est dans la spécification EFI. Votre système ne démarrera jamais si vous placez les fichiers d'installation sur une partition NTFS.

Vous n'avez même pas besoin de logiciel spécial. GPT / FAT32 pour le programme d'installation, extrayez tous les fichiers de l'iso (je suppose que vous avez la dernière iso en utilisant l'outil de création de médias, car il inclut la mise à jour de novembre), et définissez le "drapeau de démarrage" à l'aide de gparted. Il démarrera ensuite dans le programme d'installation en mode EFI en supposant que vous sélectionnez EFI USB dans les options de démarrage au démarrage de votre ordinateur.

Pingers.

Pingers
la source
Le problème est que dès que le programme d'installation commence le processus, il génère une erreur, décrite dans la question.
Victor Aurélio
vous avez essayé avec un iso différent? Je soupçonnerais ma source. Prenez le dernier comme décrit dans ma réponse. Si vous démarrez avec cela sur votre clé USB et que vous obtenez toujours une erreur, je commencerais à remettre en question le matériel ...
Pingers
oui je l'ai essayé aussi ...
Victor Aurélio