Как правильно отсоединить/подключить съемное устройство LVM2?

Как правильно отсоединить/подключить съемное устройство LVM2?

Как правильно отключать (извлекать) и затем подключать (вставлять) съемное (с возможностью горячего подключения, USB и т. д.) запоминающее устройство с LVM2 на нем?

Я нашелэта заметка

Удалить (отсоединить, извлечь):

lvchange -an /dev/your_volume_group_name
vgexport -a

Вставка (заглушка):

vgimport -a
lvchange -ay /dev/your_volume_group_name

но я не уверен, -aне является ли использование опции «все» излишеством?

Еще один момент, мне интересно, может ли быть в некоторых обстоятельствах необходимость использования vgscan pvscanв таком сценарии? Я думаю об автоматизированном решении.

решение1

Вам не нужно экспортировать VG, она используется для переноса VG из одной системы в другую.

Просто vgchange -an vgnameдеактивируйте все логические тома в группе томов, которую вы хотите отключить.

Позже, после повторного подключения устройства, vgchange -ay vgnameвсе логические тома в вашей VGname VG будут повторно активированы, после чего вы сможете монтировать логические тома и использовать их.

Распознавание устройств зависит от аппаратного обеспечения, модулей ядра и т. д., но должно работать с самой последней версией комплекта.

решение2

Я использую скрипт, похожий на этот:

  • размонтировать все файловые системы в группе томовvg_name
  • если все файловые системы в vg_name размонтированы, сделать VG недоступным
  • не забудьте синхронизировать буферы памяти с диском...
  • sispmctl используется для выключения моих внешних дисков
#!/bin/баш    
echo "Размонтирование файловой системы"
монтировать | grep vg_name && {
    mount | grep vg_name | cut -d' ' -f3 | xargs umount -v
}

монтировать | grep vg_name || {
    echo "Установить VG недоступно"
    /sbin/vgchange -an /dev/vg_name && {
        echo "Синхронизировать диски"
        синхронизация; синхронизация && {
            echo "Отключить диски"
            /usr/local/bin/sispmctl -D 01:01:4b:54:e5 -f 1
        }
    }
}

Когда диск подключен, ядро ​​автоматически обнаружит его, если в системе доступны соответствующие модули (это обычно происходит в основных дистрибутивах).

Экспорт/импорт требуется только в том случае, если PV/VG/LV изменены и VG подключена к разным системам. В этом случае vgexport будет следовать за vgchange.

Связанный контент