Назад | Перейти на главную страницу

LVM2 vgreduce неизвестный физический том из корневого логического тома CentOS8

У меня в CentOS8 есть съемный диск, но я не могу уменьшить группу томов:

[root@localhost ~]# vgs
  WARNING: Couldn't find device with uuid 3GDhRA-KZjA-iDum-8Ut0-s9s0-NnW2-4QQEUv.
  WARNING: VG cl is missing PV 3GDhRA-KZjA-iDum-8Ut0-s9s0-NnW2-4QQEUv.
  WARNING: Couldn't find all devices for LV cl/root while checking used and assumed devices.
  VG #PV #LV #SN Attr   VSize VFree
  cl   2   3   0 wz-pn- 8,99g    0
[root@localhost ~]# pvs
  WARNING: Couldn't find device with uuid 3GDhRA-KZjA-iDum-8Ut0-s9s0-NnW2-4QQEUv.
  WARNING: VG cl is missing PV 3GDhRA-KZjA-iDum-8Ut0-s9s0-NnW2-4QQEUv.
  WARNING: Couldn't find all devices for LV cl/root while checking used and assumed devices.
  PV         VG Fmt  Attr PSize  PFree
  /dev/sda2  cl lvm2 a--  <7,00g    0
  [unknown]  cl lvm2 a-m  <2,00g    0
[root@localhost ~]# lvs
  WARNING: Couldn't find device with uuid 3GDhRA-KZjA-iDum-8Ut0-s9s0-NnW2-4QQEUv.
  WARNING: VG cl is missing PV 3GDhRA-KZjA-iDum-8Ut0-s9s0-NnW2-4QQEUv.
  WARNING: Couldn't find all devices for LV cl/root while checking used and assumed devices.
  LV   VG Attr       LSize    Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  home cl -wi-ao---- 1016,00m
  root cl -wi-ao--p-   <7,20g
  swap cl -wi-ao----  820,00m

[root@localhost ~]# vgreduce --removemissing --force cl
  WARNING: Couldn't find device with uuid 3GDhRA-KZjA-iDum-8Ut0-s9s0-NnW2-4QQEUv.
  WARNING: VG cl is missing PV 3GDhRA-KZjA-iDum-8Ut0-s9s0-NnW2-4QQEUv.
  WARNING: Couldn't find all devices for LV cl/root while checking used and assumed devices.
  WARNING: Couldn't find device with uuid 3GDhRA-KZjA-iDum-8Ut0-s9s0-NnW2-4QQEUv.
  WARNING: Removing partial LV cl/root.
  Logical volume cl/root contains a filesystem in use.

Я нашел команду lvextend в своей истории bash:

lvm lvextend -l +100%FREE /dev/cl/root

Наконец я нашел решение:

  1. Сделайте резервную копию хорошего файла .vg в / etc / lvm / archive (где только 1 PV, без неизвестного PV)
  2. Загрузите live cd
  3. Скопируйте .vg
  4. vgreduce cl --removemissing --force (удалить / cl / root успешно)
  5. vgcfgrestore -f backedup.vg cl

Спасибо, Джон!

Отсутствующий PV есть, но поврежден. Думаю, это из-за неправильного порядка команд. Сначала добавили PV (/ dev / sdb), расширили VG и LV, после создания раздела с помощью fdisk.

Я воспроизвел проблему в виртуальном боксе и добавил диск (такого же размера). Pvcreate нормально, но vgextend не удалось:

[root@localhost ~]# vgextend cl -v /dev/sdc
  WARNING: Couldn't find device with uuid 3GDhRA-KZjA-iDum-8Ut0-s9s0-NnW2-4QQEUv.
  WARNING: VG cl is missing PV 3GDhRA-KZjA-iDum-8Ut0-s9s0-NnW2-4QQEUv.
  WARNING: Couldn't find all devices for LV cl/root while checking used and assumed devices.
  Wiping signatures on new PV /dev/sdc.
  WARNING: Couldn't find device with uuid 3GDhRA-KZjA-iDum-8Ut0-s9s0-NnW2-4QQEUv.
  WARNING: VG cl is missing PV 3GDhRA-KZjA-iDum-8Ut0-s9s0-NnW2-4QQEUv.
  WARNING: Couldn't find all devices for LV cl/root while checking used and assumed devices.
  WARNING: Couldn't find device with uuid 3GDhRA-KZjA-iDum-8Ut0-s9s0-NnW2-4QQEUv.
  There are 1 physical volumes missing.
  Archiving volume group "cl" metadata (seqno 6).
  Segmentation fault (core dumped)

Есть еще советы? Магия Live CD или смена UUID?

cl / root охватывает оба PV; вам потребуются оба диска, чтобы том можно было использовать. Предположительно cl / root смонтирован в /. Вы не можете уменьшить этот LV, и его нельзя размонтировать, поскольку он содержит большую часть вашей системы.

Я предполагаю, что файловая система уже была расширена и является XFS, поэтому ее нельзя уменьшить.


Сделайте резервную копию любых данных, которые хотите сохранить.

Если возможно, прикрепите недостающий PV. Добавьте еще один PV размером не менее недостающего с vgextend. Переместите экстенты с плохого диска с помощью pvmove. Пустые PV не нужно форсировать: vgreduce --removemissing cl

Если это не помогло, перестройте. Создайте новую группу VG и восстановите данные. Поскольку это был корень, переустановите новый экземпляр ОС.


Рассмотрите возможность создания LV данных отдельно от ОС. Дает возможность размонтировать и удалить частичные LV в будущем. И делает возможным несколько полезных вещей, которые LVM может делать с LV.