Windows 10 Installation USB-Stick unter Linux erstellen (UEFI/neueres BIOS)

Um unter Linux für Windows 10 einen USB-Stick zur Installation erstellen, muss man etwas mehr tun, es gibt keine vorgefertigten Tools. Hier eine Kurzanleitung für Moderne PCs mit UEFI:

/dev/sda im Folgenden durch euren USB-Stick ersetzen.

# Partitionierung
DEVICE=/dev/sda

# Partitionierung auf dem USB Stick löschen
dd if=/dev/zero of=$DEVICE bs=1M count=1

# Partitionen einrichten
fdisk ${DEVICE}
n
p
1
ENTER
ENTER
t
c
a
w

# Formatierung, mounten des Laufwerks
mkfs.vfat ${DEVICE}1
mkdir /mnt/usb
mount ${DEVICE}1 /mnt/usb

# Kopieren der Daten
mkdir Win10
mount -o loop Win10_1709_German_x64.iso Win10
cp -a Win10/* /mnt/usb

# Aushängen der Laufwerke
umount /mnt/usb
umount Win10

Nun einfach davon booten. Ins BIOS kommt ihr meist, wenn ihr sofort nach dem Einschalten eures PCs ESC, F1, F2, F8, F11 oder F12 drückt. Viel Erfolg!

This entry was posted in Linux and tagged , , , , , . Bookmark the permalink.

10 Responses to Windows 10 Installation USB-Stick unter Linux erstellen (UEFI/neueres BIOS)

  1. daniel says:

    Funktioniert in keinster Weise. Wie auch? Bootflag alleine reicht nicht. Irgendnen MBR-Eintrag benötigt der Stick doch auch.

  2. Tom says:

    Funktioniert einwandfrei.
    Hatte zuerst auch erst gedacht das es nicht funktioniert, hab dann mal einen anderen USB Port verwendet und da läuft es ganz problemlos.
    Vielen Dank

  3. pattes says:

    Hallo,
    Ich möchte mich Hier auch mal für die Aufmerksamen “code_Zeilen”bedanken!
    Als Ubuntu Nutzer kann ich mit /mnt/usb nicht viel Anfangen,aber das hier ist eine Generelle Lösung und die klappt natürlich perfekt!

    Also vielen Dank
    lg aus Belgien

  4. rosecamp says:

    Vielen Dank für die Anleitung! Ich bin allerdings Normalnutzerin (Privatrechner) und und habe folgendes Problem: die genannten Befehle müssen ja (fast) durchgehend als Root erteilt werden.
    Bei [CODE]sudo mount -o loop ‘/home/user/Win10_1709_German_x64.iso’ Win10[/CODE] erhalte ich die Rückmeldung [QUOTE]mount: /dev/loop0 is write-protected, mounting read-only[/QUOTE].
    Beim vorletzten Schritt heißt es dann durch die Bank: [QUOTE] cp: der Eigentümer für ‘/mnt/usb/xxx/xxx.xxx’ konnte nicht beibehalten werden: Vorgang nicht zulässig[/QUOTE]
    Natürlich sind meine Download-Verzeichnisse, wo die Windows.iso-Datei liegt, nicht mit Rootrechten oder -eigentum versehen. Ich habe schon etliche Male in beide Richtungen versucht, die Rechte anzugleichen. Wenn ich die ISO-Datei in den Root-Besitz überführe, kann ich den Bootstick beschreiben. Beim Booten hänge ich dann aber bei “Verifying DMI Pool Data” fest.
    Anders herum, also indem ich beim Einhängen per mount -o uid=xxx,gid=xxx Pfad Pfad meinen Benutzer und seine Gruppe als Eigentümer definiere, kommt immer wieder die gleiche Fehlermeldung.
    Kann mir da jemand helfen?

    • marandus says:

      Falls noch aktuell hier mal eine Antwort dazu 😉

      Die Meldung bzgl. Read-Only ist normal, ein ISO kann nur Read-Only gemountet werden. Kann also getrost ignoriert werden.
      Die Meldungen bzgl. Eigentümer hatte ich auch, haben aber keine Probleme verursacht. Liegt vermutlich daran, dass in der ISO (die ja eigentlich für eine DVD gedacht ist) Rechte definiert sind, die auf einem USB Stick nicht abbildbar sind oder so. Auf keinen Fall an den Rechten herumspielen, dann kann es wohl sein, dass der Rechner beim booten den Stick nicht korrekt lesen kann.

      Ich konnte trotz der ganzen Meldungen nach dem umount ganz normal vom Stick booten. Hat wunderbar funktioniert.

  5. Jo says:

    Klappt wunderbar. Erstelle auf diese Weise immer meine Windows 10 USB-Sticks, wenn ich sie brauche. Vielen Dank für diese tolle Anleitung!

  6. mop says:

    Hallo,

    habe das Script ein wenig gepimpt, getest und funktioniert!

    #!/bin/bash

    #parameter, wir brauchen 2
    #den Pfad/Dateinamen des ISOs und das USB Device
    if !(($#==2)) ; then
    echo “Benötige 2 Paramenter”
    echo ” Dateiname mit Pfad zum iso und den letzten Buchstaben des Device (für /dev/sdd d, /dev/sde e)”
    echo “Abbruch!”
    exit
    fi
    #quell-image
    q=$1
    #ziel device, nur buchstabe
    z=$2
    #ziel device, komplett
    DEVICE=/dev/sd$z
    # existiert die Quelldatei?
    if !([ -f $q ]) ; then
    echo Quelldatei $q existiert nicht, beende
    exit
    fi
    # existiert das DEVICE
    if !([ -b $DEVICE ]) ; then
    echo Device ${DEVICE} existiert nicht, beende
    exit
    fi
    #ilegale device, festplattenschutz, habe deren 3, niemand möchte / formatiert wissen.
    illegal=”/dev/sda /dev/sdb /dev/sdc”
    for d in $illegal
    do
    if [ “$d” == “$DEVICE” ] ; then
    echo “Festplatte als Ziel $DEVICE bedeutet Datenverlust,beende!”
    exit
    fi
    done;
    #info
    echo Schreibe $q auf $DEVICE
    #Sicherheitsabfrage
    read -p “Weitermachen? mit y werden alle Daten auf $DEVICE gelöscht y/n ” kommando
    if [ $kommando != ‘y’ ]; then
    echo “Abbruch!”;
    fi
    # Partitionierung auf dem USB Stick löschen
    dd if=/dev/zero of=$DEVICE bs=1M count=1
    # Partitionen einrichten
    fdisk ${DEVICE} <<EOF
    n
    p
    1
    `echo`
    `echo`
    t
    c
    a
    w
    EOF

    # Formatierung, mounten des Laufwerks
    #mountpunkte, Geschmackssache
    mpq=/mnt/win10/
    mpz=/mnt/usb
    mkfs.vfat ${DEVICE}1
    mkdir $mpz
    mount ${DEVICE}1 $mpz
    # Kopieren der Daten
    mkdir $mpq
    mount -o loop $q $mpq
    #copy hat kein Progressanzeiger
    #cp -a $mpq/* $mpz
    #rsync hat einen Progressanzeiger
    rsync -a -P $mpq/* $mpz
    # Aushängen der Laufwerke
    echo umounten und mountpoint löschen, kann ewig dauern bis Daten aus den Cache geschrieben sind, 5-10min max.
    umount $mpz
    umount $mpq
    #mountpunke löschen
    rmdir $mpq
    rmdir $mpz

    echo FERTIG!

    • mop says:

      Leider sind Zeilenumbrüche und Einrückungen flöten gegangen.
      rsync wirft auch Fehler aus, da es natürlich auf vFAT keine Linux Dateiattribute setzen kann, ziehe es trotsdem cp vor.

Leave a Reply

Your email address will not be published. Required fields are marked *