В этой статье содержится руководство по восстановлению отсутствующего тома и данных на нем при использовании LVM (Logical Volume Manager).
Сценарий
Метаданные LVM системы Linux повреждены, и диски или разделы не отображаются при выполнении PVdisplay
, LVdisplay
или VGdisplay
.
Восстановление недостающего объема
- LVM всегда будет делать резервную копию своих метаданных в
/etc/lvm/backup/<vg_name>
(VG ~ Volume Group) после модификации. Убедитесь, что этот файл присутствует и содержит все тома и их размеры:
logical_volumes {
root {
id = "j5rlvk-cGYE-fxbN-F8bO-p90r-x0FL-suSAUN"
status = ["READ", "WRITE", "VISIBLE"]
flags = []
creation_host = "unassigned-hostname"
creation_time = 1475126039 # 2020-05-03 10:42:51 +0530
segment_count = 2
segment1 {
start_extent = 0
extent_count = 6425 # 25.0977 Gigabytes
type = "striped"
stripe_count = 1 # linear
stripes = [
"pv0", 0
]
}
segment2 {
start_extent = 6425
extent_count = 15360 # 60 Gigabytes
type = "striped"
stripe_count = 1 # linear
stripes = [
"pv1", 0
]
}
}
}
- После краткой проверки всех настроек сохраните резервную копию этого файла:
cat /etc/lvm/backup/<vg_name> > /path/to/lvm_backup_file
- Теперь перезагрузите сервер в Rescue System .
- После входа в Rescue System, пожалуйста, выберите
mount
раздел, содержащийlvm_backup_file
, скопируйте его в файловую систему Rescue System, а затемumount
в раздел:
mount /dev/<partition> /mnt
cp /mnt/path/to/lvm_backup_file lvm_backup_file
umount /mnt
- Убедитесь, что ни один из разделов больше не смонтирован:
lsblk
- Выведите содержимое
lvm_backup_file
использованияcat
и скопируйте UUID (универсальный уникальный идентификатор) относительно
- После этого используйте команду ниже, чтобы создать физический том (PV):
pvcreate –restorefile lvm_backup_file –uuid <uuid> <partition>
pvcreate –restorefile lvm_backup_file –uuid ek9MZu-UeBK-4boe-IkJU-Q4n7-yfpX-yLK1WY /dev/sda1
- Проверьте, создан ли физический том:
pvs
- Затем восстановите группу томов (VG), используя следующую команду:
vgcfgrestore –force <vg_name>
- Пример:
vgcfgrestore –force vg0
- Синхронизируйте данные группы томов:
vgscan
- Теперь проверьте, правильно ли была восстановлена группа томов:
vgs
- Далее восстанавливаем LVM:
vgchange -ay <vg_name>
Пример:
vgchange -ay vg0
- Наконец, перезапустите сервер и позвольте ему загрузиться в установленную систему. Пожалуйста, убедитесь, что данные не повреждены. Если проблемы по-прежнему возникают, попробуйте выполнить проверку файловой системы .