Como crescer o disco formatado xfs?

3

Aqui está o disco, é um disco vmware com provisionamento dinâmico e cresceu de 300 para 800 GB

  *-disk:1
       description: SCSI Disk
       physical id: 0.1.0
       bus info: scsi@2:0.1.0
       logical name: /dev/sdb
       size: 800GiB (858GB)
       capabilities: partitioned partitioned:dos
       configuration: sectorsize=512 signature=4268053f

aqui é o

df -h
output
/dev/sdb1                             300G   27G  273G   9% /data

e permanece inalterado quando eu faço isso

[evn-mrs-slave]~> xfs_growfs -d /data
meta-data=/dev/sdb1              isize=256    agcount=4, agsize=19660736 blks
         =                       sectsz=512   attr=2
data     =                       bsize=4096   blocks=78642944, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0
log      =internal               bsize=4096   blocks=38399, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data size unchanged, skipping
    
por Edik Mkoyan 13.11.2015 / 12:56

1 resposta

5

Você deve aumentar a partição antes de poder desenvolver o sistema de arquivos . O sistema de arquivos está dentro da partição , e a partição ainda é 300GiB large, mesmo que o disco seja agora 800GiB large.

Redimensionando uma partição

As partições não podem ser redimensionadas, mas podem ser excluídas e recriadas. Quando uma partição é excluída, os dados subjacentes ainda estão intactos. Não é muito difícil excluir e recriar uma partição, mas o cálculo deve ser feito exatamente correto, ou o sistema de arquivos dentro da partição será corrompido por desalinhamento ou subdimensionamento.

Eu normalmente não prefiro usar GUI , mas redimensionar partições usando a linha de comando é propenso a erro humano, fatoração na tabela de partição (geralmente msdos ou gpt ), o início da partição, o final da partição e o tamanho correto.

WARNING: Before proceeding, take a backup of your XFS filesystem using this procedure (where /dev/sdg1 is your XFS filesystem and /path/to/backup.xfs is where you want to store your XFS dump):

mount /dev/sdg1 /mnt
xfsdump -f /path/to/backup.xfs -L MySession -M MyMedia /mnt

If something goes wrong, you can restore to a new XFS partition:

mount /dev/sdg1 /mnt # … where /dev/sdg1 is a new XFS partition
xfsrestore -f /path/to/backup.xfs /mnt

Easy Way

GParted faz todos os cálculos para você:

ÉmuitoautoexplicativoeatéexpandeosistemadearquivosXFSparaoajuste.
Esteégeralmenteumprocedimentoseguro.

fdiskWay

Usefdiskparaexcluirerecriarapartição.Exemplocompleto:

root@node53[~]#fdisk/dev/sdgWelcometofdisk(util-linux2.25.2).Changeswillremaininmemoryonly,untilyoudecidetowritethem.Becarefulbeforeusingthewritecommand.Command(mforhelp):pDisk/dev/sdg:991.5MiB,1039663104bytes,2030592sectorsUnits:sectorsof1*512=512bytesSectorsize(logical/physical):512bytes/512bytesI/Osize(minimum/optimal):512bytes/512bytesDisklabeltype:gptDiskidentifier:FAFC7A8C-52CB-4FF2-9746-391D50BF729CDeviceStartEndSectorsSizeType/dev/sdg1204810506231048576512MLinuxfilesystem

Observeaposição" Start " (o setor 2048 th neste exemplo). Você precisará digitar isso como o primeiro setor ao recriar a partição.

Command (m for help): d
Selected partition 1
Partition 1 has been deleted.

Command (m for help): n
Partition number (1-128, default 1): 1
First sector (34-2030558, default 2048): 2048
Last sector, +sectors or +size{K,M,G,T,P} (2048-2030558, default 2030558): 2030558

fdisk será o padrão para usar o maior espaço livre contíguo. (Neste exemplo, é o setor 2030558 th ).

Created a new partition 1 of type 'Linux filesystem' and of size 990.5 MiB.

Command (m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.

Agora você tem uma partição maior que contém um sistema de arquivos XFS menor. Esses comandos expandiriam o sistema de arquivos XFS:

root@node53 [~]# mount -v /dev/sdg1 /mnt
mount: /dev/sdg1 mounted on /mnt.

root@node53 [~]# xfs_growfs /mnt
meta-data=/dev/sdg1              isize=256    agcount=4, agsize=32768 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=0        finobt=0
data     =                       bsize=4096   blocks=131072, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=0
log      =internal               bsize=4096   blocks=853, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 131072 to 253563

Boom, você tem uma partição XFS expandida:

root@node53 [~]# df -hT /mnt
Filesystem     Type  Size  Used Avail Use% Mounted on
/dev/sdg1      xfs   988M   26M  962M   3% /mnt

xfsdump Way (única maneira de reduzir o XFS)

Você fez um backup quando eu mandei? Sim? Boa! Eu prefiro usar xfsrestore para restaurar xfsdump s em novas partições. A vantagem é que você pode realmente encolher sistemas de arquivos XFS usando este método, mas a desvantagem é que todos os dados precisam ser reescritos, o que é mais lento.

Você pode realmente usar o método fdisk acima para recriar a partição. Depois de sair do fdisk , faça isso:

root@node53 [~]# mkfs.xfs -f /dev/sdg1
meta-data=/dev/sdg1              isize=256    agcount=4, agsize=63391 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=0        finobt=0
data     =                       bsize=4096   blocks=253563, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=0
log      =internal log           bsize=4096   blocks=853, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
root@node53 [~]# mount -v /dev/sdg1 /mnt
mount: /dev/sdg1 mounted on /mnt.
root@node53 [~]# xfsrestore -f /path/to/backup.xfs /mnt
xfsrestore: using file dump (drive_simple) strategy
xfsrestore: version 3.1.4 (dump format 3.0) - type ^C for status and control
xfsrestore: searching media for dump
xfsrestore: examining media file 0
xfsrestore: dump description: 
xfsrestore: hostname: andie
xfsrestore: mount point: /mnt
xfsrestore: volume: /dev/sdg1
xfsrestore: session time: Mon Nov 16 14:44:20 2015
xfsrestore: level: 0
xfsrestore: session label: "MySession"
xfsrestore: media label: "MyMedia"
xfsrestore: file system id: c5981472-9b75-4fad-9bd8-d1bd04086f8d
xfsrestore: session id: 092b0cf3-120d-43c1-b8ce-23300abf558e
xfsrestore: media id: 3cc0f4db-665f-40fd-ac54-493625f712f5
xfsrestore: using online session inventory
xfsrestore: searching media for directory dump
xfsrestore: reading directories
xfsrestore: 1 directories and 0 entries processed
xfsrestore: directory post-processing
xfsrestore: restore complete: 0 seconds elapsed
xfsrestore: Restore Summary:
xfsrestore:   stream 0 /path/to/backup.xfs OK (success)
xfsrestore: Restore Status: SUCCESS
    
por 16.11.2015 / 22:19