Como reduzir um sistema de arquivos XFS? [fechadas]

4

Temos um servidor RHEL 7 com 2 discos ( sda e sdb ). Nossos / , /var/log e swap estão em sda , /var está em sdb . Nós usamos LVM e XFS.

sda é muito grande (160 GB) e gostaríamos de reduzi-lo para 40 GB. Podemos então usar os 120 GB gratuitos para estender sdb .

[root@foo ~]# pvs
  PV         VG        Fmt  Attr PSize   PFree
  /dev/sda2  rhel      lvm2 a--  134.77g 9.77g
  /dev/sdb1  vg_var    lvm2 a--  200.00g    0


[root@foo ~]# lvs
  LV        VG        Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  root      rhel      -wi-ao---- 117.19g
  swap      rhel      -wi-ao----   3.91g
  var_log   rhel      -wi-ao----   3.91g
  lv_var    vg_var    -wi-ao---- 200.00g

[root@foo ~]# fdisk -l

Disk /dev/sdb: 214.7 GB, 214748364800 bytes, 419430400 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk label type: dos
Disk identifier: 0x3235298e

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048   419430399   209714176   8e  Linux LVM

Disk /dev/sda: 161.1 GB, 161061273600 bytes, 314572800 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk label type: dos
Disk identifier: 0x0009b153

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     1026047      512000   83  Linux
/dev/sda2         1026048   283656191   141315072   8e  Linux LVM

Disk /dev/mapper/rhel-root: 125.8 GB, 125829120000 bytes, 245760000 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/mapper/rhel-swap: 4194 MB, 4194304000 bytes, 8192000 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/mapper/vg_var-lv_var: 214.7 GB, 214744170496 bytes, 419422208 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/mapper/rhel-var_log: 4194 MB, 4194304000 bytes, 8192000 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes

Como podemos alcançar isso com segurança? Eu tentei isso com uma máquina de teste, mas falhou:

  1. Adicionar um novo disco
  2. Crie uma partição LVM, pvcreate e adicione um novo LV nela.
  3. Inicialize com o disco de recuperação
  4. Montar sda a /mnt/sysimage e montar o LV do novo disco em /mnt/sdb
  5. cp -ax /mnt/sysimage/* /mnt/sdb
  6. Atualize /mnt/sysimage/etc/fstab para usar /dev/mapper/rhel-lv_root
  7. Finalmente, a reinicialização falha devido a INT18 boot failure
por EsTeGe 27.04.2016 / 16:17

2 respostas

6

Pelo que tenho lido, você não pode reduzir um sistema de arquivos XFS.

Isso é o que é dito no site da RH:

  • Atualmente, não é possível reduzir o tamanho de uma partição ou volume lógico com o sistema de arquivos xfs. Se você estiver interessado nesta funcionalidade, entre em contato com o suporte da Red Hat e consulte o bugzilla 1062667 da Red Hat, e forneça seu caso de uso para a necessidade de redução / redução de XFS.
  • Como possível solução alternativa em alguns ambientes, os volumes LVM provisionados thin podem ser considerados como uma camada adicional abaixo do sistema de arquivos XFS.

link

    
por 02.03.2017 / 18:10
-7

Eu sinto que você pode redimensionar o LVM como abaixo

  1. Inicialize com o disco de recuperação
  2. Use resize2fs para reduzir o sistema de arquivos
  3. Use lvresize para diminuir o volume lógico
  4. use pvresize para diminuir o volume físico
  5. Nesta fase, você pode ter que usar ferramentas de partição para reduzir a parção para criar espaço livre
  6. Quando a nova partição for criada, use o pvcreate para criar um novo volume
  7. use o vgextend para estender seu volume em / dev / sdb
  8. use o lvextend para estender o sistema de arquivos / var

Vou sugerir que experimente isso em um sistema de teste para evitar possível perda de dados.

Deixe-me saber se esse procedimento foi útil.

    
por 02.09.2016 / 17:37

Tags