Erstellen Sie ein bootfähiges Windows 10-USB-Laufwerk (UEFI) unter Linux

24

Wie kann ich ein bootfähiges Windows 10-USB-Laufwerk unter Linux erstellen?

Bitte beachten Sie:

  • WinUSB funktioniert nicht mit Windows 10.
  • UNetbootin funktioniert auch nicht.
  • dd Methode hat nicht so gut funktioniert.

Außerdem habe ich versucht, eine GPT-Partitionstabelle und eine Partition vom Typ ef00 zu erstellen und als fat32 zu formatieren. Anschließend habe ich alle ISO-Inhalte in diese Partition kopiert. Es bootet in Ordnung, aber wenn ich mit der Installation beginne, wird die Aufforderung zum Datenträgerdialog angezeigt.

Aktualisieren

Noch ein Versuch:

  1. Erstellt ein GPT
  2. Erstellt ein FAT32 am Ende des Laufwerks von 50 MB
  3. Erstellt NTFS auf dem verbleibenden Speicherplatz
  4. Setzen Sie UEFI: NTFS auf FAT32
  5. Kopieren von ISO-Inhalten nach NTFS

Die Installation startet in Ordnung, aber beim Start des Vorgangs wird der Fehler 0xc0000005 angezeigt (wenn ich mich richtig erinnere).

Victor Aurélio
quelle
Ich denke, es sollte NTFS formatiert sein ... (Bist du der Typ, der das auch auf reddit gefragt hat?)
Alex
@Alex, nicht, war nicht ich ... und nicht, UEFI kann nur von FAT32 booten!
Victor Aurélio
Haben Sie den BCD-Laden repariert?
Fpmurphy
@fpmurphy1 nicht, wie geht das?
Victor Aurélio
1
Was bedeutet "UEFI: NTFS auf FAT32 setzen"?
Philipp Ludwig

Antworten:

7

Du hast alles richtig gemacht. Erstelle eine gpt-Tabelle mit fat32 und kopiere alle Daten von iso darauf. Sie müssen aber auch das Flag "msftdata" (nicht "boot") auf dieser Partition setzen, indem Sie z. B. "parted" wählen.

Feretj
quelle
1
Für Benutzer von gdisk: ef00Erstellen Sie eine 0700Partition, anstatt eine zu erstellen .
Victor Aurélio
setze Flag "msftdata" (nicht "boot"), danke @Feretj, du rettest mein Leben
gpanda
Sie können ab Juni 2019 nicht alle Daten auf ein FAT32-Laufwerk übertragen. Das neueste Update enthält ein, windows.wimdas größer als 4,1 GiB ist.
Ben
8

Anleitung zur Vorbereitung des bootfähigen UEFI-USB-Laufwerks für Windows 10. Oktober 2018 auf jeder Linux-Distribution.

Beachten Sie, dass die Installationsdatei von Windows 10, Oktober 2018, sources/install.wimgrößer als die maximale FAT32Dateigröße ist. Daher formatieren wir das USB-Laufwerk auf NTFS. Windows Installer kann auch nicht mit einer EFI-Partition (Code ef00) arbeiten, daher verwenden wir den Microsoft basic dataPartitionstyp (Code 0700).

Schritte zum Erstellen eines USB-Laufwerks mit Namen /dev/sdc( Ersetzen Sie alle Befehle durch IHREN Gerätenamen! ):

  1. Stecken Sie das USB-Laufwerk in den Computer und stellen Sie sicher, dass es nicht eingehängt ist. Einige Distributionen möchten USB-Laufwerke automatisch aktivieren. Stellen Sie daher sicher, dass Sie sie deaktivieren. Bereitgestellte Partitionen finden Sie mit mount -l | grep '/dev/sdc'und entfernen Sie die Bereitstellung mit sudo umount /dev/sdcX(X ist die Partitionsnummer).
  2. Öffnen Sie das USB-Block-Gerät mit gdisk /dev/sdc, konfigurieren Sie es als GPTund erstellen Sie eine Microsoft basic dataPartition (Code 0700), schreiben Sie die Änderungen und beenden Sie es (Die nächsten Schritte zerstören die Partitionstabelle in Ihrem USB-Laufwerk !!! ).
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. Neue Partition als NTFS formatieren:
sudo mkfs.ntfs /dev/sdc1
  1. Hängen Sie eine neue USB-Partition in das temporäre Verzeichnis Ihres Hauses ein:
mkdir ~/tmp-win10-usb-drive
sudo mount /dev/sdc1 ~/tmp-win10-usb-drive
  1. Laden Sie die Windows-Installations-ISO herunter, erstellen Sie ein neues temporäres Verzeichnis bei Ihnen zu Hause und hängen Sie es dort ein:
mkdir ~/tmp-win10-iso-mnt
sudo mount Win10_1809Oct_English_x64.iso ~/tmp-win10-iso-mnt
  1. Kopieren Sie alle Dateien von der gemounteten ISO auf das USB-Laufwerk (Sie können rsyncden Fortschritt sehen):
sudo cp -rT ~/tmp-win10-iso-mnt/ ~/tmp-win10-usb-drive/
  1. Deinstallieren Sie Windows ISO und USB-Stick und entfernen Sie temporäre Verzeichnisse:
sudo umount ~/tmp-win10-iso-mnt/ ~/tmp-win10-usb-drive/
rmdir ~/tmp-win10-iso-mnt/ ~/tmp-win10-usb-drive/
  1. Stecken Sie das USB-Laufwerk in einen neuen Computer und booten Sie von diesem.
Lirt
quelle
2
Einige Firmwares suchen in einer NTFS-Partition nicht nach Startdateien, andere korrigieren mich, wenn ich falsch liege.
Victor Aurélio
Sie können install.wim mit den Komprimierungsstufen "wimtools" und "solid" so komprimieren, dass es kleiner als 4 GB ist. Auf diese Weise können Sie einfach FAT32 verwenden, siehe tqdev.com/2019-cannot-copy-windows-10-install-wim
mevdschee
Sie können die Formatierung des Sticks erheblich beschleunigen, wenn Sie das Ausfüllen mit Nullen überspringen: sudo mkfs.ntfs -Q / dev / sdc1
Robert
3

Ich habe woeusb unter Ubuntu folgendermaßen verwendet ( Achtung: Dies überschreibt Ihre gesamte Partitionstabelle! ):

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

Wenn Sie auf diese Fehlermeldung stoßen:

Nach dem Löschen aller Signaturen wird die Partition weiterhin erkannt. Dies weist darauf hin, dass das Laufwerk aufgrund des Ablaufs der Lebensdauer möglicherweise im schreibgeschützten Modus gesperrt ist.

Gehen Sie wie folgt vor: sudo fdisk /dev/sdcund wählen Sie dund dann schließlich w.

(Quelle: https://github.com/slacka/WoeUSB/issues/219 .) Versuchen Sie anschließend erneut, den obigen Befehl auszuführen.

Wie auch immer, mit dieser Methode hat woeusb eine gpt- Partitionstabelle mit zwei Partitionen erstellt:

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

Schließlich musste ich nur noch das Boot- Flag mit gparted für die Partition / dev / sdc2 (neben lba) setzen.

Auf diese Weise konnte ich erfolgreich im UEFI-Modus starten und Windows 10 von meinem USB-Stick installieren.

Varga
quelle
Kommentieren, nur um mich daran zu erinnern, ob es funktioniert.
Der Brasilianer
2

Versuchen Sie es mit Rufus mit Wein.

Grüße.

aalf1987
quelle
2
Dies ist keine "Linux" -Lösung.
Victor Aurélio
1
Aber es funktioniert gut.
aalf1987
Rufus ist Open Source. Schnell, effizient, funktioniert unter Linux. Vielen Dank!
Akhmed
0

Die EFI-Partition muss Fat32 sein. Es ist in der EFI-Spezifikation. Ihr System bootet niemals, wenn Sie die Installationsdateien auf einer NTFS-Partition ablegen.

Sie benötigen nicht einmal eine spezielle Software. GPT / FAT32 für das Installationsprogramm, extrahieren Sie alle Dateien aus der ISO (ich nehme an, Sie haben die neueste ISO mit dem Media Creation Tool, da es das November-Update enthält) und setzen Sie das "Boot-Flag" mit gparted. Anschließend wird das Installationsprogramm im EFI-Modus gestartet, vorausgesetzt, Sie wählen EFI USB aus den Startoptionen aus, wenn Ihr Computer gestartet wird.

Pinger.

Pinger
quelle
Das Problem besteht darin, dass das Installationsprogramm, sobald es mit dem Prozess beginnt, einen in der Frage beschriebenen Fehler ausgibt.
Victor Aurélio
hast du es mit einer anderen iso versucht? Ich würde meine Quelle vermuten. Besorgen Sie sich die neueste, wie in meiner Antwort beschrieben. Wenn Sie damit über Ihren USB-Anschluss booten und trotzdem eine Fehlermeldung erhalten, würde ich die Hardware in Frage stellen ...
Pingers
Ja, ich habe es auch versucht ...
Victor Aurélio