Если вы случайно удалили логический том (LV) или метаданные LVM были повреждены каким-либо образом, их можно легко восстановить без потери данных с помощью команды ‘vgcfgrestore’.

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

По умолчанию LVM автоматически создает резервные копии своих метаданных при каждом изменении конфигурации на всех устройствах LVM с помощью команды ‘vgcfgbackup’.

  • /etc/lvm/backup : содержит резервную копию метаданных, созданную после выполнения команды.
  • /etc/lvm/archive : Содержит архивы метаданных, которые были сделаны до выполнения команды.

Если вы хотите узнать больше о LVM, ознакомьтесь с приведенными ниже статьями:

Что такое vgcfgbackup?

Команда vgcfgbackup берет метаданные конфигурации из заголовка LVM диска и сохраняет их в местоположение файла по умолчанию.

Что такое vgcfgrestore?

Команда vgcfgrestore восстанавливает метаданные группы томов (VG) из последней архивной резервной копии.

Синтаксис:

vgcfgrestore [-f] [backup_file] vg_name

Проверка существующих LVM

Существующие логические тома (LV) можно перечислить с помощью команды blow:

Чтобы перечислить доступные логические тома, выполните:

# lvs

LV      VG      Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
home    rhel    -wi-ao---- 12.95g                                                    
root    rhel    -wi-ao---- 50.05g                                                    
swap    rhel    -wi-ao----  7.96g                                                    
lv001   vg01    -wi-ao---- 10.00g
lv002   vg01    -wi-ao---- 10.00g

Пример вывода:

Удаление логического тома (LV)

В демонстрационных целях мы удалим логический том ‘lv001’, который является активным логическим томом, указанным в приведенном выше выводе.

# lvremove /dev/mapper/vg01-lv001

  Do you really want to remove active logical volume "lv001"? [y/n]: y
   Logical volume "lv001" successfully removed

Восстановление логического тома (LV)

Прежде чем восстанавливать удаленный LVM, давайте определим последний архив, содержащий метаданные удаленного LVM.

Для этого выполните следующую команду.

Она выведет список всех резервных копий и архивов метаданных VG.

# vgcfgrestore ---list vg01

File:        /etc/lvm/archive/vg01_00000-381245830.vg
  VG name:        vg01
  Description:    Created before executing 'vgcreate vg01 /dev/sdb /dev/sdc /dev/sdd'
  Backup Time:    Sun Jul 19 04:01:03 2021
File:        /etc/lvm/archive/vg01_00001-459034274.vg
  VG name:        vg01
  Description:    Created before executing 'lvcreate -L 10G -n lv001 vg01'
  Backup Time:    Sun Jul 19 04:03:15 2021
File:        /etc/lvm/archive/vg01_00002-1063902356.vg
  VG name:        vg01
  Description:    Created before executing 'lvcreate -L 10G -n lv002 vg01'
  Backup Time:    Sun Jul 19 04:04:45 2021
File:        /etc/lvm/archive/vg01_00003-586203914.vg
  VG name:        vg01
  Description:    Created before executing 'lvremove /dev/mapper/vg01-lv001'
  Backup Time:    Sun Jul 19 04:25:52 2021
File:        /etc/lvm/backup/vg01
  VG name:        vg01
  Description:    Created after executing 'lvremove /dev/mapper/vg01-lv001'
  Backup Time:    Sun Jul 19 04:25:52 2021

Вы можете проверить, не нарушится ли резервное копирование архива перед выполнением фактического восстановления, используя опцию ‘-test’, как показано ниже:

# vgcfgrestore vg01 --test -f /etc/lvm/archive/vg_data_00003-586203914.vg

   TEST MODE: Metadata will NOT be updated and volumes will not be (de)activated.
   Volume group vg01 has active volume: lv001.
   WARNING: Found 1 active volume(s) in volume group "vg01".
   Restoring VG with active LVs, may cause mismatch with its metadata.
 Do you really want to proceed with restore of volume group "vg01", while 1 volume(s) are active? [y/n]: y
   Restored volume group vg01.

Если пробный запуск прошел успешно, выполните фактическое восстановление.

При этом восстановится удаленный логический том.

# vgcfgrestore vg01 -f /etc/lvm/archive/vg_data_00003-586203914.vg

   Volume group vg01 has active volume: lv001.
   WARNING: Found 1 active volume(s) in volume group "vg01".
   Restoring VG with active LVs, may cause mismatch with its metadata.
 Do you really want to proceed with restore of volume group "vg01", while 1 volume(s) are active? [y/n]: y
   Restored volume group vg01.

Проверьте, успешно ли восстановлен удаленный том с помощью команды ‘lvscan’.

Да, он был восстановлен, но находится в неактивном состоянии.

Чтобы активировать логический том, выполните команду:

# lvchange -a y /dev/vg01/lv001

Наконец, смонтируйте логический том и проверьте данные:

# mount /dev/mapper/vg01-lv001 /lvmtest

Да, я могу увидеть все наши данные:

# ls -lh /lvmtest

Заключение

В этом руководстве мы показали вам, как восстановить случайно удаленный логический том в Linux с помощью команды vgcfgrestore.

Если у вас возникли вопросы или пожелания, не стесняйтесь оставлять комментарии.

Поделитесь статьей:

Добавить комментарий