Wenn Sie es schaffen, all diese Aufgaben von Ihrem Linux-Desktop aus zu erledigen , werden Sie das Haus rocken. Ich denke, der schwierigste Teil wäre es, an all den Vorgängen zu fummeln, die Windows Diskpart ausführt. Die Partition als 'aktiv' und 'booten', 'primär' usw.
OK, nachdem ich alle hier erwähnten Methoden erfolglos ausprobiert habe, habe ich es endlich zum Laufen gebracht. Grundsätzlich fehlte der Schritt, einen richtigen Bootsektor auf den USB-Stick zu schreiben, was unter Linux mit ms-sysoder möglich ist lilo -M. Dies funktioniert mit der Windows 7-Verkaufsversion.
Hier ist nochmal der komplette Überblick:
Installieren Sie ms-sys - falls es nicht in Ihren Repositories enthalten ist, können Sie es hier herunterladen . Oder alternativ, stellen Sie sicher , lilo installiert ist (aber nicht die liloconfig Schritt auf dem lokalen Feld laufen , wenn zB Grub dort installiert ist!)
Überprüfen Sie, welches Gerät Ihrem USB-Medium zugewiesen ist - hier wird davon ausgegangen, dass es sich um ein Gerät handelt /dev/sdb. Löschen Sie alle Partitionen, erstellen Sie eine neue Partition, die den gesamten Speicherplatz beansprucht, setzen Sie den Typ auf NTFS (7) und legen Sie fest, dass die Partition bootfähig ist:
# cfdisk /dev/sdboderfdisk /dev/sdb (Partitionstyp 7 und bootfähiges Flag)
Erstellen Sie ein NTFS-Dateisystem:
# mkfs.ntfs -f /dev/sdb1
Schreiben Sie Windows 7 MBR auf den USB-Stick (funktioniert auch für Windows 8), hier mehrere Optionen:
# ms-sys -7 /dev/sdb
oder (zB bei neueren Ubuntu-Installationen) sudo lilo -M /dev/sdb mbr( info )
oder (wenn syslinux installiert ist), können Sie ausführen sudo dd if=/usr/lib/syslinux/mbr/mbr.bin of=/dev/sdb
ISO- und USB-Medien einbinden:
# mount -o loop win7.iso / mnt / iso
# mount / dev / sdb1 / mnt / usb
Kopieren Sie über alle Dateien:
# cp -r /mnt/iso/* /mnt/usb/... oder verwenden Sie den Standard-GUI-Dateibrowser Ihres Systems
Rufen Sie syncan, um sicherzustellen, dass alle Dateien geschrieben sind.
Öffnen Sie gparted, wählen Sie das USB-Laufwerk aus, klicken Sie mit der rechten Maustaste auf das Dateisystem und klicken Sie dann auf "Flags verwalten". Aktivieren Sie das Kontrollkästchen zum Starten und schließen Sie es.
...und du bist fertig.
Nach all dem möchten Sie wahrscheinlich Ihr USB-Medium für weitere Installationen sichern und die ISO-Datei entfernen ... Verwenden Sie einfach dd:
# dd if=/dev/sdb of=win7.img
Beachten Sie, dies kopiert das gesamte Gerät! - Das ist normalerweise (viel) größer als die darauf kopierten Dateien. Also schlage ich stattdessen vor
# dd count=[(size of the ISO file in MB plus some extra MB for boot block) divided by default dd blocksize] if=/dev/sdb of=win7.img
Überprüfen Sie die Gerätenamen wie immer sehr sorgfältig, wenn Sie mit ihnen arbeiten dd.
Die oben dargestellte Methode zum Erstellen eines bootfähigen USB funktioniert auch mit dem Win10-Installationsprogramm iso. Ich habe es mit Ubuntu 16.04 versucht, indem ich Win10_1703_SingleLang_English_x64.iso (Größe 4.241.291.264 Byte) auf einen 8-GB-USB-Stick kopierte - nur in einem Nicht-UEFI-Boot (nicht sicher). Nach der Ausführung meldet dd: 8300156 + 0 Datensätze in 8300156 + 0 Datensätze aus 4249679872 kopierten Bytes (4,2 GB, 4,0 GiB), 412,807 s, 10,3 MB / s
Kehren Sie um, wenn Sie das Windows 7-Installationsprogramm das nächste Mal auf USB übertragen möchten.
Wäre schön, den numerischen Partitionstyp zu erwähnen, der auch in cfdisk verwendet werden soll (7, 86, 87?)
Johan Dahlin
5
Es funktionierte mit Typ 7
Ropez
3
Nur ein Hinweis: Wenn Ihr ntfs-Dateisystem seltsame Berechtigungsfehler aufweist, wenn Sie selbst als Root darauf schreiben, stellen Sie sicher, dass Sie ntfs-3g installiert haben.
Jeremy Salwen
1
Ich habe dies direkt auf einer Festplatte versucht und die Fehlermeldung "Windows kann nicht auf die Installationsquellen zugreifen" erhalten, nachdem ich von dieser gestartet habe.
Jeremy Salwen
4
Rufen Sie syncnach der Kopie an, um sicherzustellen, dass alle Dateien geschrieben sind
Nicolas Dusart
13
Sie können dies mit dd erreichen, wenn Ihr PC UEFI und in der Erweiterung GPT-Festplatten unterstützt.
Öffnen Sie ein Terminal, um herauszufinden, welches Gerät Ihr Pendrive ist. Wenn Sie das Laufwerk gemountet haben, können Sie den Namen des Geräts finden, indem Sie "mount" eingeben und sich dessen Eintrag ansehen. So etwas wie das folgende:
/dev/sdb1 on /media/USBDISK type vfat (rw,nosuid,nodev,uhelper=hal,uid=1000,utf8,shortname=mixed)
In diesem Fall wird die erste Partition von / dev / sdb unter / media / USBDISK gemountet. Öffnen Sie eine Root-Shell und hängen Sie das Laufwerk aus.
umount /dev/sdb1
Wechseln Sie in das Verzeichnis, in dem Ihre ISO-Datei in einer Root-Shell gespeichert ist, und geben Sie Folgendes ein: (Ersetzen Sie windows7.iso durch die ISO-Datei und / dev / sdb durch die Geräte-ID Ihres USB-Sticks.)
dd if=windows7.iso of=/dev/sdb
Wenn Ihr Motherboard das Booten von einem pendrive unterstützt, sollte es in der Lage sein, von diesem zu booten. Dadurch wird das Installationsprogramm auf dem Laufwerk und nicht das Betriebssystem selbst installiert.
Unterstützt Ihr Motherboard das Booten von USB? Das ist der entscheidende Faktor, ob dieser Ansatz funktioniert oder nicht.
TrueDuality
11
Funktioniert auch nicht für mich und mein Computer unterstützt das Booten über USB einwandfrei. Möglicherweise funktioniert dieser Ansatz auf Computern, die einen USB-Speicher im DVD-Stil booten können, aber die meisten BIOS-Systeme setzen ein USB-Layout im HDD-Stil voraus (512-Byte-MBR mit darin enthaltenem Boot-Code). Zu erwähnen ist, dass Fedora-CD / DVD-Images im Gegensatz zu W7 über einen solchen MBR mit Bootcode und Partitionstabelle verfügen, sodass sie auch für das Booten über Festplatte / USB geeignet sind.
Tronic
9
Dies setzt voraus, dass Ihr Motherboard nicht nur USB-HDD
booten kann
12
Bei dieser Lösung fehlt der MBR-Installationsschritt und sie funktioniert normalerweise nur, wenn sie auf magische Weise bereits vorhanden ist. Die Lösung von @Gunthers ist vollständig.
Stolsvik
5
Der Vorschlag von PCambell ist gut, aber Sie möchten auch den MBR löschen. Das Linux-Äquivalent finden Sie weiter unten
Ich habe es versucht und es hat funktioniert (ich bin nicht sicher, warum die dd-Methode fehlgeschlagen ist, aber die Partition musste ntfs sein?):
Finde heraus, welches / dev / device dein USB-Stick ist und hänge es ab
Löschen Sie den MBR: dd if = / dev / zero von = / dev / device bs = 446 count = 1
Führen Sie fdisk / dev / device aus
Entfernen Sie alle Partitionen und erstellen Sie eine primäre Partition. Machen Sie diese bootfähig und speichern Sie die Änderungen
Führen Sie mkfs.ntfs / dev / device1 (Partition 1) aus.
Kopieren Sie den gesamten Inhalt der Windows-Installations-ISO auf die von Ihnen erstellte Partition
Antworten:
OK, nachdem ich alle hier erwähnten Methoden erfolglos ausprobiert habe, habe ich es endlich zum Laufen gebracht. Grundsätzlich fehlte der Schritt, einen richtigen Bootsektor auf den USB-Stick zu schreiben, was unter Linux mit
ms-sys
oder möglich istlilo -M
. Dies funktioniert mit der Windows 7-Verkaufsversion.Hier ist nochmal der komplette Überblick:
Installieren Sie ms-sys - falls es nicht in Ihren Repositories enthalten ist, können Sie es hier herunterladen . Oder alternativ, stellen Sie sicher , lilo installiert ist (aber nicht die liloconfig Schritt auf dem lokalen Feld laufen , wenn zB Grub dort installiert ist!)
Überprüfen Sie, welches Gerät Ihrem USB-Medium zugewiesen ist - hier wird davon ausgegangen, dass es sich um ein Gerät handelt
/dev/sdb
. Löschen Sie alle Partitionen, erstellen Sie eine neue Partition, die den gesamten Speicherplatz beansprucht, setzen Sie den Typ auf NTFS (7) und legen Sie fest, dass die Partition bootfähig ist:# cfdisk /dev/sdb
oderfdisk /dev/sdb
(Partitionstyp 7 und bootfähiges Flag)Erstellen Sie ein NTFS-Dateisystem:
# mkfs.ntfs -f /dev/sdb1
Schreiben Sie Windows 7 MBR auf den USB-Stick (funktioniert auch für Windows 8), hier mehrere Optionen:
# ms-sys -7 /dev/sdb
sudo lilo -M /dev/sdb mbr
( info )sudo dd if=/usr/lib/syslinux/mbr/mbr.bin of=/dev/sdb
ISO- und USB-Medien einbinden:
Kopieren Sie über alle Dateien:
# cp -r /mnt/iso/* /mnt/usb/
... oder verwenden Sie den Standard-GUI-Dateibrowser Ihres SystemsRufen Sie
sync
an, um sicherzustellen, dass alle Dateien geschrieben sind.Öffnen Sie gparted, wählen Sie das USB-Laufwerk aus, klicken Sie mit der rechten Maustaste auf das Dateisystem und klicken Sie dann auf "Flags verwalten". Aktivieren Sie das Kontrollkästchen zum Starten und schließen Sie es.
...und du bist fertig.
Nach all dem möchten Sie wahrscheinlich Ihr USB-Medium für weitere Installationen sichern und die ISO-Datei entfernen ... Verwenden Sie einfach dd:
# dd if=/dev/sdb of=win7.img
Beachten Sie, dies kopiert das gesamte Gerät! - Das ist normalerweise (viel) größer als die darauf kopierten Dateien. Also schlage ich stattdessen vor
Also zum Beispiel mit 8 M zusätzlichen Bytes:
Überprüfen Sie die Gerätenamen wie immer sehr sorgfältig, wenn Sie mit ihnen arbeiten
dd
.Die oben dargestellte Methode zum Erstellen eines bootfähigen USB funktioniert auch mit dem Win10-Installationsprogramm iso. Ich habe es mit Ubuntu 16.04 versucht, indem ich Win10_1703_SingleLang_English_x64.iso (Größe 4.241.291.264 Byte) auf einen 8-GB-USB-Stick kopierte - nur in einem Nicht-UEFI-Boot (nicht sicher). Nach der Ausführung meldet dd: 8300156 + 0 Datensätze in 8300156 + 0 Datensätze aus 4249679872 kopierten Bytes (4,2 GB, 4,0 GiB), 412,807 s, 10,3 MB / s
Kehren Sie um, wenn Sie das Windows 7-Installationsprogramm das nächste Mal auf USB übertragen möchten.
quelle
sync
nach der Kopie an, um sicherzustellen, dass alle Dateien geschrieben sindSie können dies mit dd erreichen, wenn Ihr PC UEFI und in der Erweiterung GPT-Festplatten unterstützt.
Öffnen Sie ein Terminal, um herauszufinden, welches Gerät Ihr Pendrive ist. Wenn Sie das Laufwerk gemountet haben, können Sie den Namen des Geräts finden, indem Sie "mount" eingeben und sich dessen Eintrag ansehen. So etwas wie das folgende:
In diesem Fall wird die erste Partition von / dev / sdb unter / media / USBDISK gemountet. Öffnen Sie eine Root-Shell und hängen Sie das Laufwerk aus.
Wechseln Sie in das Verzeichnis, in dem Ihre ISO-Datei in einer Root-Shell gespeichert ist, und geben Sie Folgendes ein: (Ersetzen Sie windows7.iso durch die ISO-Datei und / dev / sdb durch die Geräte-ID Ihres USB-Sticks.)
Wenn Ihr Motherboard das Booten von einem pendrive unterstützt, sollte es in der Lage sein, von diesem zu booten. Dadurch wird das Installationsprogramm auf dem Laufwerk und nicht das Betriebssystem selbst installiert.
quelle
Der Vorschlag von PCambell ist gut, aber Sie möchten auch den MBR löschen. Das Linux-Äquivalent finden Sie weiter unten
Ich habe es versucht und es hat funktioniert (ich bin nicht sicher, warum die dd-Methode fehlgeschlagen ist, aber die Partition musste ntfs sein?):
quelle
Anstatt von
du schreibst als
root
,(ADD 1 am Ende oder was auch immer Ihr USB-Laufwerk platziert ist.)
quelle
dd
muss auf Geräte schreiben, nicht auf Partitionen