VHDs automatisch einbinden und die Verschlüsselung mit BitLocker

Seit Windows 7 bin ich echter Fan von VHDs. Kleiner Exkurs für die, die nicht wissen was das ist: eine Datei, die sich einfach verhält wie eine Festplatte. Nicht mehr, nicht weniger. Man kann also ganz easy im Computer-Management eine virtuelle Festplatte anlegen und ins System einhängen. Hat dann beispielsweise den Buchstaben X:, die Datei liegt aber auf C:. Hat man dann vielleicht noch Windows 7 Enterprise oder Ultimate, dann kann man diese auch ganz einfach per Bitlocker verschlüsseln. Eine virtuelle Festplatte wird dann mittels BitLocker to go verschlüsselt (siehe auch: Portable BitLocker, wie man seinen USB-Stick verschlüsselt).

2009-10-24_075349

Nun haben VHDs einen großen Nachteil. Standardmäßig verschwinden sie nach einem Reboot aus dem Arbeitsplatz. Man müsste sie erst wieder über die Datenträgerverwaltung einhängen – doch es geht auch einfacher.

Folgende Fragen wird dieser Beitrag beantworten: Wie erstelle ich eine VHD? Wie verschlüssle ich eine VHD mit BitLocker? Wie binde ich eine VHD automatisch ein?

Fangen wir mal mit dem absoluten Urschleim an. Wer bereits weiß wie man eine VHD erstellt, der kann weiter nach unten springen.

Bei der Erstellung von VHDs führen viele Wege nach Rom, ich stelle mal wirklich die einfachste vor. Macht einen Rechtsklick auf euren Arbeitsplatz und wählt „Verwalten“. Besucht den Punkt „Datenträgerverwaltung“ und wählt unter „Aktion“, dass ihr eine neue VHD anlegen wollt.

vhd_part1

Diesen Datenträger müsst ihr nun initialisieren und formatieren. Lässt sich beides per Rechtsklick auf die VHD in der Datenträgerverwaltung bewerkstelligen.

2009-10-23_164727

Das war also Part 1 des Beitrags. Ihr wisst nun, wie man eine VHD erstellt. Nach der Formatierung taucht (sofern ihr einen Laufwerksbuchstaben vergeben habt) die VHD im Arbeitsplatz auf. Von hier aus könnt ihr sie per Kontextmenü mit BitLocker verschlüsseln. Wie das geht hatte ich ja bereits hier beschrieben. Wer nur einen PC hat und nicht zwingend TrueCrpyt nutzt kann ruhig BitLocker nutzen. Finde ich legitim.

Nun aber zum eigentlichen Problem: VHDs sind nach jedem Reboot getrennt, Einstellungsmöglichkeiten gibt es da (soweit ich weiss) keine. Bene und ich haben Ewigkeiten über diese Problematik gelabert und herausgekommen ist ein Tool, mit dem ihr VHDs per Kontextmenü mounten könnt (unabhängig von VHD Attach). Das funktioniert auch bisher soweit, als das man VHDs via Kontextmenü mounten kann. Nur leider wird bisher der vorgegebene Zielbuchstabe nicht auf allen Systemen übernommen.Dauert also noch ein bisschen bis zum Release.

Wem es reicht, dass eine VHD den nächsten freien Buchstaben bekommt, der muss einfach zum automatischen Einbinden eine Batch erstellen.

2009-10-24_072913

Besser gesagt sind es zwei Dateien. Die erste ruft diskpart mit der jeweiligen Parameter-Datei auf. Sehr verworren, aber bedankt euch bei Microsoft. Die erste Datei ist dann zum Beispiel eine mount_vhd.cmd mit folgendem Inhalt:

diskpart -s mountvhd.txt

Die  mountvhd.txt muss dann folgenden Inhalt haben:

select vdisk file=“C:\Users\caschy\Desktop\Test.vhd“
attach vdisk

Wichtig ist hier der volle qualifizierte Pfad zur VHD. Den kann man ganz einfach in die Zwischenablage kopieren indem man per gedrückter Shift-Taste einen Rechtsklick auf die VHD macht und „Als Pfad kopieren“ wählt. Das Aushängen der VHD erfolgt auch nach diesem Schema. Ausser, dass in der Datei statt attach vdisk detach vdisk stehen muss.

Natürlich ist die erste Einrichtung ein wenig umständlich. Wenn man aber alles geschnallt hat, dann sollte das in wenigen Augenblicken von der Hand gehen. Per Batch-Datei hat man zudem noch einen schönen Automatismus drin, der das Mounten von VHDs vereinfacht.

Mein Fazit: VHDs und das Erstellen von solchen ist schon aus Backupzwecken sinnvoll. Schließlich kann man so auf Software wie Acronis TrueImage verzichten (siehe Kostenloses und vollautomatisches Backup für Windows 7). Des Weiteren kann man VHDs wunderbar in reinen Windows-Umgebungen nutzen um Daten zu verschlüsseln (per BitLocker, sofern man Windows 7 Enterprise oder Ultimate sein Eigen nennt). Übrigens, wer per BitLocker verschlüsselte Laufwerke (verschlüsselte USB-Sticks) auch unter XP / Vista nutzen will, der sollte das erforderliche BitLocker to Go Lesetool von Microsoft auf den betreffenden Maschinen installieren.

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

caschy

Hallo, ich bin Carsten! Baujahr 1977, Dortmunder im Norden, BVB-Getaufter und Gründer dieses Blogs. Auch zu finden bei Twitter, Google+, Facebook, Instagram und YouTube. PayPal-Kaffeespende. Mail: carsten@caschys.blog

Das könnte dir auch gefallen…

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

27 Kommentare

  1. Kleinenbroicher says:

    Moin,

    hat das Vorteile gegenüber dem Einsatz von TrueCrypt, wenn ich die Laufwerke eh verschlüsseln will?

    VG,
    Kleinenbroicher

  2. Geht ja nicht nur um Verschlüsselung hier, sondern generell. In deinem Falle: nein 🙂

  3. ich weiß nicht warum, aber bei mir funzt das net. hab alles so gemacht wie beschrieben und auch jeden Tippfeheler ausgeschlossen.
    diskpart ruft er auf, dann kommt ganz kurz ein weiteres Konsollenfenster und das wars. Wenn ich das „manuell“ macht gehts.
    Hab ich was übersehen ????
    Gruße Roland

  4. WAS funktioniert nicht? 🙂

  5. Die vhd wird nicht eingebunden!
    Hab mir aber gerade mal das Tool: Vhd Attach installiert.
    Damit läufts einwandfrei

  6. Man kann statt einem Laufwerksbuchstaben auch einen Bereitstellungspunkt (mount point) verwenden. Vorteil: die virtuelle Festplatte ist nach jedem Verbinden (attach) unter dem gleichen Pfad ansprechbar.

    Dazu einmal manuell in der Datenträgerverwaltung (diskmgmt.msc) Rechtsklick auf die eingebundene virtuelle Festplatte und „Laufwerksbuchstaben und -pfade ändern…“ wählen. Nun auf „Hinzufügen“ und „In folgendem leeren NTFS-Ordner bereitstellen:“ klicken. „Durchsuchen“ ermöglicht nicht nur die Auswahl sondern auch das Erstellen eines Ordners.

    Der Laufwerksbuchstabe kann auf dem gleichen Weg entfernt werden.

    Beim nächsten Einhängen, also wenn ihr Caschys Skript wieder ausführt, werden die gleichen Verhältnisse wieder hergestellt. Jedenfalls solange, wie nicht

    DISKPART AUTOMOUNT SCRUB

    aufgerufen wird.

    Für die Kommandozeilenfetischisten: Das kann man auch alles mit dem Kommando DISKPART erledigen, siehe ASSIGN und REMOVE.

  7. sehr interessant finde ich persönlich ja vor allem auch noch für die Phase des Umstiegs die Möglichkeit, ein Image von XP zu erstellen, dass man dann immer mal bei Bedarf in Win7 einbinden kann, um doch noch einmal alte Relikte rauszuziehen. Dazu eignet sich Disk2VHD von Sysinternals (nicht auf der WSCC enthalten) http://technet.microsoft.com/en-nz/sysinternals/ee656415%28en-us%29.aspx
    Quelle: „Blog-Nachbar“ Björn: http://blog.buerstinghaus.net/virtuelle-festplatten-erstellen-mit-disk2vhd/

  8. Jojo – kleines Beispiel zu diesem Tool: ich habe zwei 500er Platten, C und D. C ist mit 30 GB belegt und auf D sind 200 GB frei. Nun sollte man der Meinung sein, dass das Tool die VHD auf D ablegen kann, oder? Nö, macht es aber nicht: There is not enough space on the target volume.

  9. Ich muss bei meinem Home Premium 64bit erst die Computerverwaltung beenden und neu starten, nach dem ich die VHD erstellt habe, sonst kann ich mit der VHD nichts machen.
    Danach geht dann auch das Formatieren, vergeben eines Laufwerkbuchstaben.

    Wie nutzt man das dann fürs Windows Backup?
    Ich hätte dann ja eine VHD in einer VHD, wie komme ich an die ran, wenn Windows zum Beispiel nicht mehr läuft?

  10. Steht doch alles in verlinkten Beitrag, oder?

  11. Danke für die wertvolle Info. Kannste ich so noch nicht.

    Gruß

  12. Wenn ich mich nicht ganz irre dann lassen sich VHDs in der Ultimate oder Enterprise Version auch direkt schon in das Bootmenü von Windows 7 integrieren, somit kann man dann auch von einem VHD booten. Das sollte man vielleicht in dem kleinen VHD Kurs erwähnen.
    Danke für die Mühe die du dir gemacht hast.

  13. > Steht doch alles in verlinkten Beitrag, oder?

    In welchem?

  14. Danke Caschy!
    Das werde ich mir auch genauer ansehen.

  15. @Toddi: Wieso willst Du von einer VHD (her)aus eine VHD erstellen? Kopier doch einfach die VHD (das ist ungemountet/nicht eingebunden – aus der Sicht des Host-OS – schließlich eine gewöhnliche Datei) wenn Du diese sichern willst.

  16. Weil man beim Windows Backup keine Pfade und Namen angeben kann.
    Eine VHD wäre eine Möglichkeit das zu umgehen. Da kann ich einen Namen vergeben und einen gewünschten Speicherort.
    Haken an der Sache: Es befindet sich dann eine VHD in einer VHD.

  17. @cekay

    Kannst du vielleicht kurz erkären wo/wie das mit dem Bootmenü geht? Dank dir.

  18. Moinsen!

    Ob man XP oder Linuxe in eine VHD installieren kann und über den BootMananger von Windows7 booten kann? Schon probiert bzw. gehört, ob es geht? Installieren geht bestimmt, aber Booten?

  19. angenommen ich donk hab das passwort vergessen, (verdammt)
    was mach ich n nu?mein usb is so sicher das nichma ich drankomme!
    meine ganzen daten sind jetzt da drauf und ich komm nich mehr dran 🙁
    schlau wie ich bin hab ichs auch nich aufgeschrieben oder anderweitig abgesavet.
    HILFEEEEEEEEEE!!!!! meine ganzen zugangsdaten und passwörter sind da drauf .

  20. Hallo, folgendes Szenario. Ich habe eine komplette Partition verschlüsselt, nicht die Bootpartition.
    So wenn ich meinen PC hochfahre ist diese Partition verschlüsselt bis ich diese entsperre (weil ich zb. von dieser Partition ein Dokument brauche). Kann man diese Partition nun wieder sperren ohne den PC neu zu starten ???

    Grüße R2D2

  21. @R2D2: Kommandozeile -> manage-bde -lock Laufwerksbuchstabe:

  22. @Bene

    You are my Hero !!

    Ich kann dir garnicht sagen wie lange ich danach gesucht habe.

    DANKE, DANKE, DANKE

  23. kingofcomedy says:

    @caschy: ich habe wohl mitbekommen dass es Bene gesundheitlich nicht gut geht (alles Gute an dieser Stelle), aber habt ihr vielleicht trotzdem weiter an Eurem Tool gebastelt?

  24. leosmutter says:

    Wenns jemand braucht… Ich habe mir gerade etwas mit AutoIt gebastelt um meine Bitlocker-VHD zu mounten:

    AutoIt-Mounter

    Einfaches Ding aber es erfüllt seinen Zweck.

  25. Hier ein Beispiel für eine BCD-Datei.
    Ich habe einfach mal die Kommandozeilenausgabe von bcdedit in eine Datei umgeleitet. Im Boot-Menü stehen mir jetzt 3 Optionen zur Auswahl. Ich benötige zum Beispiel verschiedene Installationen für verschiedene Aufgaben. Die erste (default)-Option ist eine Win7-Instanz, die sich komplett in einer VHD-Datei befindet. Will ich verhindern, daß die Installation verändert werden kann, brauche ich nur die VHD-Datei mit einer Kopie derselben auszutauschen. Bit-Locker könnte beim Booten Probleme bereiten.
    Man sollte zudem auch noch beachten, daß man die Partition, auf der sich die VHD-Datei befindet und zusätzlich die gemountete VHD-Datei ordentlich defragmentiert. Das bringt zusätzliche Performance. Einen Performanceverlust durch die Verwendung einer VHD-Installation kann ich nicht feststellen.
    Meine beiden anderen Optionen befinden sich auf normalen Partitionen. So genug gelabert! Hier die BCD-Datei:

    ##ANFANG##

    Windows-Start-Manager
    ———————
    Bezeichner {bootmgr}
    device boot
    description Windows Boot Manager
    locale de-DE
    inherit {globalsettings}
    default {default}
    resumeobject {88b48709-d025-11df-bae6-00248c48a9b2}
    displayorder {default}
    {current}
    {0223d820-d00d-11df-b2e6-00248c48a9b2}
    toolsdisplayorder {memdiag}
    timeout 30

    Windows-Startladeprogramm
    ————————-
    Bezeichner {default}
    device vhd=[C:]VHDSEVENwin7.vhd
    path Windowssystem32winload.exe
    description Seven-VHD
    locale de-DE
    inherit {bootloadersettings}
    recoverysequence {88b4870b-d025-11df-bae6-00248c48a9b2}
    recoveryenabled Yes
    osdevice vhd=[C:]VHDSEVENwin7.vhd
    systemroot Windows
    resumeobject {88b48709-d025-11df-bae6-00248c48a9b2}
    nx OptIn

    Windows-Startladeprogramm
    ————————-
    Bezeichner {current}
    device partition=C:
    path Windowssystem32winload.exe
    description Microsoft Windows 7
    locale de-DE
    osdevice partition=C:
    systemroot Windows
    resumeobject {4f284cd6-d020-11df-8c38-806e6f6e6963}
    sos No
    debug No

    Windows-Startladeprogramm
    ————————-
    Bezeichner {0223d820-d00d-11df-b2e6-00248c48a9b2}
    device partition=F:
    path Windowssystem32winload.exe
    description se7en
    locale de-DE
    osdevice partition=F:
    systemroot Windows
    resumeobject {c1fc5a1a-d43b-11df-9ff9-806e6f6e6963}
    sos No
    debug No

    ##ENDE##

    Coole Seite hier übrigens!

    Gruß nine

  26. Das war natürlich blöd jetzt. Ich hatte einen Rechtschreibfehler gefunden und den Text bearbeitet. Jetzt viel mir auf, daß alle Backslashes aus dem Text entfernt wurden. Vielleicht kann das ja mal jemand fixen und meinen vorigen Beitrag einfach löschen. Wenns geht danach dann auch diesen Abschnitt hier. Ich schreib den Text jetzt einfach nochmal. Hoffe es geht jetzt.

    Hier ein Beispiel für eine BCD-Datei.
    Ich habe einfach mal die Kommandozeilenausgabe von bcdedit in eine Datei umgeleitet. Im Boot-Menü stehen mir jetzt 3 Optionen zur Auswahl. Ich benötige zum Beispiel verschiedene Installationen für verschiedene Aufgaben. Die erste (default)-Option ist eine Win7-Instanz, die sich komplett in einer VHD-Datei befindet. Will ich verhindern, daß die Installation verändert werden kann, brauche ich nur die VHD-Datei mit einer Kopie derselben auszutauschen. Bit-Locker könnte beim Booten Probleme bereiten.
    Man sollte zudem auch noch beachten, daß man die Partition, auf der sich die VHD-Datei befindet und zusätzlich die gemountete VHD-Datei ordentlich defragmentiert. Das bringt zusätzliche Performance. Einen Performanceverlust durch die Verwendung einer VHD-Installation kann ich nicht feststellen.
    Meine beiden anderen Optionen befinden sich auf normalen Partitionen. So genug gelabert! Hier die BCD-Datei:

    ##ANFANG##

    Windows-Start-Manager
    ———————
    Bezeichner {bootmgr}
    device boot
    description Windows Boot Manager
    locale de-DE
    inherit {globalsettings}
    default {default}
    resumeobject {88b48709-d025-11df-bae6-00248c48a9b2}
    displayorder {default}
    {current}
    {0223d820-d00d-11df-b2e6-00248c48a9b2}
    toolsdisplayorder {memdiag}
    timeout 30

    Windows-Startladeprogramm
    ————————-
    Bezeichner {default}
    device vhd=[C:]\VHD\SEVEN\win7.vhd
    path \Windows\system32\winload.exe
    description Seven-VHD
    locale de-DE
    inherit {bootloadersettings}
    recoverysequence {88b4870b-d025-11df-bae6-00248c48a9b2}
    recoveryenabled Yes
    osdevice vhd=[C:]\VHD\SEVEN\win7.vhd
    systemroot \Windows
    resumeobject {88b48709-d025-11df-bae6-00248c48a9b2}
    nx OptIn

    Windows-Startladeprogramm
    ————————-
    Bezeichner {current}
    device partition=C:
    path \Windows\system32\winload.exe
    description Microsoft Windows 7
    locale de-DE
    osdevice partition=C:
    systemroot \Windows
    resumeobject {4f284cd6-d020-11df-8c38-806e6f6e6963}
    sos No
    debug No

    Windows-Startladeprogramm
    ————————-
    Bezeichner {0223d820-d00d-11df-b2e6-00248c48a9b2}
    device partition=F:
    path \Windows\system32\winload.exe
    description se7en
    locale de-DE
    osdevice partition=F:
    systemroot \Windows
    resumeobject {c1fc5a1a-d43b-11df-9ff9-806e6f6e6963}
    sos No
    debug No

    ##ENDE##

    Coole Seite hier übrigens!

    Gruß nine

  27. Das Anbinden/Trennen der VHD geht auch einfacher, mit einer batch:

    mount.cmd

    select vdisk file=C:\disk.vhd
    attach vdisk
    diskpart /s C:\mount.cmd

    unmount.cmd

    select vdisk file=C:\disk.vhd
    detach vdisk
    diskpart /s C:\unmount.cmd

    Gruß
    Siggi

Du willst nichts verpassen?
Neben der E-Mail-Benachrichtigung habt ihr auch die Möglichkeit, den Feed dieses Beitrags zu abonnieren. Wer natürlich alles lesen möchte, der sollte den Hauptfeed abonnieren. Alternativ könnt ihr euch via E-Mail über alle neuen Beiträge hier im Blog informieren lassen. Einfach eure E-Mail-Adresse hier eingeben, dann bekommt ihr 1x täglich morgens eine Zusammenstellung. Mit dem Absenden willigst du unserer Datenschutzerklärung und der Speicherung von dir angegebener, personenbezogener Daten zu.
Wir benutzen Cookies um die Nutzerfreundlichkeit der Webseite zu verbessern. Durch Deinen Besuch stimmst Du dem zu.