Wenn der XenServer nicht mehr startet oder sein lokales Storage Repository nicht mehr findet, kann folgendes Vorgehen Abhilfe schaffen, um kurzfristig auf benötigte Dateien zuzugreifen.
Eine Voraussetzung, um auf die Daten der virtuellen Maschinen im lokalen XenServer Storage zuzugreifen, ist eine Live-CD mit LVM Unterstützung. In diesem Fall wurde eine Debian GNU/Linux 6 Live-CD verwendet.
1. Booten Sie von der Live-CD melden Sie sich als Benutzer root an.
2. Führen Sie den Befehl lvscan aus, wählen das benötigte Logical Volume aus und klicken Sie auf „merken“. Welches LV zu welcher virtuellen Maschine gehört lässt sich meist nur durch Ausprobieren herausfinden, eingrenzen kann man die wahrscheinlichsten Kandidaten meist nur anhand der Größe des LV.
root@debian:/# lvscan
ACTIVE ‚/dev/VG_XenStorage-4a48ea5b-ca5d-280f-4699-8d930df8500b/LV-8adc14c2-38ff-4377-a096-911eff7f58c8‘ [100.20 GB] inherit
ACTIVE ‚/dev/VG_XenStorage-<ID>/LV-<ID>‘ [100.20 GB] inherit
ACTIVE ‚/dev/VG_XenStorage-<ID>/LV-<ID>‘ [9.24 GB] inherit
ACTIVE ‚/dev/VG_XenStorage-<ID>/LV-<ID>‘ [38.86 GB] inherit
ACTIVE ‚/dev/VG_XenStorage-<ID>/LV-<ID>‘ [26.03 GB] inherit
ACTIVE ‚/dev/VG_XenStorage-<ID>/LV-<ID>‘ [10.28 GB] inherit
ACTIVE ‚/dev/VG_XenStorage-<ID>/LV-<ID>‘ [8.06 GB] inherit
ACTIVE ‚/dev/VG_XenStorage-<ID>/LV-<ID>‘ [100.20 GB] inherit
[…]
3. Ermitteln Sie über "parted" den Offset der Partition des benötigten LV. Dazu starten Sie "parted" unter Angabe des LV (welches wir uns in Schritt 2 gemerkt haben) und ändern Sie die Darstellung auf Blocks.
root@debian:/# parted /dev/VG_XenStorage-<ID>/LV-<ID>
GNU Parted 2.3
Using /dev/dm-1
Welcome to GNU Parted! Type ‚help‘ to view a list of commands.
(parted) unit
Unit? [compact]? b
(parted) print
Model: Linux device-mapper (linear) (dm)
Disk /dev/dm-1: 16106127360B
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 32256B 16106127360B 16105065984B primary ntfs boot
(parted)
quit
Durch den Befehl "print" werden verfügbare Partitionen aufgelistet, nun müssen Sie sich einen weiteren Wert merken, und zwar den Wert in der Spalte "Start". Anschließend können Sie das Programm parted mit dem Befehl quit verlassen.
root@debian:/# losetup -o 32256B -f /dev/VG_XenStorage-<ID>/LV-<ID>
Der Parameter –o bestimmt den Offset und –f die Datei bzw. in unserem Beispiel das LV welches eingehängt werden soll.
root@debian:/# losetup –a
root@debian:/# mount /dev/loop-1 /mnt/lv-test1
Sofern der Typ des Dateisystems bekannt ist, können Sie anschließend in den Dateien der Virtuellen Maschine stöbern.