Tools für Blockdiagramme/Listings der mehrschichtigen Speichervirtualisierung mit LVM und LUKS?

Tools für Blockdiagramme/Listings der mehrschichtigen Speichervirtualisierung mit LVM und LUKS?

Wenn mehrere Speichervirtualisierungssysteme gemeinsam verwendet werden, kann es kompliziert und zeitaufwändig sein, die Struktur der verschiedenen beteiligten Beziehungen zu verstehen. Welche Tools stehen zur Diagrammerstellung und Zusammenfassung dieser Beziehungen zur Verfügung?

Der Fall, der mich besonders interessiert, ist LinuxLVMund LUKS. Ich habe ein System, bei dem diese übereinander geschichtet sind. Mein Ziel war es, eineBlockdiagramm, mit den folgenden Ebenen (etwas vereinfacht, um irrelevante Komplikationen auszuschließen):

  1. Logisches LVM-Volume (LV)
  2. LVM-Volume-Gruppe (VG)
  3. LUKS-Partition == physisches LVM-Volume (PV)
  4. Physische Partition
  5. Physische Festplatte

Beachten Sie, dass VGs im Allgemeinen zwar eine Viele-zu-viele-Beziehung zwischen LVs und PVs bilden, mein Fall jedoch einfacher war, da jedem VGs nur ein einziges PV zugeordnet war.

Das Blockdiagramm sollte mit Informationen wie den Dateinamen der physischen Datenträgergeräte, PV-, VG- und LV-Namen, den Gerätenamen des Device-Mappers und den Datenträger-UUIDs (sofern verfügbar) beschriftet werden.

Ich habe gerade dieses Blockdiagramm gezeichnet. Ich habe festgestellt, dass ich 12 Informationsquellen verwendet habe, zusammen mit Vorkenntnissen über das System und der Beobachtung, wie sich das System im Laufe der Zeit verändert hat, während ich die Befehle cryptsetupund mountausgeführt habe. Das Zeichnen war ein mühsamer und zeitaufwändiger iterativer Prozess des Wissensaufbaus, der mich daran erinnerteeine bestimmte Art von Logikproblem. Hier sind einige der Befehle, die ich verwendet habe:

ls -l /dev/mapper/*
ls -l /dev/disk/by-uuid/*
dmsetup info
lvdisplay
ls -l /dev/mapper/<LV name>
pvs
vgs
lvs
cat /etc/fstab
cat /etc/crypttab
fdisk -l /dev/<physical disk device name>
mount

Welche Tools stehen zur Verfügung, um Zusammenfassungen dieser Art von Speichervirtualisierungssystem und insbesondere Linux-spezifischer Systeme wie LVM und LUKS zu erstellen? Ich würde mich anstelle von Blockdiagrammen gerne mit relationalen Listen im Klartext zufrieden geben.

In meinem Fall gab es einige zusätzliche Komplikationen. Ich werde diese nur beschreiben, um zu veranschaulichen, wie es noch komplizierter werden kann. Beachten Sie jedoch, dass die obige Situation so kompliziert war, dass es zeitaufwändig war, nur das Blockdiagramm für den oben beschriebenen Teil meines Systems zu zeichnen. Mir ist bewusst, dass das Problem durch das Entfernen dieser Komplikationen vereinfacht werden könnte, also verschwenden wir bitte keinen Platz darauf.

Eine Komplikation bestand darin, dass ich auch eine Reihe alter Partitionen habe, bei denen die LUKS/LVM-Schichtung der oben beschriebenen entgegengesetzt ist, d. h.:

(physische Partition == LVM PV) -> VG -> LV -> LUKS-verschlüsseltes Gerät -> LUKS-Klartextgerät

anstatt:

physische Partition -> LUKS-verschlüsseltes Gerät -> (LUKS-Klartextgerät == LVM PV) -> VG -> LV

Darüber hinaus war ein mit LUKS verschlüsseltes Gerät falsch beschriftet, was darauf schließen ließ, dass es sich auf einer anderen physischen Festplatte befand, als es sich in Wirklichkeit befand!

Natürlich kann es auch andere Komplikationen geben, am offensichtlichsten, wenn eine einzelne Datenträgergruppe mit mehreren physischen Datenträgern verknüpft ist. In diesem Fall würde ich mehrere Blockdiagramme benötigen (zwei im einfachen Fall, mehr, wenn die Schichtung komplizierter ist).

verwandte Informationen