LVM ist eine großartige Sache. Dynamische Volumes lassen sich jederzeit nach Bedarf vergrößern. Nie mehr raten, wie viel Platz für was nötig ist, einfach die Partitionen mitwachsen lassen.
Klingt alles nach einer netten Angelegenheit, warum also nicht für die neue USB-Festplatte verwenden? An sich eine Gute Idee. Falsch gemacht steht man allerdings schnell ratlos da.
z.B. wenn man die Volume Group nicht offline nimmt bevor die Festplatte vom USB-Port verschwindet. Nach eingehenden Experimenten kann ich bestätigen, dass das mitunter unerwartete Ergebnisse liefert.
$lvs /dev/dm-3: read failed after 0 of 4096 at 0: Eingabe-/Ausgabefehler /dev/dm-4: read failed after 0 of 4096 at 0: Eingabe-/Ausgabefehler /dev/dm-5: read failed after 0 of 4096 at 0: Eingabe-/Ausgabefehler LV VG Attr LSize Origin Snap% Move Log Copy% Convert backup extern -wi-a- 50,00G oggs extern -wi-a- 50,00G photos extern -wi-a- 100,00G $ mount /dev/extern/backup /media/extern/backup/ mount: /dev/mapper/extern-backup: can't read superblock
Was ist passiert? Ich bin kein LVM Experte. Die Erklärung sollte allerdings sein, dass durch das Entfernen und wieder Anstecken der Festplatte die Mappers nicht angepasst werden. LVM versucht jetzt von der bereits entfernten Festplatte zu lesen und nicht von der neuen.
Und jetzt? Das Problem selbst behebt sich relativ einfach:
$ vgchange -a n extern /dev/dm-3: read failed after 0 of 4096 at 0: Eingabe-/Ausgabefehler /dev/dm-4: read failed after 0 of 4096 at 0: Eingabe-/Ausgabefehler /dev/dm-5: read failed after 0 of 4096 at 0: Eingabe-/Ausgabefehler 0 logical volume(s) in volume group "extern" now active $ vgchange -a y extern 3 logical volume(s) in volume group "extern" now active
Was macht dise Befehlsfolge? Ersteinmal wied die nicht mehr funktionierende Volume Group offline genommen, danach wieder angeschaltet. Dadurch wreden auch die Verweise im Mapper angepasst. Danach sollte die Wechselfestplatte wieder normal ansprechbar sein. Und in Zukunft wird die Volume Group auf der Festplatte erst deaktiviert (vgchange -a n extern) und danach abgesteckt