Я сталкиваюсь с проблемой, когда пытаюсь сжать один логический том. Я предпринял действия, как показано ниже:
# unmount /home
# lvreduce --size -100G /dev/vg_dev/lv_home
# lvdisplay /dev/vg_dev/lv_home
--- Logical volume ---
LV Path /dev/vg_dev/lv_home
LV Name lv_home
VG Name vg_dev
LV UUID QOxrP3-nS36-nZTG-yL7e-sDi0-Wl9z-LXp4pJ
LV Write Access read/write
LV Creation host, time ,
LV Status available
# open 1
LV Size 197.98 GiB
Current LE 50683
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:4
# e2fsck -f /dev/vg_dev/lv_home
e2fsck 1.41.12 (17-May-2010)
The filesystem size (according to the superblock) is 78113792 blocks
The physical size of the device is 51899392 blocks
Either the superblock or the partition table is likely to be corrupt!
Abort<y>?
# resize2fs /dev/vg_dev/lv_home
resize2fs 1.41.12 (17-May-2010)
Please run 'e2fsck -f /dev/vg_dev/lv_home' first.
Я вообще не могу смонтировать логический том, может ли кто-нибудь помочь мне решить эту проблему?
Похоже, вы пытались изменить размер тома и файловой системы в неправильном порядке.
когда сокращение, вы должны выполнять действия в таком порядке
когда растущий, вы должны выполнять действия в таком порядке
Первым делом я бы клонировал весь диск, используя dd
на запасной диск и работайте над этим для восстановления.
Если вам повезло, и вы не использовали ни один из доступных экстентов LV и, таким образом, блоки на диске не изменились, вы можете изменить размер LV до того, что было раньше, а затем попробуйте fsck
в файловой системе. Если fsck
проходит, вы можете изменить размер файловой системы.
Если вы по-прежнему получаете сообщение об ошибке fsck
вы могли нанести непоправимый ущерб.
lvresize
теперь поддерживает изменение размера файловой системы при передаче дополнительного аргумента -r|--resizefs
что снижает необходимость изменения размера в определенном порядке и резко снижает вероятность ошибки.
Я изменил размер логического диска, /dev/mapper
и я получил ошибку:
Возможно, поврежден суперблок или таблица разделов!
Решение заключалось в том, чтобы сделать этот порядок с поврежденным разделом:
[root@localhost]# mke2fs /dev/mapper/VolGroup-lv_home && fsck /dev/mapper/VolGroup-lv_home
и это все.
источник: Размер суперблока отличается от физического размера раздела
Одно из возможных решений - расширить файловую систему на 100 ГБ, но при этом возможна потеря данных. Сделайте резервную копию желаемой файловой системы.
# lvextend -L +100G /dev/vg_dev/lv_home
# resize2fs /dev/vg_dev/lv_home
Затем вы можете смонтировать файловую систему.
Надеюсь, это решит вашу проблему.
Очевидно, поврежден только суперблок файловой системы. Чтобы решить эту проблему, выполните следующие команды, если это файловая система ext2 / 3:
mke2fs -S / dev / XXX && fsck / dev / XXX
/ dev / XXX необходимо заменить на соответствующее устройство. Для других ФС предполагается использование соответствующих команд mkfs. С опцией «-S» будут повторно инициализированы только суперблок и дескрипторы группы. Команда "fsck" сразу после первой запускается, чтобы исправить / настроить дескрипторы группы.