Ich habe:
- ISO-Image von Windows 7-Installationsmedien
- 4 GB USB-Stick
- kein DVD-Laufwerk
- Linux installiert
Ich habe:
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 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/sdb
oder fdisk /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:
# 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 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
# 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
Also zum Beispiel mit 8 M zusätzlichen Bytes:
# dd count=$(((`stat -c '%s' win7.iso` + 8*1024*1024) / 512)) if=/dev/sdb of=win7.img status=progress
Ü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.
sync
nach der Kopie an, um sicherzustellen, dass alle Dateien geschrieben sind
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.
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?):
Anstatt von
dd if=windows7.iso of=/dev/sdb
du schreibst als root
,
dd if=windows7.iso of=/dev/sdb1
(ADD 1 am Ende oder was auch immer Ihr USB-Laufwerk platziert ist.)
dd
muss auf Geräte schreiben, nicht auf Partitionen