So öffnen Sie VMDK-Dateien in VMware und extrahieren Daten
Das Verständnis, wie man VMDK-Dateien öffnet und Inhalte aus VMDK-Dateien extrahiert, ist nützlich, wenn Sie ein Problem mit einer virtuellen Maschine haben. Es kann vorkommen, dass VMs nach Problemen mit der Installation von Anwendungen, Betriebssystem-Updates, Malware-Angriffen, versehentlichem Löschen von Daten usw. nicht mehr gestartet werden können. In diesem Fall verlieren Sie den Zugriff auf die virtuelle Festplatte der VM.Glücklicherweise können Sie VMDK-Dateien mit WinZip, Linux Reader oder VMware Workstation Player öffnen. Lesen Sie weiter, um mehr über die Methoden zum Wiederherstellen des Inhalts von virtuellen VMDK-Festplattendateien zu erfahren. Beachten Sie, dass diese Methoden nur anwendbar sind, wenn die virtuelle Festplatte nicht verschlüsselt oder beschädigt ist.
Was ist eine VMDK-Datei?
VMDK ist ein Dateiformat für Festplatten virtueller Maschinen, das von VMware entwickelt wurde. Dieses Format für virtuelle Festplatten hat die Endung .vmdk Erweiterung für Dateien und wird verwendet von VMware und VirtualBox Virtuelle Maschinen. Virtuelle Maschinen, die sich auf ESXi-Servern befinden, verwenden jedoch ein etwas anderes Format von vmdk Virtuelle Festplatten. Auf dem ESXi-Datenspeicher sind der Deskriptor der virtuellen Festplatte und der Bereich der virtuellen Festplatte, der die Rohdaten der virtuellen Festplatte enthält, zwei separate Dateien.Das Muster für den Namen des Deskriptors der virtuellen Festplatte lautet Festplattenname.vmdk und das Muster des Namens des virtuellen Festplattenbereichs, der alle Rohdaten enthält, lautet Festplattenname-flat.vmdk. Virtuelle Festplatten im VMware Workstation-Format werden als einzelne Festplattenname.vmdk Datei (monolithisch, spärlich), bei der es sich um eine Extent-Datendatei handelt, die einen eingebetteten virtuellen Festplattenbeschreiber enthält. Ein virtueller Festplattenbeschreiber definiert die Struktur der virtuellen Festplatte, die Geometrie der virtuellen Festplatte, die Version der virtuellen Hardware und die IDs.
Virtuelle Festplattenbeschreibungsdatei
Ein virtueller Festplatten-Deskriptor wird als Klartext dargestellt. Auf der linken Seite des folgenden Screenshots sehen Sie einen virtuellen Festplatten-Deskriptor im ESXi-Format (ein vmdk Datei, die mit jedem Texteditor geöffnet werden kann). Auf der rechten Seite des Screenshots sehen Sie die Daten des virtuellen Festplatten-Deskriptors, der in eine einzelne vmdk Datei im VMware Workstation-Format. Die vmdk Die Dateien können in einem HEX-Editor geöffnet werden.
Wie Sie sehen können, werden die Daten des Festplatten-Deskriptors in den monolithischen Bereich geschrieben. vmdk Datei im Arbeitsstation-Format ab der Adresse 0x200, die die Nummer des ersten Bytes ist. Wenn Sie den Hexadezimalwert 200 in ein Binär- und Dezimalformat umwandeln, erhalten Sie:200 HEX = 1000000000 Binär = 512 DezimalDas bedeutet, wenn Sie den eingebetteten Deskriptor aus der vmdk Datei sollten Sie einen Teil der Daten ab dem 512. Byte extrahieren. Weitere Informationen zu VMware-Descriptor-Dateien für virtuelle Festplatten sowie Anleitungen zum Extrahieren, Bearbeiten und Importieren eines eingebetteten Descriptors für virtuelle Festplatten finden Sie im Blogbeitrag zum Thema Konvertierung. VMware-VMs zu Hyper-V-VMs.
Virtuelle Festplattendatei
Im folgenden Screenshot sind zwei virtuelle Festplattendateien in einem HEX-Editor geöffnet. Auf beiden virtuellen Festplatten ist dasselbe Betriebssystem installiert (die erste Partition, die für die Installation des Betriebssystems verwendet wurde, wurde mit einem integrierten Windows-Festplattenprogramm erstellt und formatiert). Auf der linken Seite des Screenshots ist ein –flach.vmdk Datei wird angezeigt (ESXi-Format). Die Rohdaten werden ab 0x00000000 auf diese virtuelle Festplatte geschrieben –flach.vmdk Datei. Auf der rechten Seite des Screenshots wird die virtuelle Festplatte im Format der Arbeitsstation angezeigt, und die gleichen Daten werden ab 0x00150000 (Byte-Nummer 5376) geschrieben, was nicht der Anfang der vmdk datei.
Nachdem Sie sich nun mit der Theorie vertraut gemacht haben, ist es Zeit für den praktischen Teil. Bevor Sie fortfahren, sollten Sie Ihre Daten sichern, um mögliche Schäden an der virtuellen Festplatte zu vermeiden. Führen Sie Vorgänge mit Ihren Festplatten auf eigene Verantwortung und eigenes Risiko durch.
2 Methoden zum Öffnen von VMDK-Dateien von einer VM aus
Um VMDK-Dateien von vorhandenen VMs zu öffnen, benötigen Sie einen Hypervisor wie VMware ESXi, VMware Workstation, VMware Player oder Oracle VirtualBox auf Ihrem physischen Computer installiert werden. Sie können sich für die herkömmliche Methode entscheiden, indem Sie eine Live-DVD verwenden oder die VMDK-Datei als virtuelle Festplatte einbinden.
Methode 1: Verwendung einer Live-DVD, auch wenn das Betriebssystem auf der VM nicht mehr funktioniert
Die Idee hinter dieser Methode ist, dass Sie über eine Virtuelle Maschine verfügen und von einer DVD booten können. Das ISO-Disk-Image kann als DVD verwendet werden, die in das virtuelle DVD-Laufwerk der Virtuellen Maschine eingelegt wird. Nach dem Booten des Betriebssystems von einem DVD-Medium können Sie die Partitionen Ihrer virtuellen Festplatte mounten und Dateien von der virtuellen Festplatte auf eine an die Virtuelle Maschine oder Ihren Host-Rechner angeschlossene USB-Festplatte oder über das Netzwerk auf einen anderen Rechner kopieren. Einige Live-DVD-Distributionen mounten Festplatten (Partitionen) automatisch.Dies ist eine veraltete Methode, da das Prinzip dem Kopieren von Dateien von physischen Festplatten physischer Computer ähnelt, wenn das installierte Betriebssystem nicht starten kann. Diese Methode kann verwendet werden, um Daten aus VMDK-Festplatten von VMs zu extrahieren, die auf VMware ESXi und VMware Player/Workstation laufen.Beachten Sie, dass das von der Live-DVD gebootete Betriebssystem die Dateisysteme der Partitionen Ihrer virtuellen Festplatte erkennen muss, auf deren Dateien Sie zugreifen möchten. Beispielsweise kann Windows standardmäßig nicht mit Linux-Dateisystemen wie EXT3, EXT4, ReiserFS usw. arbeiten. Die Verwendung zusätzlicher Tools unter Windows kann zur Lösung dieses Problems beitragen. Umgekehrt erkennt modernes Linux Windows-Dateisysteme wie NTFS und FAT32, weshalb Sie Linux-basierte Live-DVDs verwenden können, um Dateien zu kopieren, die auf virtuellen Festplatten gespeichert sind, die von Ihrer Windows-VM verwendet werden, die nicht booten kann.
Beispiel: Öffnen von VMDK-Dateien auf ESXi
Betrachten wir ein Beispiel für die Anwendung dieser Methode: Sie haben eine VM mit Windows Server 2016 auf einem ESXi-HostDas Betriebssystem auf der VM kann nicht gestartet werden, aber Sie müssen die auf der virtuellen Festplatte VMDK gespeicherten Dateien abrufen. Auf der virtuellen Festplatte befinden sich zwei NTFS-Partitionen: die Boot-Systempartition und Laufwerk C. In diesem Beispiel wird das offizielle Ubuntu 18-Installations-ISO-Image verwendet. Das Ubuntu-Installationsmedium kann als Live-DVD verwendet werden.HINWEIS: Der Arbeitsablauf für neuere Versionen der in diesem Blogbeitrag behandelten Produkte ist derselbe. Sie können VMware Workstation 17, ESXi 8.0, Windows Server 2019, Ubuntu Linux 22.04 usw. verwenden und das in diesem Artikel erläuterte Funktionsprinzip anwenden.
- Laden Sie das ISO-Image in den Datenspeicher hoch, auf den der ESXi-Host, auf dem sich die VM befindet, zugreifen kann.
- Öffnen Sie den VMware vSphere Client und gehen Sie zu Hosts und ClusterWählen Sie Ihre VM aus und klicken Sie auf Einstellungen bearbeiten.

- Gehen Sie im Fenster „VM-Einstellungen“ zu CD-/DVD-Laufwerk Optionen. Wählen Sie die Datenspeicher-ISO-Datei Option, wenn Sie die erforderliche ISO-Datei im Datenspeicher haben, auf den der ESXi-Host zugreifen kann. Klicken Sie dann für die Option „CD/DVD-Medien“ auf Durchsuchen und wählen Sie die entsprechende ISO-Datei im Datenspeicher aus. Der Name der Datei lautet ubuntu-18.04.1-desktop-amd64.iso in diesem Fall.

- Starten Sie die VM, booten Sie vom ISO-Image und wählen Sie „Ubuntu ohne Installation ausprobieren“. Sobald Ubuntu vom Live-DVD-Medium gebootet wurde, öffnen Sie die Konsole (Terminal).
- Erlangen Sie Root-Rechte:
sudo -i - Verfügbare Festplatten-Geräte auflisten:
ls -al /dev/sd*Es gibt zwei Partitionen – /dev/sda1 und /dev/sda2
- Erstellen Sie Verzeichnisse, die als Einhängepunkte für jede Partition verwendet werden sollen:
mkdir /mnt/win-disk1mkdir /mnt/win-disk2 - Hängen Sie die Partitionen der virtuellen Festplatte in die entsprechenden Verzeichnisse ein:
mount /dev/sda1 /mnt/win-disk1/mount /dev/sda2 /mnt/win-disk2/ - Dann listen Sie die Dateien und Verzeichnisse der gemounteten Partitionen auf:
ls -al /mnt/win-disk2/ls -al /mnt/win-disk1/
Wie Sie im obigen Screenshot sehen können, ist die Partition, die unter /mnt/win-disk2 ist die Partition, die unter Windows als Festplatte C: verwendet wird.
- Jetzt können Sie eine USB-Festplatte (HDD) an den USB-Anschluss Ihres ESXi-Hosts anschließen und diese Festplatte mit der USB-Pass-Through-Funktion mit der virtuellen Maschine verbinden. Auf diese Weise können Sie die erforderlichen Dateien kopieren, die in der VMDK-Datei gespeichert sind, die von der virtuellen Maschine als virtuelle Festplatte verwendet wird. Eine andere Möglichkeit besteht darin, eine SMB-Freigabe (CIFS) zu verwenden und den Inhalt der virtuellen Festplatte (d. h. die VMDK-Datei) über das Netzwerk an einen anderen Standort zu kopieren.
In diesem Beispiel erklären wir das Kopieren von Daten auf eine SMB-Freigabe. Die SMB-Freigabe wurde auf dem Host erstellt, dessen IP-Adresse lautet 192.168.17.125Der Name der Aktie lautet \192.168.17.125Teilenund Benutzer10 hat Schreibrechte für diese Freigabe. Vergessen Sie nicht, dass Linux im Gegensatz zu Windows beim Verbinden mit der Freigabe den rechten Schrägstrich verwendet.
Lassen Sie uns die SMB (CIFS)-Freigabe unter Linux mounten, das von der Live-DVD geladen wurde. Erstellen Sie zunächst ein Verzeichnis, das als Mountpunkt verwendet werden soll.
mkdir /mnt/smb-share - Dann mounten Sie die SMB (CIFS)-Freigabe in dieses Verzeichnis:
mount -t cifs -o user=user10 //192.168.17.125/share /mnt/smb-share - Geben Sie das Passwort des Benutzers ein.
- Jetzt ist Ihr Linux-System mit der SMB-Freigabe verbunden, und Sie können die in der VMDK-Datei gespeicherten Inhalte über das Netzwerk auf die SMB-Freigabe kopieren.
Gehen wir zu dem Verzeichnis, in dem die SMB-Freigabe eingebunden ist, und kopieren wir die bootmgr Datei aus der gemounteten Partition der virtuellen Festplatte (die VMDK-Datei im ESXi-Datenspeicher) in das aktuelle Verzeichnis (SMB-Freigabe).
cd /mnt/smb-sharecp /mnt/win-disk-2/bootmgr
- Stellen Sie dann sicher, dass die erforderlichen Dateien kopiert wurden, und überprüfen Sie den Inhalt Ihrer SMB-Freigabe.
ls -al /mnt/smb-shareWie Sie im obigen Screenshot sehen können, ist die bootmgr Die in diesem Beispiel verwendete Datei wurde erfolgreich kopiert. Jetzt kennen Sie die erste Methode zum Kopieren des Inhalts der VMDK-Datei an einen anderen Standort, wenn ein auf einer VM installiertes Betriebssystem nicht booten kann. Die Logik der Verwendung dieser Methode auf VMware Player oder VMware Workstation ist dieselbe.
Methode 2: Mounten Sie eine VMDK-Datei als virtuelle Festplatte auf einer funktionsfähigen VM (ESXi/Arbeitsstation/Player).
Diese Methode ähnelt der vorherigen, jedoch sollte in diesem Fall die virtuelle VMDK-Festplatte an eine vorhandene Virtuelle Maschine mit einem funktionierenden Betriebssystem angehängt werden. Sie können eine VMDK-Datei als zusätzliche virtuelle Festplatte an eine vorhandene VM anhängen, die auf einem VMware ESXi-Host, VMware Workstation und VMware Player ausgeführt wird.Wenn Sie eine VMDK-Datei der ESXi-VM in VMware Workstation oder Player öffnen möchten, sollten Sie sowohl die virtuelle Festplatte als auch ihren Deskriptor kopieren (vmdk und –flat.vmdk Dateien) auf eine physische Festplatte, auf die Ihr Computer zugreifen kann, auf dem VMware Workstation oder Player installiert ist. Wenn Schnappschüsse für die VM erstellt wurden und anschließend Änderungen an VM-Festplatten vorgenommen wurden, vergessen Sie nicht, zusätzlich zu den übergeordneten VMDK-Dateien auch die VMDK-Dateien der Delta-Festplatten (Differenzfestplatten) zu kopieren.Betrachten wir zwei Beispiele:Beispiel 1: Wie öffnet man eine virtuelle VMDK-Festplatte einer VM von einer anderen VM auf einem ESXi-Host (beide sind auf einem ESXi-Host registriert)?Beispiel 2: So extrahieren Sie Inhalte aus einer virtuellen VMDK-Festplatte einer ESXi-VM, indem Sie die virtuelle Festplatte an eine VM im VMware Workstation-Format anschließen:Beachten Sie, dass das funktionierende Betriebssystem auf der ersten (intakten) VM mit den Dateisystemen kompatibel sein muss, die auf der virtuellen Festplatte der zweiten VM verwendet werden, die über ein nicht bootfähiges Betriebssystem verfügt (eine VM, deren VMDK-Datei Sie als zusätzliche virtuelle Festplatte anschließen möchten, um Dateien zu extrahieren).
Beispiel 1: Einbinden einer virtuellen Festplatte in eine auf ESXi ausgeführte VM
- Schalten Sie die VM aus, die eine virtuelle Festplatte verwendet, von der Sie Dateien extrahieren möchten.
- Suchen Sie diese virtuelle Festplatte im ESXi-Datenspeicher.
- Kopieren Sie die virtuelle Festplatte in ein anderes Verzeichnis auf demselben Datenspeicher oder einem anderen Datenspeicher, um einen Fehler aufgrund der Sperrung der virtuellen Festplatte zu vermeiden. In unserem Beispiel zeigen wir Ihnen, wie Sie eine VMDK-Datei mit dem Namen Win-Test2.vmdk (Dies ist eine virtuelle Festplatte des Win-Test2 Windows-Virtuelle Maschine in unserem Fall). Der ESXi-Host wird von vCenter verwaltet. Wenn Sie einen eigenständigen ESXi-Host ohne vCenter verwenden, können Sie die in diesem Beispiel erläuterte Logik anwenden – die Unterschiede bestehen lediglich in der Benutzeroberfläche.
- Öffnen Sie den VMware vSphere Client und gehen Sie zu Speicher, und wählen Sie den Datenspeicher aus, auf dem sich die erforderliche VMDK-Datei befindet. Wählen Sie die VMDK-Datei aus und klicken Sie auf Kopieren nach.
HINWEIS: Wenn Sie über einen eigenständigen ESXi-Host verfügen und kein vCenter haben, öffnen Sie VMware Host Client, indem Sie die IP-Adresse Ihres ESXi-Hosts von einem Webbrowser aus eingeben, und gehen Sie dann zu Speicherorte > [Your datastore name] > Datenspeicher-BrowserWählen Sie Ihre VMDK-Datei aus und klicken Sie auf KopieWählen Sie das Ziel aus und klicken Sie auf die Schaltfläche Kopie Schaltfläche zum Bestätigen. Beachten Sie, dass virtuelle Festplatten in der Weboberfläche von VMware vSphere Client und VMware Host Client als VMDK-Dateien angezeigt werden, eine virtuelle Festplatte jedoch aus den folgenden Komponenten besteht:flat.vmdk und vmdk Dateien (eine virtuelle Festplatte und deren Deskriptor). Sie können die ESXi-Konsole auch direkt auf dem Server öffnen oder sich von SSH aus mit ihr verbinden, um die Dateien zu kopieren.

- Wählen Sie im geöffneten Fenster das Ziel aus. Sie können die VMDK-Datei an einen beliebigen Standort auf demselben Datenspeicher oder auf einen anderen Datenspeicher kopieren. Kopieren wir die VMDK-Datei für diese Demonstration in das Stammverzeichnis desselben Datenspeichers. Beide vmdk und –flat.vmdk In diesem Fall werden Dateien kopiert.

- Jetzt müssen Sie die virtuelle Festplatte VMDK an eine andere funktionierende VM anschließen, deren Betriebssystem ordnungsgemäß arbeitet. In diesem Beispiel wird eine VM verwendet, auf der Windows Server 2016 auf demselben ESXi-Host ausgeführt wird (der VM-Name lautet WinServer2016). Eine virtuelle Festplatte kann an diese fehlerfreie VM angehängt werden, während die VM ausgeführt wird. Gehen Sie in vSphere Client zu Hosts und ClusterWählen Sie die gesunde VM aus, klicken Sie mit der rechten Maustaste auf die VM und klicken Sie auf Einstellungen bearbeiten.

- Klicken Sie im angezeigten Fenster auf Neues Gerät hinzufügen und wählen Sie Vorhandene Festplatte.

- Wählen Sie die zuvor erstellte Kopie Ihrer VMDK-Datei aus. Im aktuellen Beispiel ist die Kopie von Win-Test2.vmdk im Stammverzeichnis des Datenspeichers ausgewählt wurde.

- Schalten Sie die gesunde VM ein, an die Sie die gewünschte virtuelle Festplatte angehängt haben, falls die VM noch nicht eingeschaltet ist. Eine virtuelle Festplatte wird für eine laufende Windows Server 2016-VM spontan hinzugefügt.
- Gehen Sie im Gast-Windows-Betriebssystem zu Computerverwaltung > Festplatten-Management (oder ausführen diskmgmt.msc in der Befehlszeile) und suchen Sie Ihre virtuelle Festplatte. Standardmäßig ist die neu angeschlossene Festplatte offline. Klicken Sie mit der rechten Maustaste auf die Festplatte und drücken Sie Online. Den Partitionen auf der hinzugefügten Festplatte sollte automatisch ein Laufwerksbuchstabe zugewiesen werden. Wenn einer Partition kein Laufwerksbuchstabe zugewiesen wurde, klicken Sie mit der rechten Maustaste auf die Partition und klicken Sie auf Laufwerksbuchstaben und Pfade ändern.

- Jetzt haben Sie vollen (Lese-/Schreib-)Zugriff auf Dateien und Verzeichnisse der virtuellen VMDK-Festplatte. Öffnen Sie einfach die gemountete Festplatte im Windows Explorer und kopieren Sie den erforderlichen Inhalt der VMDK-Datei auf die fehlerfreie VM. Sie können auch unnötige Daten von der angehängten virtuellen VMDK-Festplatte löschen (z. B. wenn Dateien vorhanden sind, die von Viren erstellt wurden), aber seien Sie vorsichtig und beschädigen Sie keine virtuelle Festplatte, wenn für die gemountete VMDK-Festplatte zugehörige Schnappschüsse vorhanden sind.

Beispiel 2: Einbinden einer virtuellen Festplatte in eine VM, die auf VMware Player oder Arbeitsstation ausgeführt wird
Dieses Beispiel ähnelt dem vorherigen, jedoch wird eine auf VMware Workstation ausgeführte VM verwendet, um VMDK-Dateien der ESXi-VM zu öffnen. Diese Methode kann beispielsweise verwendet werden, wenn auf dem ESXi-Datenspeicher kein freier Speicherplatz zum Kopieren einer virtuellen Festplatte vorhanden ist. Eine virtuelle Festplatte der Win-Test2 Die im vorherigen Beispiel erwähnte VM wird auf einer VMware-Arbeitsstation gemountet, um ihren Inhalt zu extrahieren.
- Gehen Sie in VMware vSphere Client zu Speicherorte > [Your datastore name] > Dateien Wählen Sie Ihre VMDK-Datei aus und klicken Sie auf Herunterladen.
Wie Sie sich erinnern, besteht eine virtuelle Festplatte im ESXi-Format aus vmdk und –flat.vmdk Dateien. Sie müssen beide Dateien auf Ihren Computer herunterladen, auf dem VMware Workstation oder VMware Player installiert ist. Wenn Sie eine virtuelle Festplatte aus dem ESXi-Datenspeicher mit VMware HTML5 vSphere Client herunterladen, werden diese beiden Dateien in einem ZIP-Archiv zusammengefasst.
Alternativ können Sie den SSH-Zugriff auf Ihren ESXi-Host aktivieren, zum Datenspeicher-Verzeichnis navigieren und beide virtuellen Festplattendateien manuell mit einem SCP-Client auf Ihren Computer kopieren, zum Beispiel WinSCP.
HINWEIS: Wenn Sie eine dünn bereitgestellt Wenn Sie eine virtuelle Festplatte aus einem ESXi-Datenspeicher mit dem VMFS-Dateisystem auf Ihren Computer kopieren, erhalten Sie eine leichtgewichtige vmdk Datei und ein –flat.vmdk Datei, deren Größe der maximal bereitgestellten Größe der virtuellen Festplatte entspricht (wie beim Herunterladen einer virtuellen Festplatte mit Thick Provisioning). Der Grund dafür ist, dass Thin Provisioning als eine Art VMFS-Dateisystem Funktion.

Jetzt sehen Sie zwei Dateien der virtuellen Festplatte im ESXi-Format, die in einem ZIP-Archiv heruntergeladen wurden. Die Größe der virtuellen Festplatte mit Thin Provisioning auf dem VMFS-Datenspeicher beträgt jetzt etwa 2 GB (siehe Screenshot oben), und die Größe derselben Festplatte, die auf eine Arbeitsstation heruntergeladen wurde, beträgt etwa 8 GB (siehe Screenshot unten).
- Entpacken Sie die beiden Dateien aus dem Archiv. Standardmäßig werden die Dateien in das Verzeichnis Win-Test2.vmdk Verzeichnis, dessen Name mit dem Namen des Archivs übereinstimmt, jedoch ohne Dateiendung.

- Für diesen Schritt sollten Sie über eine fehlerfreie VM mit einem funktionsfähigen Betriebssystem auf Ihrem Computer verfügen, auf dem VMware Workstation oder Player installiert ist. Während im vorherigen Beispiel eine VM mit Windows Server 2016 verwendet wurde, wird in diesem Beispiel eine fehlerfreie VM mit Windows Server 2008 verwendet.
Öffnen Sie VMware Arbeitsstation oder VMware Player, wählen Sie Ihre fehlerfreie VM aus und Einstellungen der virtuellen Maschine bearbeiten.

- In der Hardware Registerkarte, klicken Sie auf die Hinzufügen Schaltfläche.

- In der Hardware-Assistent hinzufügen das sich öffnet, wählen Sie Festplatte als Hardwaretyp. Wählen Sie dann einen Typ von Festplatten aus (Sie können den empfohlenen Wert beibehalten). Auf der Wählen Sie eine Festplatte aus Bildschirm, wählen Sie die Vorhandene virtuelle Festplatte verwenden Optionen.

- Wählen Sie die vmdk Dateien (nicht –flat.vmdk), die Sie aus dem ZIP-Archiv extrahiert haben. Sie können die Datei durchsuchen oder den gesamten Pfad zur Datei manuell eingeben.

In diesem Beispiel werden ESXi 6.5 und VMware Workstation 15 verwendet. Die VMware Workstation-VM, auf der in unserem Beispiel Windows Server 2008 ausgeführt wird, hat die Version Workstation 12 (VM-Version 12). Die ESXi-VM, deren virtuelle Festplatte wir anhängen möchten, hat die VM-Version 7.
- Wir erhalten in VMware Workstation eine Fehlermeldung, dass die vom VMware ESXi-Host kopierte virtuelle Festplatte nicht mit dieser virtuellen Maschine kompatibel ist:

Dieser Fehler kann durch Bearbeiten der Festplattenbeschreibungsdatei (die leichtgewichtige vmdk Datei im Falle von virtuellen Festplatten von ESXi-VMs). Öffnen Sie Ihre VMDK-Datei im Texteditor und bearbeiten Sie die Zahl in der Ddb.virtuelleHWVersion Zeichenfolge. In unserem Fall wird 13 in 12 geändert.
HINWEIS: Beachten Sie, dass für virtuelle Festplatten von VMware Workstation-VMs ein virtueller Festplatten-Deskriptor in die virtuelle Festplatten-VMDK-Datei integriert ist (es gibt keine separate Deskriptordatei wie bei virtuellen Festplatten von ESXi-VMs).

Nach dem Bearbeiten der Datei wird die virtuelle Festplatte erfolgreich zur vorhandenen VM hinzugefügt.
- Schalten Sie die VM ein, falls sie noch nicht eingeschaltet ist.
- Öffnen Festplatten-Management Ändern Sie in Windows den Status Ihrer virtuellen Festplatte auf „Online“, weisen Sie einer Partition einen Laufwerksbuchstaben zu und durchsuchen Sie die Dateien.

So extrahieren Sie Daten aus einer VMDK-Datei, ohne eine VM zu starten
Die Methoden, bei denen Sie keine virtuelle Maschine konfigurieren und einschalten müssen, haben ihre eigenen Vorteile. Bei einigen dieser Methoden ist keine Installation eines Hypervisors erforderlich. Sie können VMDK-Dateien in kurzer Zeit direkt auf Ihrem Host-Betriebssystem mounten.
Methode 1: Montage VMDK-Dateis in einem Host-Betriebssystem mit VMware Workstation
Diese Methode erfordert eine VMware-Workstation Installation auf einem Windows- oder Linux-Betriebssystem, das auf Ihrem physischen Computer ausgeführt wird. VMware Workstation bietet eine praktische Funktion, mit der Sie VMDK-Dateien in Ihrem Host-Betriebssystem mounten können. Virtuelle Festplatten im ESXi-Format und Delta-Festplatten im Zusammenhang mit VM-Schnappschüssen werden unterstützt. Wie bei allen zuvor in diesem Blogbeitrag beschriebenen Methoden muss Ihr Betriebssystem die Dateisysteme der virtuellen Festplattenpartitionen unterstützen.Wenn Sie Schnappschüsse Ihrer virtuellen Maschine haben, werden die virtuellen Delta-Festplatten nach der Erstellung jedes Schnappschusses erstellt. Sie sollten über eine übergeordnete virtuelle Festplatte und Delta-Festplatten verfügen, wenn Sie den Zustand einer virtuellen Festplatte unmittelbar nach der Erstellung eines bestimmten Schnappschusses öffnen möchten. In diesem Fall sollten Sie die entsprechende virtuelle Delta-Festplatte in Ihr Host-Betriebssystem einbinden. Abhängigkeiten in Bezug auf die übergeordnete virtuelle Festplatte werden automatisch aufgelöst.Wenn Sie über Schnappschüsse verfügen, aber eine übergeordnete virtuelle Festplatte öffnen möchten, öffnen Sie die übergeordnete virtuelle Festplatte im schreibgeschützten Modus. Der Grund dafür ist, dass Änderungen an der übergeordneten virtuellen Festplatte Schnappschüsse oder verknüpfte Klone beschädigen können, die aus einer übergeordneten Virtuellen Maschine mit der übergeordneten virtuellen Festplatte erstellt wurden. Der schreibgeschützte Modus verhindert, dass Sie Daten auf eine virtuelle Festplatte schreiben, nach dem Sie die Festplatte an das Host-Betriebssystem gemountet haben. Sie können virtuelle VMDK-Festplattendateien mounten, wenn eine VM, die diese virtuelle Festplatte verwendet, ausgeschaltet ist oder wenn eine bestimmte VM diese virtuelle Festplatte nicht verwendet.Sehen wir uns an, wie man eine virtuelle VMDK-Festplatte der VMware Workstation-VM mit Schnappschüssen mountet. Auf einer NTFS-Partition auf einer virtuellen Festplatte der VM ist Windows installiert. Nach dem Erstellen des ersten Schnappschusses wird die Schnappschuss1.txt Die Dateien werden im Stammverzeichnis der Festplatte C: erstellt, und ebenso werden nach der Erstellung des zweiten Schnappschusses die Dateien erstellt Momentaufnahme2.txt Die Dateien werden dort erstellt. Das erste Beispiel gilt für Linux, das zweite für Windows. In diesem Beispiel werden virtuelle Festplatten-Dateien der alten Windows XP-VM verwendet.
Beispiel 1: Mounten von VMDK auf dem Linux-Host
- Öffnen Sie VMware Arbeitsstation für Linux und gehen Sie zu Datei > Virtuelle Festplatten mounten.

- Klicken Festplatte einlegen, und ein Popup-Fenster wird geöffnet. Klicken Sie auf Durchsuchen und wählen Sie die VMDK-Datei der virtuellen Festplatte aus.

- Wählen wir die VMDK-Datei der zweiten differentiellen virtuellen Festplatte aus, die nach der Erstellung des zweiten VM-Schnappschusses erstellt wurde. Der Name dieser Datei lautet VM_name-000002.vmdk in solchen Fällen (WinXP-Test-000002.vmdk wird in diesem Beispiel verwendet).

- Erstellen Sie das Verzeichnis auf Ihrem Linux-Dateisystem, um eine virtuelle Festplatte im VMDK-Format in diesem Verzeichnis zu mounten. Erstellen wir das /mnt/vmdk/ Verzeichnis in der Linux-Konsole.
mkdir /mnt/vmdk/ - Legen Sie Berechtigungen für Ihren Benutzer fest (Benutzername ist Benutzer1 und ist Mitglied von Gruppe 1 in diesem Beispiel):
chown -R user1:group1 /mnt/vmdk/chmod -R 0775 /mnt/vmdk/ - Wählen Sie nun das von Ihnen erstellte Verzeichnis als Zielverzeichnis aus und aktivieren Sie das Kontrollkästchen „Im schreibgeschützten Modus mounten” Kontrollkästchen und klicken Sie auf Berg.

- Jetzt können Sie die /mnt/vmdk/ Verzeichnis in Ihrem Linux-Datei-Explorer und durchsuchen Sie Dateien und Verzeichnisse, die sich auf der virtuellen VMDK-Festplatte befinden. Sie können sehen Schnappschuss1.txt und Momentaufnahme2.txt Dateien, die nach dem Erstellen des ersten und zweiten Schnappschusses in diesem Beispiel erstellt wurden. Jede dieser beiden Dateien befindet sich auf einer separaten virtuellen Delta-VMDK-Festplatte.

- Vergessen Sie nicht, die virtuelle VMDK-Festplatte aus dem Verzeichnis (Mountpunkt) auf Ihrem Linux-Hostsystem zu entfernen, wenn Sie die Vorgänge mit dem Inhalt der virtuellen Festplatte abgeschlossen haben.

Wenn Sie die Konsolenoberfläche bevorzugen, können Sie VMDK-Festplatten-Images auf dem Linux-Host in der Konsole mit diesem Befehl mounten:vmware-mount /media/user1/vms/vm_name/vm_disk_name-000002.vmdk /mnt/vmdkWo:vm_name ist der Name der virtuellen Maschine, der in diesem Fall mit dem Namen des VM-Verzeichnisses übereinstimmt. WinXP-Test ist der VM-Name in unserem Beispiel.vm_disk_name ist der Name der virtuellen Festplatte (WinXP-Test.vmdk wird in diesem Beispiel verwendet).vm_disk_name-000001.vmdk ist der Name der ersten Delta-Festplatte (Differenzfestplatte), die nach der Erstellung des ersten VM-Schnappschusses erstellt wurde (WinXP-Test-000001.vmdk in diesem Fall).vm_disk_name-000002.vmdk ist der Name der zweiten Delta-Festplatte, die nach der entsprechenden Erstellung des zweiten VM-Schnappschusses erstellt wurde (WinXP-Test-000002.vmdk in diesem Fall).
- Mounten Sie die virtuelle Festplatte. Standardmäßig wird die virtuelle Festplatte im Lese-/Schreibmodus gemountet. Sie können den Befehl -r Geben Sie in der Befehlszeile ein, um eine Festplatte im schreibgeschützten Modus zu mounten.
vmware-mount /media/user1/vms/vm_name/vm_disk_name-000002.vmdk /mnt/vmdk - Alle gemounteten virtuellen VMDK-Festplatten auflisten:
vmware-mount -L - Bevor Sie die Arbeit mit gemounteten virtuellen VMDK-Festplatten fertigstellen, hängen Sie alle virtuellen Festplatten aus:
vmware-mount -x
Beispiel 2: So mounten Sie VMDK auf dem Windows-Host
Die Vorgehensweise zum Mounten von VMDK-Dateien unter Windows ist ähnlich. Zusätzlich zum Datei > Virtuelle Festplatten zuordnen Option in der grafischen Benutzeroberfläche (GUI) von VMware Workstation, können Sie die folgenden Schritte ausführen. Lassen Sie uns die VMDK-Datei der ersten differentiellen virtuellen Festplatte mounten, die nach der Erstellung des ersten VM-Schnappschusses erstellt wurde. Der Name dieser VMDK-Datei hat das folgende Format: VM_name-000001.vmdk (WinXP-Test-000001.vmdk wird in diesem Tutorial geöffnet).
- Klicken Sie mit der rechten Maustaste auf die VMDK-Datei im Windows Explorer und klicken Sie auf Virtuelle Festplatte zuordnen.

- Wählen Sie die Parameter zum Mounten einer VMDK-Datei aus. Es wird empfohlen, die VMDK-Datei im schreibgeschützten Modus zu öffnen, um mögliche Schäden an virtuellen Festplatten zu vermeiden, die zum Schnappschuss-Kreis gehören, nach dem Daten geschrieben wurden. Der Standardlaufwerksbuchstabe ist in diesem Fall Z: und das Laufwerk wird nach der Zuordnung automatisch in Windows Explorer geöffnet, wenn das entsprechende Kontrollkästchen aktiviert ist. Klicken Sie auf OK fortfahren.

- Jetzt ist die virtuelle Festplatte als Laufwerk Z: in Windows eingebunden, und Sie können den Inhalt der vmdk-Datei lesen. Im folgenden Screenshot sehen Sie die Schnappschuss1.txt Datei, die nach der Erstellung des ersten Schnappschusses erstellt wurde. Die Momentaufnahme2.txt Die Datei fehlt, da sie nach der Erstellung des zweiten VM-Schnappschusses erstellt wurde und wir eine Delta-Virtual-Disk im Zusammenhang mit dem ersten VM-Schnappschuss geöffnet haben.

- Wenn Sie mit der Arbeit an der zugeordneten virtuellen VMDK-Festplatte fertiggestellt haben, vergessen Sie nicht, die Verbindung zur Festplatte zu trennen. Klicken Sie mit der rechten Maustaste auf die entsprechende VMDK-Datei und klicken Sie dann auf Virtuelle Festplatte trennenNach dem Trennen der virtuellen Festplatte können Sie die VM, die diese virtuelle Festplatte verwendet, einschalten.

Methode 2: Mit 7-zip Inhalte aus VMDK-Dateien extrahieren
Wenn Sie nach einer Möglichkeit suchen, VMDK-Dateien ohne Ausführen von Virtuellen Maschinen zu öffnen, können Sie 7-zip installieren und Inhalte aus virtuellen Festplatten-Images extrahieren. 7-zip ist ein kostenloses Tool zum Archivieren von Dateien und zum Entpacken von Dateien aus Archiven und anderen Images. Sie können 7zip als VMDK-Extractor verwenden. Dieses Tool kann auf Linux- und Windows-Rechnern verwendet werden.7-zip kann öffnen vmdk und –flat.vmdk Dateien (dieses Dienstprogramm kann eine einzelne –flat.vmdk Datei, wenn der Deskriptor vmdk Datei fehlt) – 7-zip ist eigentlich für virtuelle Festplatten im ESXi-Format gedacht. 7-zip kann keine Delta-VMDK-Dateien öffnen, die nach der Erstellung von VM-Schnappschüssen erstellt wurden.
So öffnen Sie eine VMDK-Dateis mit 7-zip unter Linux
- Installieren Sie ein vollständiges 7-zip-Paket auf Ihrem Linux-Rechner. In diesem Beispiel wird Ubuntu verwendet.
apt-get install p7zip-full - Inhalt der Liste vmdk Datei mit 7-zip:
7z l vm_name.vmdk - Suchen wir die Dateien, die „Enthalten“Boot.” in ihren Namen, zum Beispiel:
7z l /media/user1/vms/WinXP-test/WinXP-test.vmdk | grep boot[.]Wo Benutzer1 ist der Name unseres Linux-Benutzers, l – Liste.

- Extrahieren wir (e) das boot.ini Dateien aus dem VMDK-Image:
7z e /media/user1/vms/WinXP-test/WinXP-test.vmdk boot.iniSie können auf dieselbe Weise andere Dateien und Verzeichnisse aus der VMDK-Datei extrahieren.
So öffnen Sie eine VMDK-Dateis mit 7-zip unter Windows
- Herunterladen Sie die kompatible Version von 7-zip von der offizielle Website und installieren Sie die Anwendung auf Ihrem Windows-Rechner. Verwenden Sie für mehr Komfort das EXE-Installationsprogramm.
- Nach der Installation von 7-zip unter Windows werden dem Kontextmenü neue 7-zip-Optionen hinzugefügt, wenn Sie mit der rechten Maustaste auf eine Datei oder einen Ordner im Windows Explorer klicken (siehe Screenshot unten). Verwenden Sie diese Optionen, um die VMDK-Datei als Archiv zu öffnen oder Dateien sofort zu extrahieren.

- Im folgenden Screenshot ist der Inhalt des eigenständigen Win-Test2-Flat.vmdk Die Datei wird in der GUI von 7-zip unter Windows angezeigt. Sie können die benötigten VMDK-Inhalte extrahieren.

So mounten Sie VMDK-Dateien unter Linux (andere Methoden)
Eine der leistungsstärksten Funktionen von Linux ist die Möglichkeit, selbst mit integrierten Tools die höchste Anzahl an Vorgängen in der Konsole auszuführen. Mit diesen Tools können Sie VMDK-Dateien mounten und auf den auf virtuellen Festplatten gespeicherten Inhalt zugreifen. In den bereitgestellten Beispielen wird Ubuntu Linux verwendet.
Methode 1: Wie man VMDK-Datei mountens von /dev/loop
Loop-Geräte sind Pseudogeräte in Linux, die Dateien als Blockgeräte zugänglich machen und zum Mounten von Disk-Images verwendet werden können, die Dateisysteme enthalten. Loop-Geräte haben den Namen „Loop-Gerät“. /dev/loopX wobei X die Nummer des Loop-Geräts ist. Diese Methode ist gut zum Mounten –flat.vmdk Dateien, auch ohne einen virtuellen Festplatten-Deskriptor.Sehen wir uns anhand eines Beispiels an, wie man eine VMDK-Datei unter Linux mountet, um auf die Dateien der virtuellen Festplatte zuzugreifen. Es gibt eine virtuelle Festplatte im ESXi-Format, die eine Partition enthält – die Deskriptordatei fehlt. Vor langer Zeit war Windows XP auf dieser virtuellen Festplatte installiert.
- Verwenden Sie einen der beiden Befehle, um die Anzahl der vorhandenen Loop-Geräte auf Ihrem Linux-System zu überprüfen.
fdisk -l | grep /dev/loopdf -h | grep /dev/loop - In unserem Fall existieren bereits Geräte mit den Nummern 1 bis 21 (/dev/loop1 – /dev/loop21). Erstellen wir also das Loop-Gerät mit der Nummer 30 – diese Nummer ist frei. Wir werden dieses Gerät mit dem –flat.vmdk datei.
losetup /dev/loop30 /vms/Win-test2-flat.vmdk - Offset einstellen:
losetup -o 32256 /dev/loop31 /dev/loop30Dabei ist 32256 der Offset, der für eine unter Windows XP/Server 2003 und älteren Windows-Versionen formatierte Festplatte 63*512 beträgt (63 ist die Nummer des ersten Sektors der Partition und 512 Byte ist die Größe des Sektors). Für Windows 7/Server 2008 und neuere Windows-Versionen versuchen Sie es mit dem Offset 105906176.
Mit dem folgenden Befehl können Sie Informationen über die Größe des Sektors und den ersten Sektor abrufen, der für den Startvorgang verwendet wird:
fdisk -l /dev/loop30 /vms/Win-test2-flat.vmdk
Alternativ können Sie bei virtuellen Festplatten, die mehrere Partitionen enthalten, mit parted den Anfang und das Ende jeder Partition bestimmen:
parted /dev/loop30In der getrennt Konsole, geben Sie die folgenden Befehle ein:
unitBprint
- Erstellen Sie ein Verzeichnis, das als Einhängepunkt für das VMDK-Image verwendet werden soll:
mkdir /mnt/vmdk-image - Das mit dem VMDK-Image verbundene Loopback-Gerät in das erstellte Verzeichnis einbinden:
mount /dev/loop31 /mnt/vmdk-image - Listen Sie den Inhalt des gemounteten Images auf:
ls -al /mnt/vmdk-image - Nach dem Fertigstellen der Arbeit mit dem Inhalt der virtuellen Festplatte hängen Sie das vmdk-Image aus und trennen Sie das Loop-Gerät:
umount /mnt/vmdk-imagelosetup -d /dev/loop31
Methode 2: So mounten Sie VMDK-Dateien mit kpartx
Kpartx ist ein Tool, mit dem Partitionen innerhalb von Image-Dateien in die Verzeichnisse Ihres realen Linux-Dateisystems eingebunden werden können. Dieses Tool kann verwendet werden, um Gerätezuordnungen für Partitionen von Blockgeräten einzurichten. Diese Methode funktioniert auch für das Einbinden von –flat.vmdk Auf ESXi-Servern verwendete Images. Sehen wir uns an, wie man das –flat.vmdk Datei, die im vorherigen Beispiel verwendet wurde.
- Installieren Sie kpartx:
apt-get install kpartx - Fügen Sie die Partitionszuordnung für das VMDK-Image im ausführlichen Betriebsmodus hinzu:
kpartx -av /vms/Win-test2-flat.vmdk - Eine Partition an den /mnt/vmdk-Image vorher erstelltes Verzeichnis:
mount /dev/mapper/loop30p1 /mnt/vmdk-image/Wo Schleife 30 ist die Nummer des Loop-Geräts und p1 ist die Nummer der Partition innerhalb des Images (die erste Partition auf der Festplatte).
- Listen Sie den Inhalt der virtuellen Festplattenpartition auf, die Sie gemountet haben:
ls -al /mnt/vmdk-image/
- Wenn Sie die Vorgänge mit den Dateien des VMDK-Images fertiggestellt haben, hängen Sie das virtuelle Festplatten-Image VMDK aus:
umount /mnt/vmdk-imagekpartx -d /vms/Win-test2-flat.vmdk
Schlussfolgerung
Die Kenntnis mehrerer Methoden zum Extrahieren von VMDK-Inhalten bietet Ihnen Flexibilität und Zuverlässigkeit, da jede Methode in bestimmten Situationen die beste Option sein kann. Darüber hinaus ist es noch besser, zusätzlich zu diesem Wissen Backups Ihrer VMs zu haben.NAKIVO Backup & Replication kann VMs, die in VMware vSphere ausgeführt werden, optimal sichern und wiederherstellen. Sie können die gesamte VM, die jeweilige virtuelle Festplatte oder einzelne Dateien aus dem Backup an einem benutzerdefinierten Standort wiederherstellen.