Wie kann ich ein entfernbares Speichergerät (Hot-Plug, USB usw.) mit LVM2 ordnungsgemäß abziehen (entfernen) und später wieder anschließen (einstecken)?
Ich habe gefundendieser Hinweis
Entfernen (abziehen, auswerfen):
lvchange -an /dev/your_volume_group_name
vgexport -a
Einfügen (Stecker):
vgimport -a
lvchange -ay /dev/your_volume_group_name
aber ich bin nicht sicher, ob die Verwendung der Option „alle“ -a
nicht übertrieben ist?
Außerdem frage ich mich, ob es unter Umständen notwendig sein könnte, es vgscan
pvscan
in einem solchen Szenario zu verwenden. Ich denke über eine automatisierte Lösung nach.
Antwort1
Sie müssen die VG nicht exportieren, da diese zum Migrieren einer VG von einem System auf ein anderes verwendet wird.
Deaktivieren Sie einfach vgchange -an vgname
alle logischen Volumes in der Volume-Gruppe, die Sie trennen möchten.
Später, nachdem Sie das Gerät wieder angeschlossen haben, vgchange -ay vgname
werden alle logischen Volumes in Ihrem VGName-VG reaktiviert und Sie können dann LVs mounten und verwenden.
Die Geräteerkennung hängt von der Hardware, den Kernelmodulen usw. ab, sollte aber mit dem aktuellsten Kit funktionieren.
Antwort2
Ich verwende ein Skript ähnlich diesem:
- Unmounten Sie alle Dateisysteme in der Datenträgergruppevg_name
- Wenn alle Dateisysteme in vg_name ausgehängt sind, setzen Sie die VG auf nicht verfügbar
- Vergessen Sie nicht, die Speicherpuffer mit der Festplatte zu synchronisieren ...
- sispmctl wird zum Ausschalten meiner externen Festplatten verwendet
#!/bin/bash echo "Dateisystem aushängen" grep vg_name && { mount | grep VG-Name | cut -d' ' -f3 | xargs umount -v } mounten | grep VG-Name || { echo "VG-Set nicht verfügbar" /sbin/vgchange -an /dev/vg_name && { echo "Datenträger synchronisieren" synchronisieren; synchronisieren && { echo "Festplatten ausschalten" /usr/local/bin/sispmctl -D 01:01:4b:54:e5 -f 1 } } }
Wenn die Festplatte angeschlossen ist, wird sie vom Kernel automatisch gefunden, sofern die entsprechenden Module auf dem System verfügbar sind (das ist bei Mainstream-Distributionen normalerweise der Fall).
Export/Import ist nur erforderlich, wenn die PVs/VGs/LVs geändert werden und die VG an verschiedene Systeme angeschlossen ist. vgexport würde in diesem Fall nach vgchange kommen.