Aqui está a solução de trabalho passo-a-passo que acabei de testar a atualização do OVH VPS 2016 SSD 1 (10 GB) para o OVH VPS 2016 SSD 2 (20 GB) com a partição crescer para o tamanho novo máximo.
O ambiente é com CentOS 7 com seu sistema de arquivos XFS padrão.
Depois de redimensionar, a nova partição é inicializável com todos os dados em vigor.
Passo 0. Atualizar para um plano VPS mais alto
Realize a atualização no painel da OVH.
Não é possível estar no modo de resgate durante a atualização.
Etapa 1. Inicialize no modo de recuperação
root@rescue-pro:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda 254:0 0 10G 0 disk
└─vda1 254:1 0 10G 0 part /
vdb 254:16 0 20G 0 disk
└─vdb1 254:17 0 10G 0 part /mnt/vdb1
O exemplo acima mostra que vdb
tem 20 GB após o upgrade, e a partição original vdb1
tem 10 GB montada em /mnt/vdb1
Etapa 2. Instalar ferramentas a serem usadas
root@rescue-pro:/# apt-get update
root@rescue-pro:/# apt-get install xfsprogs
root@rescue-pro:/# apt-get install parted
O modo de recuperação não vem com ferramentas, xfs_growfs
para aumentar o sistema de arquivos XFS.
Estará usando parted
para redimensionar a partição subjacente para um novo tamanho antes de podermos expandir o sistema de arquivos.
Etapa 3. Redimensionando a partição subjacente
root@rescue-pro:~# umount /mnt/vdb1
Será necessário desmontar a partição antes de podermos aplicar as alterações.
root@rescue-pro:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda 254:0 0 10G 0 disk
└─vda1 254:1 0 10G 0 part /
vdb 254:16 0 20G 0 disk
└─vdb1 254:17 0 10G 0 part
Verifique se foi desmontado.
root@rescue-pro:~# parted
Neste ponto, o dispositivo de resgate vda
está selecionado, precisamos mudar para o dispositivo no qual estaremos trabalhando.
(parted) select /dev/vdb
Using /dev/vdb
(parted) print
Model: Virtio Block Device (virtblk)
Disk /dev/vdb: 21.5GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 1049kB 10.7GB 10.7GB primary xfs boot
(parted) unit s
Mude a unidade de exibição para sector
(parted) print
Model: Virtio Block Device (virtblk)
Disk /dev/vdb: 41943040s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 2048s 20971519s 20969472s primary xfs boot
(parted) rm 1
O texto acima REMOVE a partição existente.
Esta é a parte que mais hesito em realizar.
Depois de muita pesquisa e confirmação de que não destruirá os dados, teremos tudo de volta.
(parted) mkpart
Partition type? primary
File system type? xfs
Start? 2048s
End? 100%
O acima irá recriar a partição com o tamanho máximo da alocação de espaço da unidade.
Responda as perguntas de acordo com o resultado print
acima.
2048s
é o setor inicial, é por isso que mudamos a unidade para sector
, certifique-se de que seja igual ao resultado print
acima.
(parted) print
Model: Virtio Block Device (virtblk)
Disk /dev/vdb: 41943040s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 2048s 41943039s 41940992s primary xfs
Verifique a nova tabela de partições.
Observe que o sinalizador boot
está faltando.
(parted) set 1 boot on
(parted) print
Model: Virtio Block Device (virtblk)
Disk /dev/vdb: 41943040s
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 2048s 41943039s 41940992s primary xfs boot
Defina o sinalizador boot
e imprima a tabela de partições novamente para verificar.
(parted) quit
Saia e aplique todas as alterações.
Você verá a seguinte nota que pode ignorar, já que o número da partição é o mesmo depois de redimensionar.
Information: You may need to update /etc/fstab.
Etapa 4. Verificar a partição redimensionada
root@rescue-pro:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda 254:0 0 10G 0 disk
└─vda1 254:1 0 10G 0 part /
vdb 254:16 0 20G 0 disk
└─vdb1 254:17 0 20G 0 part
Agora, podemos ver que vdb1
está no tamanho total 20GB
Monte a partição de volta e verifique o espaço em disco.
root@rescue-pro:~# mount /dev/vdb1 /mnt/vdb1
root@rescue-pro:~# df -h
Filesystem Size Used Avail Use% Mounted on
rootfs 9.9G 608M 8.8G 7% /
udev 10M 0 10M 0% /dev
tmpfs 388M 144K 388M 1% /run
/dev/vda1 9.9G 608M 8.8G 7% /
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 775M 0 775M 0% /run/shm
/dev/vdb1 10G 2.1G 8.0G 21% /mnt/vdb1
Podemos ver que a partição montada está de volta, todos os dados estão no lugar, mas o tamanho ainda é 10GB
Passo 5. CRESCER A PARTE XFS
root@rescue-pro:~# xfs_growfs -d /mnt/vdb1
meta-data=/dev/vdb1 isize=256 agcount=6, agsize=524224 blks
= sectsz=512 attr=2
data = bsize=4096 blocks=2621184, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=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 2621184 to 5242624
O comando acima aumenta o /mnt/vdb1
para o tamanho máximo disponível.
Use o ponto de montagem em vez do dispositivo de bloco.
root@rescue-pro:~# df -h
Filesystem Size Used Avail Use% Mounted on
rootfs 9.9G 608M 8.8G 7% /
udev 10M 0 10M 0% /dev
tmpfs 388M 144K 388M 1% /run
/dev/vda1 9.9G 608M 8.8G 7% /
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 775M 0 775M 0% /run/shm
/dev/vdb1 20G 2.1G 18G 11% /mnt/vdb1
Verifique o espaço em disco novamente e podemos ver que /mnt/vdb1
cresceu com sucesso para 20GB
Etapa 6. Etapa final - reinicialize e saia do modo de resgate
shutdown -h now
Volte para o Painel da OVH e use Reboot VPS
para sair do modo de recuperação.
Após inicializar de volta ao ambiente VPS normal.
[root@vps]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 20G 2.1G 18G 11% /
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs 1.9G 17M 1.9G 1% /run
tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
tmpfs 386M 0 386M 0% /run/user/0
[root@vps]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda 253:0 0 20G 0 disk
└─vda1 253:1 0 20G 0 part /
Verifique o que foi mostrado acima, mostrando que a partição raiz foi redimensionada com êxito para 20GB
Acho que não há documentação completa sobre como realizar esse redimensionamento da partição raiz após a atualização do seu OVH VPS.
O sistema de arquivos XFS é o que torna complicado.
Espero que este passo-a-passo ajude alguém que esteja enfrentando o mesmo problema.