Вопрос или проблема
ОС: CentOS6.8
Изначально диск был /dev/vdc
, с которым была создана группа томов vg0
. Затем этот диск был удален из группы томов с помощью vgreduce /dev/vdc vg0
, что сделало метаданные LVM неконсистентными, показывая PV с UUID не найден. Также был создан новый раздел /dev/vdc1
.
Чтобы восстановить метаданные LVM, я выполнил следующую команду:
pvcreate --uuid "40sFOW-dBUz-Jb0l-K8ig-puvo-2qIA-xPfLIP" --restorefile /etc/lvm/archive/vg0_00003-615784639.vg /dev/vdc1
Изменил имя устройства с /dev/vdc
на /dev/vdc1
в файле vg0_00003-615784639.vg
и выполнил вышеуказанную команду:
[root@testpaul ~]# ls -lt /etc/lvm/archive/vg0_00003-615784639.vg /etc/lvm/archive/vg0_00002-1466532506.vg
-rw------- 1 root root 1567 May 20 10:24 /etc/lvm/archive/vg0_00003-615784639.vg
-rw------- 1 root root 1324 May 20 10:13 /etc/lvm/archive/vg0_00002-1466532506.vg
[root@testpaul ~]#
[root@testpaul ~]#
[root@testpaul ~]# grep -i device /etc/lvm/archive/{vg0_00003-615784639.vg,vg0_00002-1466532506.vg}
/etc/lvm/archive/vg0_00003-615784639.vg: device = "/dev/vdc1" # Only Hint
/etc/lvm/archive/vg0_00003-615784639.vg: device = "/dev/vdd1" # Only Hint
/etc/lvm/archive/vg0_00002-1466532506.vg: device = "/dev/vdc" # Only Hint
[root@testpaul ~]#
Как я могу исправить ошибку ниже в команде pvs
:
[root@testpaul ~]# pvs
Устройство /dev/vdc1 имеет размер 20971377 секторов, что меньше, чем соответствует размеру PV в 20971520 секторов. Было ли устройство изменено в размере?
Одно или несколько устройств, использующихся как PV в VG vg0, изменили размеры.
PV VG Fmt Attr PSize PFree
/dev/vdc1 vg0 lvm2 a--u 10.00g 1020.00m
/dev/vdd1 vg0 lvm2 a--u 10.00g 10.00g
[root@testpaul ~]#
Я снизил размер PV, уменьшив на 1MB.
[root@testpaul ~]# pvresize --setphysicalvolumesize 10239M /dev/vdc1
Устройство /dev/vdc1 имеет размер 20971377 секторов, что меньше, чем соответствует размеру PV в 20971520 секторов. Было ли устройство изменено в размере?.....
Физический том "/dev/vdc1" изменен
1 физический том(а) изменён в размере / 0 физический том(а) не изменён
[root@testpaul ~]# vgcfgrestore vg0
Группа томов vg0 восстановлена
[root@testpaul ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/vdc1 vg0 lvm2 a--u 10.00g 1020.00m
/dev/vdd1 vg0 lvm2 a--u 10.00g 10.00g
Ответ или решение
Вопрос о корректировке ошибки "Sectors which is smaller than corresponding PV size error" в контексте работы с LVM (Logical Volume Manager) на CentOS6.8 требует детального объяснения. Этот ответ будет структурирован в соответствии с формулой TEA (Теория, Пример, Применение), чтобы создать ясное и профессиональное понимание вопроса.
Теория (Theory)
Проблема, с которой вы столкнулись, связана с несоответствием размеров физического тома (PV) и фактического размера устройства на уровне секторов. Logical Volume Manager (LVM) — это система управления томами, которая позволяет пользователям более гибко управлять местом на дисках в Unix-подобных операционных системах. Он позволяет абстрагировать физические диски в виртуальные тома, что упрощает управление дисковым пространством.
Когда устройство физического тома (PV) изменяет свой размер, LVM может не автоматически отразить это изменение, что приводит к ошибке "Device /dev/vdc1 has size of 20971377 sectors which is smaller than corresponding PV size of 20971520 sectors". Это означает, что фактически доступное пространство меньше, чем указанное в LVM. Такое может произойти, если диск был удален или изменен на уровне операционной системы, но изменения не были корректно отражены в конфигурации LVM.
Пример (Example)
Представим, что у вас есть физический том, который изначально использовался для хранения данных для группы томов vg0. Вы удалили /dev/vdc из группы томов, а затем создали новый раздел /dev/vdc1. При восстановлении метаданных LVM произошла рассинхронизация между фактическим размером устройства и параметрами в конфигурации LVM.
В данном контексте воспроизведен следующий процесс:
-
Создание физического тома с командой pvcreate: При использовании —restorefile была попытка восстановить старую конфигурацию.
-
Изменение имени устройства: Имя устройства было обновлено в конфигурационном файле архива, чтобы соответствовать новому устройству /dev/vdc1.
-
Проблема несоответствия размеров: После выполнения команд вы обнаружили, что новый физический том /dev/vdc1 не соответствует указанному размеру в конфигурации LVM.
Применение (Application)
Для решения проблемы необходимо выполнить следующие шаги:
-
Проверьте фактический размер устройства: Используйте команду
fdisk -l
илиlsblk
для определения фактического размера в секторах вашего устройства /dev/vdc1. Убедитесь, что это значение соответствует тому, что ожидает LVM. -
Измените размер физического тома с помощью pvresize: Используйте
pvresize
для того, чтобы изменить размер физического тома, чтобы он соответствовал фактическому размеру устройства:pvresize --setphysicalvolumesize 20971377s /dev/vdc1
-
Восстановите группу томов: После изменения размера физического тома, вы можете использовать
vgcfgrestore
для восстановления конфигурации группы томов:vgcfgrestore vg0
-
Проверка изменений: Завершите процесс, проверив текущее состояние физического тома и группы томов с помощью команд
pvs
иvgs
. Убедитесь, что размеры совпадают.
Заключение
Изменение размеров физического тома и восстановление конфигурации LVM требует осторожности и тщательного планирования. Важно всегда делать резервные копии метаданных LVM перед внесением изменений. Подобные манипуляции могут привести к потере данных, если они выполняются без должного внимания к деталям. Придерживаясь предложенного процесса, вы сможете устранить данную ошибку и достичь консистентности в вашей конфигурации LVM.