.vhd-Disks automatisch mounten

Unter Windows 7 lassen sich zwar virtuelle Festplatte mittels der Datenträgerverwaltung erstellen, was eigentlich genial ist. Die virtuelle Festplatte wird als Laufwerk im Windows Dateisystem eingehängt. Allerdings wird die .vhd-Disk beim nächsten Systemstart nicht automatisch gemounted. Der Beitrag skizziert einen Workaround, wie sich das Einhängen automatisieren lässt. Dies gilt auch für Windows 8/8.1.


Anzeige

Hintergrundinfos gefällig?

Ein Administrator kann unter Windows 7 die Computerverwaltung aufrufen und dann in der Navigationsspalte zur Datenträgerverwaltung gehen. Über das Menü Aktion lassen sich anschließend die Befehle Virtuelle Festplatte erstellen und Virtuelle Festplatte anfügen auswählen. Ein Dialogfeld ermöglicht eine .vhd-Datei auf einem NTFS-Laufwerk als virtuelle Festplatten anzulegen bzw. über den zweiten Befehl  können bestehende .vhd-Dateien erneut in das Dateisystem einhängt werden. Einer solchen virtuellen Festplatte lässt sich ein Laufwerksbuchstaben zuweisen und das logische Laufwerk kann formatiert werden. Danach unterscheidet sich die virtuelle Festplatte nicht mehr von anderen logischen Laufwerken.

Tipp: Besitzer von Windows 7 Ultimate und Enterprise können sogar eine Kopie des Betriebssystems in eine .vhd-Datei installieren (oder mit WIM2VHD kopieren) und aus dieser .vhd-Datei booten. Dann erfolgt das Einbinden automatisch über den Windows-Bootmanager. Die Mechanismen sind in verschiedenen Internetbeiträgen sowie in meinen Windows 7-Tricks-Titeln skizziert.

Werden die virtuellen Festplatten allerdings nur als normale logische Laufwerke in das Windows-Dateisystem eingehängt, besteht aber ein Problem. Die in der Datenträgerverwaltung eingerichtete virtuelle Festplatte wird zwar beim Anlegen automatisch gemountet. Aber beim nächsten Systemstart geht das eingehängte virtuelle Laufwerk verloren – es erfolgt kein Automount (hier haben die Microsoft-Entwickler die ganze Geschichte nicht konsequent zu Ende gedacht – ähnlich, wie auch die lizenzmäßige Kastrierung der Windows 7 Home Premium und Professional, die zwar von .vhd gebootet werden kann, aber bei der Benutzeranmeldung lapidar vermerkt, dass dieser Modus für die benutzte Windows 7-Version nicht unterstützt würde).

Ein Workaround zum Automount


Anzeige

Um die virtuelle Festplatte nach einem Neustart wieder im Windows-Dateisystem einzuhängen, muss der Administrator die Computerverwaltung aufrufen und über das Menü Aktion die vhd manuell mounten. Es geht auch in der mit administrativen Rechten laufenden Eingabeaufforderung mittels des Programms diskpart, indem man folgende Befehle zum Aufrufen von diskpart und zum Mounten eingibt.

diskpart
select vdisk file=<lw:>\<pfad zur vhd>
attach vdisk
exit

Die Platzhalter <lw:> und <pfad zur vhd> müssen Sie natürlich so anpassen, dass das Laufwerk und der Pfad bzw. Dateiname der .vhd-Datei verwendet werden.

Anmerkung: Martin Brinkmann, ein deutscher Journalist, hat diesen Ansatz zu einem netten Workaround kombiniert, der auf der Seite Windows7 News in dem unter [1] referenzierten Artikel beschrieben wurde. Danke an Andree Ziegler, der den Link im Microsoft Windows 7-Forum gepostet hat. Der Artikel war mir durchgeschlüpft, da ich die Windows 7 News-Seite nur noch selten aufrufe, weil der Browser wegen eines auf den Seiten verwendeten Skripts für einigen Sekunden hängt und das Skript abgebrochen werden muss.

Die beiden rot hervorgehobenen Anweisungen aus den obigen Zeilen lassen sich mit einem Editor eingeben und in einer Textdatei automount.txt im Hauptverzeichnis des logischen Laufwerks C: speichern. Passen Sie die Platzhalter für Laufwerksname, Speicherpfad und Name der .vhd-Datei entsprechend an.

Dann ist ein zweites Textdokument im Editor unter dem Namen automountvhd.cmd zu erstellen, welches folgende Anweisung enthält.

diskpart -s "c:\automount.txt"

Falls Sie die Datei automount.txt nicht im Hauptverzeichnis des logischen Laufwerks C: gespeichert haben, müssen Sie die Laufwerks- und Pfadangabe natürlich entsprechend anpassen.

Tipp: Interessierte Leser finden übrigens eine Beschreibung der diskpart-Optionen im Web: diskpart (Befehlszeilenoptionen). Dank an HPM, der die Info in dem unter [2] verlinkten Forenbeitrag beigesteuert hat.

Ausführen bei Anmeldung

Im letzten Schritt müssen Sie nun noch die Datei automountvhd.cmd bei der Benutzeranmeldung ausführen. Martin Brinkmann schlägt vor, eine Verknüpfung auf die Datei automountvhd.cmd oder die Datei selbst im Autostart-Ordner des Benutzerkontos platzieren. Hierzu könnten Sie den Eintrag Alle Programme im geöffneten Startmenü mit der rechten Maustaste öffnen und den Kontextmenübefehl Öffnen oder Öffnen – Alle Benutzer wählen. Der erstgenannte Befehl öffnet den Programme-Ordner für den Benutzer des Kontos, während der zweite Befehl den gleichnamigen Ordner für alle Benutzer aufrufen. Sie können dann den Ordner Programme per Doppelklick anwählen und dann zum Unterordner Autostart navigieren. Platzieren Sie die Datei automountvhd.cmd im betreffenden Ordner. Dann wird der obige diskpart-Befehl bei jeder Benutzeranmeldung ausgeführt. Problem: Die Ausführung des Befehls diskpart erfordert administrative Berechtigungen.

Anmerkung: Interessierte Leser können probieren, ob sich der Ansatz aus sudo.cmd, der in diesem Blogbeitrag beschrieben wird, zum Zuweisen der benötigten Administratorenrechte verwenden lässt  ich hab's aus Zeitmangel noch nicht ausgetestet.

Die Alternative wurde von Andree Ziegler unter [2] in einem Nebensatz skizziert: Es gibt auch die Möglichkeit, die Windows-Aufgabenplanung für diesen Zweck einzusetzen.

  1. Tippen Sie im Suchfeld des Startmenüs "Aufgaben" ein und wählen Sie den eingeblendeten Befehl Aufgabenplanung.
  2. Klicken Sie im Fenster der Aufgabenplanung in der rechten Spalte auf den Befehl Neue Aufgabe erstellen.
  3. Richten Sie im dann eingeblendeten Eigenschaftenfenster die neue Aufgabe zum Ausführen der Datei automountvhd.cmd ein.

Auf der Registerkarte Allgemein tragen Sie einen Namen für die Aufgabe ein und legen den Speicherort fest. Zudem ist das Optionsfeld Nur ausführen, wenn der Benutzer angemeldet ist, sowie das Kontrollkästchen Mit höchsten Privilegien ausführen zu markieren.

Auf der Registerkarte Trigger legen Sie über die Schaltfläche Neu einen Eintrag an und setzen den Wert für Aufgabe starten auf "Bei Anmeldung". Alternativ könnten Sie auch "Bei Start" wählen, müssten dann aber auf der Registerkarte Allgemein die Option Unabhängig von der Benutzeranmeldung ausführen vorgeben.

Auf der Registerkarte Aktionen legen Sie über die Schaltfläche Neu einen Eintrag an und setzen die Aktion auf "Programm starten". Im Dialogfeld können Sie den Pfad zur Datei automountvhd.cmd eintragen.

Wenn alles korrekt konfiguriert wurde und die Aufgabe über die Berechtigungen verfügt, wird das virtuelle Laufwerk dann geladen (gemountet).

Anmerkung: Der Blogbeitrag ist so etwas wie "work in motion", da mir die Zeit fehlte, die hier zusammengefassten losen Enden selbst bis zum letzten i-Tüpfelchen auszutesten. Besitzer der Windows 7-Versionen Professional, Ultimate oder Enterprise können zwei alternative Wege zum Ausführen probieren. Einmal besteht die Möglichkeit, die .cmd-Datei als Anmeldeskript im Profilpfad einzuhängen. Allerdings muss der Benutzer die Berechtigungen zum Ausführen haben. Zweiter Ansatz wäre, den Editor für Gruppenrichtlinien (gpedit.msc) aufrufen und den Zweig Computerkonfiguration\Windows-Einstellungen\Skripts (Start/Herunterfahren) anzuwählen. Ich habe es nicht verifiziert, ob .cmd-Dateien auch als Skripte zugelassen werden. Falls nicht, ließe sich die Anweisung zum diskpart-Aufruf auch in einen .ps1-PowerShell-Skriptdatei unterbringen. PowerShell-Skriptdateien lassen sich auf jeden Fall in den Startskripts unterbringen. Dann sollte es auch keine Probleme mit den Berechtigungen geben.

Links zum Originalartikel und zu Foreneinträgen:

[1] How To Automatically Attach VHD Images In Windows 7
[2]
Diskussion zur Thematik in Microsofts-Win7-Forum
[3] Blogbeitrag zu sudo.cmd


Anzeige

Dieser Beitrag wurde unter Datenträger, Problemlösung, Virtualisierung abgelegt und mit , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

6 Antworten zu .vhd-Disks automatisch mounten

  1. Suchende sagt:

    Daaaaaaaanke, funktioniert wunderbar, wobei bei mir (Win 7 Professional) nur der Weg mit der Windows-Aufgabenplanung geklappt hatte und ich musste bei meinem Laptop die Option „Aufgabe nur starten, falls Computer im Netzbetrieb ausgeführt wird" deaktivieren

  2. flybyray sagt:

    Mit dieser Information:
    http://groups.google.com/group/microsoft.public.win2000.cmdprompt.admin/msg/092e5cc12148ce2f

    kann man auch einfach in der Kommandozeile folgendes eingeben:

    <nul (set/p z=select vdisk file=\♪◙attach vdisk) |diskpart

    man muss dann keine dateien erzeugen.
    oder einfach eine verknüpfung mit:

    %COMSPEC% /C <nul (set/p z=select vdisk file=\♪◙attach vdisk) |diskpart

    Achtung! Diese Zeichenfolge: ♪◙
    ist unter Windows das CRLF (return linefeed), man generiert diese zeichen mit ALT+13 und ALT+10 wobei die Zahl auf dem Nummernblock der Tastur eingegeben wird.

  3. flybyray sagt:

    komisches kommentar board mag scheinbar irgendwie die Zeichen

    <>
    nicht

    • Günter Born sagt:

      @flybyray: Die Kommentarfunktion ist (aus rechtlichen Gründen) moderiert – daher habe ich einige deiner Doppelposts rausgenommen. Mit den Zeichen ist mir unklar, da ist eine WordPress-Funktion am werkeln – und ich hatte da bisher keine Probleme.

      Ansonsten: Danke für den Tipp – vielleicht kann es jemand brauchen.

  4. jackPot sagt:

    Simple VHD Manager is portable freeware which helps VHD users simplify some of these operations:
    – You can easily create VHD/VHDX files
    – You can attach and detach VHD/VHDX/ISO files via drag and drop
    – You can permanently attach a virtual hard disk in Windows 10 , Windows 8,1 , Windos 8, Windows 7
    – You can easily add and/or remove VHD/VHDX/ISO files to the boot menu

    http://www.sordum.org/8705/simple-vhd-manager-v1-1/

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Hinweis: Bitte beachtet die Regeln zum Kommentieren im Blog (Erstkommentare und Verlinktes landet in der Moderation, gebe ich alle paar Stunden frei, SEO-Posts/SPAM lösche ich rigoros). Kommentare abseits des Themas bitte unter Diskussion.

Du findest den Blog gut, hast aber Werbung geblockt? Du kannst diesen Blog auch durch eine Spende unterstützen.