resize2fs: неправильное магическое число в суперблоке при попытке открыть

Я пытаюсь изменить размер логического тома в CentOS7, но сталкиваюсь со следующей ошибкой:

resize2fs 1.42.9 (28-Dec-2013)
resize2fs: Bad magic number in super-block while trying to open /dev/mapper/centos-root
Couldn't find valid filesystem superblock.

Я попытался добавить новый раздел (с помощью fdisk) и использовать vgextend для расширения группы томов, а затем изменить размер. Изменение размера логического тома с помощью lvextend работало нормально, но при изменении размера2fs оно не работало.

Я также попытался удалить существующий раздел (с помощью fdisk) и воссоздать его с большим конечным блоком, затем изменить размер физического тома с помощью lvm pvresize, а затем изменить размер логического тома с помощью lvm lvresize. Опять же, до этого момента все работало нормально.

Как только я попытался использовать resize2fs, используя оба метода, как указано выше, я получил ту же самую ошибку.

Надеюсь, что-то из следующего прольет свет.

fdisk -l

[root@server~]# fdisk -l

Disk /dev/xvda: 32.2 GB, 32212254720 bytes, 62914560 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x0009323a

Device Boot      Start         End      Blocks   Id  System
/dev/xvda1   *        2048     1026047      512000   83  Linux
/dev/xvda2         1026048    41943039    20458496   8e  Linux LVM
/dev/xvda3        41943040    62914559    10485760   8e  Linux LVM

Disk /dev/mapper/centos-swap: 2147 MB, 2147483648 bytes, 4194304 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mapper/centos-root: 29.5 GB, 29532094464 bytes, 57679872 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

pvdisplay

[root@server ~]# pvdisplay
--- Physical volume ---
PV Name               /dev/xvda2
VG Name               centos
PV Size               19.51 GiB / not usable 2.00 MiB
Allocatable           yes (but full)
PE Size               4.00 MiB
Total PE              4994
Free PE               0
Allocated PE          4994
PV UUID               7bJOPh-OUK0-dGAs-2yqL-CAsV-TZeL-HfYzCt

--- Physical volume ---
PV Name               /dev/xvda3
VG Name               centos
PV Size               10.00 GiB / not usable 4.00 MiB
Allocatable           yes (but full)
PE Size               4.00 MiB
Total PE              2559
Free PE               0
Allocated PE          2559
PV UUID               p0IClg-5mrh-5WlL-eJ1v-t6Tm-flVJ-gsJOK6

vgdisplay

[root@server ~]# vgdisplay
--- Volume group ---
VG Name               centos
System ID
Format                lvm2
Metadata Areas        2
Metadata Sequence No  6
VG Access             read/write
VG Status             resizable
MAX LV                0
Cur LV                2
Open LV               2
Max PV                0
Cur PV                2
Act PV                2
VG Size               29.50 GiB
PE Size               4.00 MiB
Total PE              7553
Alloc PE / Size       7553 / 29.50 GiB
Free  PE / Size       0 / 0
VG UUID               FD7k1M-koJt-2veW-sizL-Srsq-Y6zt-GcCfz6

lvdisplay

[root@server ~]# lvdisplay
--- Logical volume ---
LV Path                /dev/centos/swap
LV Name                swap
VG Name                centos
LV UUID                KyokrR-NGsp-6jVA-P92S-QE3X-hvdp-WAeACd
LV Write Access        read/write
LV Creation host, time localhost, 2014-10-09 08:28:42 +0100
LV Status              available
# open                 2
LV Size                2.00 GiB
Current LE             512
Segments               1
Allocation             inherit
Read ahead sectors     auto
- currently set to     8192
Block device           253:0

--- Logical volume ---
LV Path                /dev/centos/root
LV Name                root
VG Name                centos
LV UUID                ugCOcT-sTDK-M8EV-3InM-hjIg-2nwS-KeAOnq
LV Write Access        read/write
LV Creation host, time localhost, 2014-10-09 08:28:42 +0100
LV Status              available
# open                 1
LV Size                27.50 GiB
Current LE             7041
Segments               2
Allocation             inherit
Read ahead sectors     auto
- currently set to     8192
Block device           253:1

Я, вероятно, сделал что-то глупое, поэтому любая помощь будет принята с благодарностью!


person ChrisKnowles    schedule 10.10.2014    source источник
comment
возможный дубликат Попытка изменить размер тома EB resize2fs не удалась   -  person fvrghl    schedule 11.10.2014
comment
Получите расположение резервного суперблока: newfs -N /dev/device-name & Восстановление неисправного суперблока с помощью FSCK: fsck -F ufs -o b=<Superblock_stored_location> /dev/device-name Источник: docs.oracle.com/cd/E19455-01/805-7228/6j6q7uf0i/index.html   -  person Skanda Shastry    schedule 07.03.2021


Ответы (10)


После проб и ошибок... как упоминалось в возможных ответах, оказалось, что требуется xfs_growfs, а не resize2fs.

ЦенОС 7,

fdisk /dev/xvda

Создайте новый основной раздел, установите тип linux lvm.

n
p
3
t
8e
w

Создайте новый основной том и расширьте группу томов до нового тома.

partprobe
pvcreate /dev/xvda3
vgextend /dev/centos /dev/xvda3

Проверьте физический том на наличие свободного места, расширьте логический том на свободное место.

vgdisplay -v
lvextend -l+288 /dev/centos/root

Наконец, выполните онлайн-изменение размера логического тома, а затем проверьте доступное пространство.

xfs_growfs /dev/centos/root
df -h
person ChrisKnowles    schedule 11.10.2014
comment
Работает и для RHEL 7. Спасибо! - person Richard Corfield; 13.01.2016
comment
Как уменьшить один раздел и добавить сжатое пространство в другой раздел? xfs_growfs кажется, не работает для этого. - person GoingMyWay; 21.04.2016
comment
ты легенда, ты так много для этого руководства, не знал, что ubuntu/centos использует другой метод изменения размера - person Shuliyey; 07.02.2017
comment
Здесь вы можете найти дополнительную информацию: tecmint.com/extend-and- уменьшить-lvms-в-линукс - person Lihai; 13.07.2017
comment
Я понимаю, что нам не нужно явно использовать pvcreate перед командой vgextend. При использовании vgextend он автоматически создает pv. - person edib; 27.08.2017
comment
это работа на Centos 7 при установке directadmin. - person ALi Nezamifar; 21.11.2017
comment
Следует отметить, что файловая система отображается в /etc/fstab. Вот почему он решил использовать xfs_growfs, а не resize2fs. - person mirzmaster; 20.07.2018
comment
xfs_growfs для файловой системы XFS. Если кто-то установит CentOS с другой файловой системой (ext4), xfs_growfs не удастся. Используйте fsadm, который обрабатывает xfs, ext4 и несколько файловых систем. - person karatedog; 25.10.2019
comment
Этот ответ в основном правильный, но xfs_growfs ожидает ТОЧКУ МОНТАЖА, а не УСТРОЙСТВО! Таким образом, xfs_growfs /dev/centos/root неверен, это будет xfs_growfs /wherever/you/mounted/it. Мне потребовалось некоторое время, чтобы понять: linux.die.net/man/8/xfs_growfs По крайней мере, в Fedora 31 у меня не работало указание DEVICE. - person foddex; 15.04.2020

В Centos 7 файловой системой по умолчанию является xfs.

Файловая система xfs поддерживает только расширение, но не уменьшение. Поэтому, если вы хотите изменить размер файловой системы, используйте xfs_growfs, а не resize2fs.

xfs_growfs /dev/root_vg/root 

Примечание. Для использования файловой системы ext4

resize2fs /dev/root_vg/root
person Rakib    schedule 23.10.2016
comment
Тип файловой системы можно узнать с помощью mount | column -t (среди многих других способов). - person harperville; 13.03.2019
comment
Вам нужно указать точку монтирования, а не блокировать устройство. xfs_growfs version 5.1.0, Федора 31, Usage: xfs_growfs [options] mountpoint - person Alois Mahdal; 21.03.2020

Я столкнулся с той же самой проблемой сегодня около полудня и, наконец, нашел решение здесь --> to resize2fs том EB завершается ошибкой

Я пропустил монтирование, так как раздел уже был смонтирован.

По-видимому, CentOS 7 использует XFS в качестве файловой системы по умолчанию, и в результате resize2fs произойдет сбой.

Я заглянул в /etc/fstab, и знаете что, XFS смотрел мне прямо в лицо... Надеюсь, это поможет.

person Tony Wiseman    schedule 10.10.2014
comment
Я запустил lvextend --resize, который изменяет размер для вас в Centos 7. Это, похоже, решило проблему. - person technocrat; 29.09.2015
comment
Страница руководства lvextend говорит, что использует fsadm для изменения размера файловой системы. Итак, я попробовал fsadm resize /dev/centos/root, и это сработало. - person Fatih; 17.11.2016
comment
Технически это не совсем ответ, и информация по этому URL-адресу мне не подошла. Лучше всего ответить на вопрос здесь, где мы можем его обсудить, и добавить ссылки на вспомогательную документацию, если вы считаете, что это полезно. - person PJ Brunet; 05.12.2016

Команда resize2fs не будет работать для всех файловых систем.

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

Пожалуйста, следуйте процедуре расширения тома, выполнив шаги, указанные в официальном документе Amazon для разных файловых систем.

https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/recognize-expanded-volume-linux.html

Файловая система по умолчанию в Centos — xfs, используйте следующую команду для файловой системы xfs, чтобы увеличить размер раздела.

sudo xfs_growfs -d /

затем "df -h" для проверки.

person Shahid Hussain    schedule 05.07.2019

В Centos и Fedora работа с fsadm

fsadm resize /dev/vg_name/root
person dinobi    schedule 30.03.2020

CentOS7 + виртуальная машина

Я сделал это с помощью:

  1. Gparted-live увеличить громкость
  2. pvresize -v /dev/sda2
  3. lvresize -r -l+100%FREE centos/root
person Oli    schedule 13.02.2015

В Centos 7 в ответ на исходный вопрос, где resize2fs не работает с «плохим магическим числом», попробуйте использовать fsadm следующим образом:

fsadm resize /dev/the-device-name-returned-by-df

Затем:

df 

... чтобы подтвердить, что изменения размера сработали.

person PGP    schedule 19.01.2017
comment
У меня тоже работало на виртуальной машине CentOS с измененным размером разделов LVM. - person Alexandre Germain; 15.11.2019

Прочитав о LVM и ознакомившись с PV -> VG -> LV, у меня это работает:

0) #df -h

Filesystem               Size  Used Avail Use% Mounted on
devtmpfs                 1.9G     0  1.9G   0% /dev
tmpfs                    1.9G     0  1.9G   0% /dev/shm
tmpfs                    1.9G  824K  1.9G   1% /run
tmpfs                    1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/mapper/fedora-root   15G  2.1G   13G  14% /
tmpfs                    1.9G     0  1.9G   0% /tmp
/dev/md126p1             976M  119M  790M  14% /boot
tmpfs                    388M     0  388M   0% /run/user/0

1) # вгс

  VG     #PV #LV #SN Attr   VSize   VFree   
  fedora   1   2   0 wz--n- 231.88g 212.96g

2) #vgdisplay

  --- Volume group ---
  VG Name               fedora
  System ID
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               231.88 GiB
  PE Size               4.00 MiB
  Total PE              59361
  Alloc PE / Size       4844 / 18.92 GiB
  Free  PE / Size       54517 / 212.96 GiB
  VG UUID               9htamV-DveQ-Jiht-Yfth-OZp7-XUDC-tWh5Lv

3) # lvextend -l +100% БЕСПЛАТНО /dev/mapper/fedora-root

  Size of logical volume fedora/root changed from 15.00 GiB (3840 extents) to 227.96 GiB (58357 extents).
  Logical volume fedora/root successfully resized.

4) #lvdisplay

5) #fd -h

6) # xfs_growfs /dev/mapper/fedora-root

meta-data=/dev/mapper/fedora-root isize=512    agcount=4, agsize=983040 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1 spinodes=0 rmapbt=0
         =                       reflink=0
data     =                       bsize=4096   blocks=3932160, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 3932160 to 59757568

7) #df -h

Filesystem               Size  Used Avail Use% Mounted on
devtmpfs                 1.9G     0  1.9G   0% /dev
tmpfs                    1.9G     0  1.9G   0% /dev/shm
tmpfs                    1.9G  828K  1.9G   1% /run
tmpfs                    1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/mapper/fedora-root  228G  2.3G  226G   2% /
tmpfs                    1.9G     0  1.9G   0% /tmp
/dev/md126p1             976M  119M  790M  14% /boot
tmpfs                    388M     0  388M   0% /run/user/0

Наилучшие пожелания,

person 200313    schedule 08.03.2018

ОС: rhel7

После gparted # xfs_growfs /dev/mapper/rhel-root сделал свое дело на живой системе.

$ df -h
Filesystem             Size  Used Avail Use% Mounted on
/dev/mapper/rhel-root   47G   47G   20M 100% /
devtmpfs               1.9G     0  1.9G   0% /dev
tmpfs                  1.9G     0  1.9G   0% /dev/shm
tmpfs                  1.9G  9.3M  1.9G   1% /run
tmpfs                  1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/sda1             1014M  205M  810M  21% /boot
tmpfs                  379M  8.0K  379M   1% /run/user/42
tmpfs                  379M     0  379M   0% /run/user/1000


# lvresize -l +100%FREE /dev/mapper/rhel-root
  Size of logical volume rhel/root changed from <47.00 GiB (12031 extents) to <77.00 GiB (19711 extents).
  Logical volume rhel/root successfully resized.


# xfs_growfs /dev/mapper/rhel-root
meta-data=/dev/mapper/rhel-root  isize=512    agcount=7, agsize=1900032 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=12319744, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=3711, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 12319744 to 20184064


# df -h
Filesystem             Size  Used Avail Use% Mounted on
/dev/mapper/rhel-root   77G   47G   31G  62% /
devtmpfs               1.9G     0  1.9G   0% /dev
tmpfs                  1.9G     0  1.9G   0% /dev/shm
tmpfs                  1.9G  9.3M  1.9G   1% /run
tmpfs                  1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/sda1             1014M  205M  810M  21% /boot
tmpfs                  379M  8.0K  379M   1% /run/user/42
tmpfs                  379M     0  379M   0% /run/user/1000
person caot    schedule 20.12.2019

Чтобы изменить размер существующего смонтированного тома

sudo mount -t xfs /dev/sdf /opt/data/

mount: /opt/data: /dev/nvme1n1 уже смонтирован в /opt/data.

sudo xfs_growfs /opt/data/

person Kiruthika kanagarajan    schedule 25.02.2021