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

Как исправить ошибку - не удается прочитать суперблок - после использования команды lvreduce (CENTOS7 XFS)

Я пытался перераспределить неиспользуемое дисковое пространство (1,2 ТБ) из /dev/mapper/centos-home к /dev/centos/root используя шаги в Как переместить дисковое пространство из centos-home в centos-root.

После бега ...

$ umount /dev/mapper/centos-home
$ lvreduce -L 1200G /dev/mapper/centos-home

Я получаю сообщение об ошибке «не могу прочитать суперблок», когда пытаюсь перемонтировать диск.

$ mount /dev/mapper/centos-home
mount: /dev/mapper/centos-home: can't read superblock

Перед запуском я дважды проверил, достаточно ли свободного (физического пространства) перед запуском команды lvreduce (было 2 ТБ свободного места), но предположим, что моя ошибка не заключалась в выполнении команды для предварительного сжатия файловой системы, как предложено в Раздел логического тома LVM поврежден после lvreduce, но также прочитайте, что это невозможно сделать в системах XFS, поскольку не удалось найти особенности.

Я пытался восстановить, используя,

$ xfs_repair /dev/mapper/centos-home 

но результат сказал

Sorry, could not find valid secondary superblock; Exiting now.

Еще пробовал восстановить размер LV

$ lvextend -L 1200G /dev/mapper/centos-home

в результате

New size (307200 extents) matches existing size (307200 extents)

но получил то же самое superblock read ошибка при попытке $ mount привод.

Я не уверен, насколько глубоко я вырыл для себя на данный момент, так что вот мой вопрос.

Как лучше всего оправиться от этого? Или, если я не могу восстановить и смонтировать поврежденный диск, мне просто удалить его и создать новый с тем же именем? И возможно ли это вообще, т.е. мне нужно переустанавливать CentOS? Я не создавал резервную копию этого диска, так как не использовал его. Я использовал инструмент резервного копирования PLESK, поэтому мог восстановить таким образом, но предполагаю, что это работает только на /dev/centos/root диск так не применим здесь?

У меня есть 4 физических диска, настроенных как RAID5. Остальные диски и приложения работают нормально (PLESK продолжает работать. /dev/centos/root) и я не хочу их портить.

Я также хотел бы выполнить первоначальную задачу по выращиванию /dev/centos/root.

Вот где сейчас дела ....

$ pvscan
  PV /dev/sda3   VG centos          lvm2 [2.04 TiB / 838.63 GiB free]
  Total: 1 [2.04 TiB] / in use: 1 [2.04 TiB] / in no VG: 0 [0   ]

$ vgscan
  Reading volume groups from cache.
  Found volume group "centos" using metadata type lvm2

$ lvscan
  ACTIVE            '/dev/centos/swap' [4.00 GiB] inherit
  ACTIVE            '/dev/centos/home' [1.17 TiB] inherit
  ACTIVE            '/dev/centos/root' [50.00 GiB] inherit


$ pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda3
  VG Name               centos
  PV Size               2.04 TiB / not usable 0
  Allocatable           yes
  PE Size               4.00 MiB
  Total PE              535714
  Free PE               214690
  Allocated PE          321024
  PV UUID               qISA9P-0jFe-gk9I-5uuL-OODW-N3af-OkfJlB

$ vgdisplay
  --- Volume group ---
  VG Name               centos
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  6
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                3
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               2.04 TiB
  PE Size               4.00 MiB
  Total PE              535714
  Alloc PE / Size       321024 / 1.22 TiB
  Free  PE / Size       214690 / 838.63 GiB
  VG UUID               zzLRUZ-96Vd-5NGr-YsCl-PJ0l-O8Sy-07Dbqu


$ lvdisplay
  --- Logical volume ---
  LV Path                /dev/centos/swap
  LV Name                swap
  VG Name                centos
  LV UUID                Dxqf6A-Jtyp-Qdhx-1C0u-CS40-L95c-qF4tRU
  LV Write Access        read/write
  LV Creation host, time localhost.localdomain, 2016-12-20 09:00:45 -0500
  LV Status              available
  # open                 2
  LV Size                4.00 GiB
  Current LE             1024
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:1

  --- Logical volume ---
  LV Path                /dev/centos/home
  LV Name                home
  VG Name                centos
  LV UUID                9QYG2p-0Srl-AluZ-qsBE-wCQ4-BXyN-0hmTp3
  LV Write Access        read/write
  LV Creation host, time localhost.localdomain, 2016-12-20 09:00:46 -0500
  LV Status              available
  # open                 0
  LV Size                1.17 TiB
  Current LE             307200
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:2

  --- Logical volume ---
  LV Path                /dev/centos/root
  LV Name                root
  VG Name                centos
  LV UUID                WrqVSs-EkZI-WD7W-AfsL-2PFX-iZLy-8TPjZr
  LV Write Access        read/write
  LV Creation host, time localhost.localdomain, 2016-12-20 09:01:40 -0500
  LV Status              available
  # open                 1
  LV Size                50.00 GiB
  Current LE             12800
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:0

SmallLoanOF1M, спасибо за предложение. Потому что в моем случае мне не нужно было восстанавливать данные на /home логический том (я понимаю, что для большинства это исключение), я выполнил инструкции Вот и просто удалил его с помощью lvremove команда.

$ lvremove -v /dev/centos/home

Что вернуло оставшееся свободное пространство группе томов.

Затем я использовал lvextend продлить /root lv

$ lvextend -L +900G /dev/centos/root

И

$ xfs_growfs /dev/centos/root

Чтобы расширить файловую систему в увеличенном LV. В следующий раз, когда я установлю centos7 для приложения plesk, я обязательно выделю более 50 ГБ для /root, что является настройкой по умолчанию.

xfs_repair / dev / mapper / centos-home -L

эта команда устранит проблему

Если вас не волнуют ваши данные в / home, сделайте следующее:

mkfs.xfs -f / dev / mapper / cl-home монтирование / dev / mapper / cl-home / home /