Windows 7 in eine VHD installieren

Tja, die Nacht war für mich um drei Uhr beendet. Schlaflos in Bremerhaven. Wohl zu spät zu viel Chilli gegessen, don’t know. Zeit mal ein wenig zu frickeln und mal wieder Sachen auszuprobieren. Heute: die Installation von Windows 7 in eine VHD. Vorab die Beantwortung der Frage, was überhaupt eine Installation in eine VHD bringt. Eine VHD ist eine virtuelle Festplatte, ihr installiert euer Betriebssystem also nicht direkt auf die Festplatte (im herkömmlichen Sinne) sondern in eine Art Container. Dieser Container (bzw. das Betriebssystem darin) wird dann von einem ganz normalen Bootloader geladen. Ist simpel ausgedrückt aber sollte als grobe Erklärung reichen. Techfreaks wissen sicherlich, wo und wie sie sich schlau lesen können.

Der Vorteil von VHDs liegt auf der Hand: einfachstes Backup und die Möglichkeit ganz simpel mehrere Systeme laufen haben zu können. Ich habe das ganze mal auf einer komplett leeren 64 Gigabyte großen Festplatte installiert. Einfach mal um zu zeigen, was man für Schritte durchlaufen muss. Vieles wird man sicherlich auch woanders im Netz finden, die nötigen Quellen findet ihr am Ende des Beitrags. Damit ich euch bessere Screenshots zeigen kann, habe ich das Ganze mal in eine virtuelle Maschine (Parallels unter Mac OS X) installiert. Die Schritte sind aber identisch zur nativen Installation auf einem normalen Boliden.

Die Festplatte vorbereiten. Sofern diese jungfräulich ist, muss diese mittels Diskpart noch eingerichtet werden. Das ist relativ simpel wenn man noch einen Zweitrechner hat, an dem man sich schlau lesen kann. Diskpart müsst ihr starten, nachdem ihr (wie auf dem ersten Screenshot oben zu sehen) auf „Weiter“ geklickt habt. Wie? Ganz einfach: Shift+F10 drücken.

Nun ruft man diskpart auf. Mit list disk die Platten gegebenenfalls anzeigen lassen. Mit create partition primary erstellt ihr eine große primäre Partition. Nachträglich partitionieren kann man ja später in bunt.

Danach könnt ihr euch mit list volume noch euer Ergebnis anzeigen. Auch könnt ihr noch mit format c: /q eure Platte schnell formatieren.

Nun geht es an die Erstellung der VHD. Hier habe ich einmal die Vorgaben gemäß des HowTos von Johann Nitsch übernommen. Hackt folgendes in der Kommandozeile ein:

create vdisk file=“c:\win7.vhd“ type=expandable maximum=12000
select vdisk file=“c:\win7.vhd“
attach vdisk

Erklärung: Ihr erstellt damit auf dem Laufwerk C: eine bis zu 12 Gigabyte große VHD. Expandable heisst: sie wächst an. Verbraucht ihr weniger ist sie kleiner. Die maximale Größe beträgt allerdings 12 Gigabyte. Solltet ihr eine zu kleine VHD erstellt haben, so kann diese später noch mit dem VHD-Resizer vergrößert werden. Der Name der VHD ist übrigens frei wählbar. Wie auch der Name des GodMode für Wndows 7 😉

Mit der zweimaligen Eingabe von exit kommt ihr wieder in den normalen Installationsmodus und könnt Windows 7 benutzerdefiniert installieren.

Zu erwähnen ist, dass ihr nur Windows 7 Ultimate aus einer VHD booten könnt. Ihr könnt zwar jedes Windows 7 installieren, aber nicht booten. Ob es da irgendwelche Tipps & Tricks gibt kann ich aus dem Stehgreif nicht sagen, da ich hier nur Windows 7 Ultimate in Gebrauch habe.

Nach der Installation. Ihr werdet in eurem Explorer einmal eure gemountete VHD vorfinden und als nächstes Laufwerk die eigentliche Festplatte, welche eure VHD bereit stellt. Klingt komisch, ist aber so.

Das Schöne: ihr könnt diese VHD im laufenden Betrieb zur Sicherung irgendwo hin kopieren.

Kleines Beispiel gefällig? Erstellt von dieser VHD mal eine Kopie auf dem Laufwerk, so zum Beispiel:

Was ihr davon habt? Na, eine echte 1:1-Kopie eures lauffähigen Systems. Ihr könntet jetzt lustig Sachen ausprobieren und installieren. Läuft euer System unstabil oder ihr wollt einen alten Zustand (zum Beispiel vor einer Software-Installation haben), dann kloppt ihr die aktuelle VHD einfach in die Tonne und ihr nehmt eure angelegte Kopie (umbenennen nicht vergessen!). Des Weiteren könnt ihr auch eine VHD ganz einfach in euer System einhängen – zum Beispiel um Daten aus der VHD zu ziehen. Wie das geht beschrieb ich ja schon in diesem Beitrag: VHDs automatisch einbinden und die Verschlüsselung mit Bitlocker. Sieht dann so aus:

Alternativ könnt ihr mit der kopierten VHD auch ein zweites System nur zum Testen booten. Diese VHD muss dafür nur mit dem Bootmanager von Windows bekannt gemacht werden. Wie das geht? Eigentlich ganz easy. Führt die Kommandozeile als Admin aus (cmd, Rechtsklick: als Administrator ausführen):

Hackt nun folgendes in die Kommandozeile:

bcdedit /copy {current} /d "Boot Description"

„Boot Description“ sollte durch euren eigenen Boot-Text ersetzt werden, kann man aber später ändern (dazu gleich was).

Kopiert euch nun eure ID heraus und fügt folgendes ein:

bcdedit /set {557b2157-0aee-11df-b907-c148aff72235} osdevice vhd=[D:]\win7Testsystem.vhd

gefolgt von:

bcdedit /set {557b2157-0aee-11df-b907-c148aff72235} device vhd=[D:]\win7Testsystem.vhd

Den Pfad bzw. Namen müsst ihr logischerweise durch den eurer VHD ersetzen. Bootet ihr nun euer System, so wird euch folgendes anlächeln:

Wollt ihr Namen oder Bootreihenfolge ändern, so könnt ihr die Freeware EasyBCD benutzen.

Alternativ gibt es das gute alte msconfig:

So, jetzt ist es kurz nach halb sechs und der erste Kaffee will getrunken werden. Ich hoffe, dass ihr wenigstens ein bisschen Nutzen aus meiner Schlaflosigkeit ziehen konntet. Mit VHDs lässt sich noch wesentlich mehr bewerkstelligen, vielleicht schreibe ich in der nächsten schlaflosen Nacht noch etwas dazu 😉

Weiterführende Quellen und Lesenswertes:

Microsoft Technet: Erstellen von Partitionen mit diskpart

Windows 7 parallel zu Windows XP oder Windows Vista in eine VHD installieren

BCDEdit im Microsoft Technet erklärt

Wie funktioniert das Booten von VHDs

Adding a existent VHD to the Windows 7 Boot Loader

Windows 7: Natives Booten von VHD

Windows 7 VHD Mount

VHDs: der Computer im Computer

Disk2VHD: virtuelle Festplatten erstellen

Gefällt dir der Artikel? Dann teile ihn mit deinen Freunden.

Avatar-Foto

Hallo, ich bin Carsten! Ich bin gelernter IT-Systemelektroniker und habe das Blog 2005 gegründet. Baujahr 1977, Dortmunder im Norden, BVB-Fan und Vater eines Sohnes. Auch zu finden bei X, Threads, Facebook, LinkedIn und Instagram.

Neueste Beiträge

Mit dem Absenden eines Kommentars stimmst du unserer Datenschutzerklärung und der Speicherung von dir angegebener, personenbezogener Daten zu.

66 Kommentare

  1. Moin Caschy, habe selbst so eine Installation hier eingerichtet. Läuft perfekt ! Allerdings hatte ich mit EasyBCD so meine Probleme. Das hat mir die Einträge ein wenig „durcheinandergewürfelt“. Musste mit BCDEdit die Schlüssel frisch setzen.

    Danke für Deine Tipps !

    Gruss K-i-S

  2. Guten Morgen caschy,

    gut geschlafen? Ironie beiseite. Respekt, dass Du zu so einer Zeit einen ausführlichen, gut verständlichen und kinderleichten Artikel schreiben kannst.

    Noch als kleinen Tipp: Man kann auch über BCDEDIT die Bootreihenfolge ändern: BCDEDIT /displayorder {ID1} {ID2} {IDn} eingeben, auf caschy bezogen wäre das BCDEDIT /displayorder {current} {557b2157-0aee-11df-b907-c148aff72235}.

    Wer das Testsystem als Standardeintrag haben will: BCDEDIT /default {557b2157-0aee-11df-b907-c148aff72235}.

    BCDEDIT ist wirklich ein feines Tool. Der Bootloader von Vista/7 kann auch Grub starten, um damit ein Linuxsystem zu laden. Es geht also auch anders herum. 🙂

    Nur Deine „Backup-Methode“ hat einen kleinen Nachteil: keine Kompression, dennoch ist sie schnell und einfach. Ich denke, darum ging es Dir auch. 🙂

    Liebe Grüße,
    Enrico

  3. Moinsen, bei heutigen Plattengrößen ist mir Geschwindigkeit lieber. Kompression my ass 😉

  4. Moin,

    funktioniert auch noch mit Windows 7 Enterprise und Windows Server 2008 R2.

    Gruss Capsuel

  5. Kann ich auf diese VHD auch Windows XP installieren? Also mit Windows 7 als Hauptbetriebssystem?

  6. Willkommen im Club der Schlaflosen. Tip. lass Dir vom Hausarzt Zopiclon 7,5mg verschreiben. Eine davon und nach 20-30 min hauen die dich um.

  7. @tito
    Man kann XP schon auf einer VHD installieren, aber man kann zur Zeit nicht nativ davon booten. Dort wird jedoch an einer Lösung gearbeitet http://www.vmlite.com/index.php/products/vboot

    Zum Experimentieren empfehle ich übrigens inkrementelle VHDs
    und zur Erstellung wim2vhd
    http://code.msdn.microsoft.com/wim2vhd

  8. Noch ein Wort zu „Ihr erstellt damit auf dem Laufwerk C: eine bis zu 12 Gigabyte große VHD. Expandable heisst: sie wächst an. Verbraucht ihr weniger ist sie kleiner.“
    Nach meinen Informationen (div. Webseiten und c’t) wird die VHD beim booten auf die Maximalgröße expandiert. Wenn der freie Platz auf der physikalischen Platte dann nicht ausreicht, gibt es eine Fehlermeldung. Kann das jemand bestätigen?

  9. Na, das scheint ja ’ne gute Nacht gewesen zu sein. In dem ‚Zustand‘ noch so einen guten Artikel schreiben schafft nicht jeder. Respekt. Ich wünsche dir dafür aber einen gutes Mittagsbubu oder heute abend einen super Schlaf.

    Werd ich in nächster Zeit mal probieren, ob ich das Win7 auch bei mir zum laufen in einer VHD bekomme.

    Kann man die VHDs auch irgendwie größer als 12 GB machen, oder ist das vom Containerformat her beschränkt?

    Liebe Grüße und guten Schlaf
    Ralf

    BTW: 64 GB? klingt ganz nach SSD 😉 Aber wie du schon schriebst, du willst ja Geschwindigkeit.

  10. @ralf_donald: Ne, war nur als Beispiel 12 GB, kannst auch nehmen was geht. Keine SSD – ist ja nur ne VM 🙂

  11. Mein Laptop läuft auch mit Win7 in einer VHD, wobei ich noch das alte WinXP als zweites OS drauf hab. Zufall, dass ich vor 2 Tagen eine Kurzanleitung zu diesem Thema gebloggt hatte? 🙂

  12. @Thomas: dazu hätte ich ja dein Blog kennen müssen. Ich hatte das eh länger vor, siehe die ganzen Vorbeiträge zum Thema VHD, heute morgen hat es dann gepasst 🙂

  13. @caschy: Du hast bestimmt diverse Tools am Start, die das Internet nach tollen Beiträgen durchforsten und dir dann Futter für deinen Blog liefern 🙂
    PS: Meinen Blog kennt fast niemand ^^

  14. Das hast du dir ja mal wieder Mühe gegeben. Toller Artikel. Mal gucken, ob ich demnächst mal sowas bastel.

  15. @thomas: erzähl mir von diesem Tool 🙂

    @beelzebot: danke!

  16. JürgenHugo says:

    @Caschy:

    DAS wär mir viel zu fummelig. Aaber: du hast so schön die Vorteile beschrieben – sach mal die Nachteile…

    So wie ich das verstehe, läuft da ein OS IN einem anderen. Und die brauchen ja beide Leistung, oder? Und die Leistungsmöglichkeit des Comps is ja nun mal durch die vorhandene Hardware limitiert.

    Wenn ich also Win 7 mittels einer VHD auf deinem/meinem iMac installieren würde – dann läuft das doch im Vergleich zu dem auf dem PC instalierten grottenlangsam – oder täusch ich mich da?

    Kannst du (oder ein anderer) da mal was schlaues zu sagen? Danke schon mal. 😛

  17. @caschy: Heißen die nicht Webcrawler oder so? Theoretisch dürfte es ja ausreichen, jeden Morgen ca. 30 RSS-Feeds anzuschauen und schon hat man mindestens eine neue Idee für einen Artikel 🙂

    @JürgenHugo: Das OS in der VHD läuft nicht in einem anderen OS, sondern befindet sich lediglich auf einem reservierten Platzhalter der Partition. Mehr dazu, siehe Links am Ende des Artikels.

  18. Unbesonders says:

    Wie sieht es denn mit der Lizensierung bzw. Aktivierung von Win7 aus, welches man in der VHD installiert hat? Muss ich, wenn ich solche eine Win7-VHD erstelle dafür dann auch eine zweite Win7-Lizenz haben und diese aktivieren?

  19. entweder bin ich noch zu müde 😉 oder versteh das einfach nur so nicht. Wenn ich nach create partition und dies auch mit Die angegebene Partition wurde erfolgreich erstellt, list volume eingebe, erscheinen 2 Volumes. Doch bei Volume 1 ist kein Laufwerksbuchstabe angegeben. Volume 0 ist ja logischerweise LW D (DVD-ROM)

    Insofern kallt format c: /q auch nicht. Habe ich etwa was übersehen?

  20. @Unbesonders: Ähnlich wie bei virtuellen Maschinen gilt: „Für jede Windows-Installation, die Sie gleichzeitig betreiben, sollten Sie eine separate Lizenz besitzen.“

    @Marko: Ich musste nur anfangs „list volume“ ausführen, nach dem Erstellen der VHD nicht mehr:

    Kurzform des Ablaufs:
    diskpart
    list disk
    list volume
    create vdisk file=“c:win7.vhd“ type=expandable maximum=12000
    select vdisk file=“c:win7.vhd“
    attach vdisk
    exit
    exit

Es werden alle Kommentare moderiert. Lies auch bitte unsere Kommentarregeln:

Für eine offene Diskussion behalten wir uns vor, jeden Kommentar zu löschen, der nicht direkt auf das Thema abzielt oder nur den Zweck hat, Leser oder Autoren herabzuwürdigen. Wir möchten, dass respektvoll miteinander kommuniziert wird, so als ob die Diskussion mit real anwesenden Personen geführt wird. Dies machen wir für den Großteil unserer Leser, der sachlich und konstruktiv über ein Thema sprechen möchte - gerne auch mit Humor. In jedes Thema Politik einbringen ist nicht erwünscht.

Du willst nichts verpassen?

Du hast die Möglichkeit, den Feed dieses Beitrags zu abonnieren. Wer natürlich alles lesen möchte, der sollte den Hauptfeed abonnieren.