resize2fs: número mágico ruim no superbloco ao tentar abrir


151

Estou tentando redimensionar um volume lógico no CentOS7, mas estou executando o seguinte erro:

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.

Tentei adicionar uma nova partição (usando o fdisk) e usando o vgextend para estender o grupo de volumes e redimensionar. O redimensionamento funcionou bem para o volume lógico usando lvextend, mas falhou em resize2fs.

Também tentei excluir uma partição existente (usando o fdisk) e recriá-la com um bloco final maior, depois redimensionando o volume físico usando lvm pvresize, seguido de um redimensionamento do volume lógico usando lvm lvresize. Mais uma vez, tudo funcionou bem até este ponto.

Depois que tentei usar o resize2fs, usando os dois métodos acima, recebi exatamente o mesmo erro.

Espero que alguns dos itens a seguir mostrem alguma luz.

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

Eu provavelmente fiz algo estúpido, então qualquer ajuda seria muito apreciada!


Respostas:


294

Após um pouco de tentativa e erro ... como mencionado nas respostas possíveis, descobriu-se a exigir xfs_growfs, em vez de resize2fs.

CentOS 7,

fdisk /dev/xvda

Crie uma nova partição primária, defina o tipo como linux lvm.

n
p
3
t
8e
w

Crie um novo volume primário e estenda o grupo de volumes para o novo volume.

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

Verifique o volume físico para obter espaço livre, estenda o volume lógico com o espaço livre.

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

Por fim, execute um redimensionamento online para redimensionar o volume lógico e verifique o espaço disponível.

xfs_growfs /dev/centos/root
df -h

2
Também funciona para o RHEL 7. Obrigado!
Richard Corfield

1
Como reduzir uma partição e adicionar o espaço reduzido a outra partição? xfs_growfsparece que não funciona para isso.
GoingMyWay

você é uma lenda, ty muito por este guia, não percebeu ubuntu / centos usa o método de redimensionamento diferente
Shuliyey

Aqui você pode encontrar mais informações: tecmint.com/extend-and-reduce-lvms-in-linux
Lihai

1
xfs_growfs é para o sistema de arquivos XFS. Se alguém instalar o CentOS com outro sistema de arquivos (ext4), o xfs_growfs falhará. Use o fsadmque lida com xfs, ext4 e alguns sistemas de arquivos.
karatedog

59

No Centos 7, o sistema de arquivos padrão é xfs .

O suporte ao sistema de arquivos xfs apenas estende e não reduz. Portanto, se você deseja redimensionar o sistema de arquivos, use xfs_growfs em vez de redimensionar2fs.

xfs_growfs /dev/root_vg/root 

Nota: Para o sistema de arquivos ext4, use

resize2fs /dev/root_vg/root

1
Pode-se encontrar o tipo de sistema de arquivos usando mount | column -t(entre muitas outras maneiras).
harperville

Você precisa melhorar o ponto de montagem, não bloquear o dispositivo. xfs_growfs version 5.1.0, Fedora 31,Usage: xfs_growfs [options] mountpoint
Alois Mahdal 21/03

43

Encontrei o mesmo problema exato por volta do meio-dia de hoje e finalmente encontrei uma solução aqui -> Tentando redimensionar o volume do EB de 2fs falha

Eu pulei a montagem, pois a partição já estava montada.

Aparentemente, o CentOS 7 usa o XFS como o sistema de arquivos padrão e, como resultado resize2fs, falhará.

Dei uma olhada /etc/fstabe adivinhe, o XFS estava me encarando ... Espero que isso ajude.


2
Corri lvextend --resize, que é redimensionado para você no centos 7. Isso pareceu corrigir o problema.
technocrat

21
A página de manual do lvextend diz que é usada fsadmpara redimensionar o sistema de arquivos. Então eu tentei fsadm resize /dev/centos/roote funcionou.
Fatih

Tecnicamente, isso não é realmente uma resposta, e as informações nesse URL não funcionaram para mim. É melhor responder à pergunta aqui, onde podemos discuti-la e adicionar links à documentação de suporte, se você achar útil.
PJ Brunet

23

O comando resize2fs não funcionará para todos os sistemas de arquivos.

Por favor, confirme o sistema de arquivos da sua instância usando o comando abaixo. insira a descrição da imagem aqui

Siga o procedimento para expandir o volume seguindo as etapas mencionadas no documento oficial da Amazon para diferentes sistemas de arquivos.

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

O sistema de arquivos padrão no Centos é xfs, use o seguinte comando para o sistema de arquivos xfs para aumentar o tamanho da partição.

sudo xfs_growfs -d /

depois "df -h" para verificar.


2
São coisas assim que salvam os empregos das pessoas. Bom trabalho!
Ben Power

17

No Centos 7, em resposta à pergunta original em que resize2fs falha com "número mágico ruim", tente usar o fsadm da seguinte maneira:

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

Então:

df 

... para confirmar que as alterações de tamanho funcionaram.


Também funcionou para mim no CentOS VM com partições LVM redimensionadas.
Alexandre Germain

16

CentOS7 + VM

Eu fiz isso com:

  1. Gparted-live aumenta o volume
  2. pvresize -v /dev/sda2
  3. lvresize -r -l+100%FREE centos/root

7

Depois de ler sobre LVM e estar familiarizado com PV -> VG -> LV, isso funciona para mim:

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) # vgs

  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% GRÁTIS / 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

Cumprimentos,


6
How to resize root partition online :  

1)  [root@oel7 ~]# df -h  
Filesystem                         Size  Used Avail Use% Mounted on  
/dev/mapper/root_vg-root           5.0G  4.5G  548M  90% /

2)   

PV /dev/sda2   VG root_vg     lvm2 [6.00 GiB / 0    free]

as here it shows that there is no space left on root_vg volume group, so first i need to extend VG 

3)  
[root@oel7 ~]# vgextend root_vg /dev/sdb5  

  Volume group "root_vg" successfully extended

4)  

[root@oel7 ~]# pvscan  
    PV /dev/sda2   VG root_vg     lvm2 [6.00 GiB / 0    free]  
    PV /dev/sdb5   VG root_vg     lvm2 [2.00 GiB / 2.00 GiB free]

5)  Now extend the logical volume   

[root@oel7 ~]# lvextend -L +1G /dev/root_vg/root  

  Size of logical volume root_vg/root changed from 5.00 GiB (1280 extents) to 6.00 GiB (1536 extents).
  Logical volume root successfully resized  

3)  [root@oel7 ~]# resize2fs /dev/root_vg/root  

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

as root partition is not a ext* partiton so , you resize2fs will not work for you.  

4)  to check the filesystem type of a partition 
[root@oel7 ~]# df -Th  
Filesystem                        Type      Size  Used Avail Use% Mounted on  
/dev/mapper/root_vg-root          xfs       6.0G  4.5G  1.6G  75% /  
devtmpfs                          devtmpfs  481M     0  481M   0% /dev  
tmpfs                             tmpfs     491M   80K  491M   1% /dev/shm  
tmpfs                             tmpfs     491M  7.1M  484M   2% /run  
tmpfs                             tmpfs     491M     0  491M   0% /sys/fs  /cgroup
/dev/mapper/data_vg-home          xfs       3.5G  2.9G  620M  83% /home  
/dev/sda1                         xfs       497M  132M  365M  27% /boot  
/dev/mapper/data_vg01-data_lv001  ext3      4.0G  2.4G  1.5G  62% /sybase  
/dev/mapper/data_vg02-backup_lv01 ext3      4.0G  806M  3.0G  22% /backup  

above command shows that root is an xfs filesystem , so we are sure that we need to use xfs_growfs command to resize the partition.

6)  [root@oel7 ~]# xfs_growfs /dev/root_vg/root  
meta-data=/dev/mapper/root_vg-root isize=256    agcount=4, agsize=327680 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=0        finobt=0
data     =                       bsize=4096   blocks=1310720, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=0
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 1310720 to 1572864  

[root@oel7 ~]# df -Th  

Filesystem                        Type      Size  Used Avail Use% Mounted on
/dev/mapper/root_vg-root          xfs       6.0G  4.5G  1.6G  75% /  

6

os: rhel7

Depois gparted, # xfs_growfs /dev/mapper/rhel-rootfez o truque em um sistema vivo.

$ 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

6

No centos e no fedora, trabalhe com o fsadm

fsadm resize /dev/vg_name/root
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.