Você aumentou o tamanho de um disco virtual no hipervisor, mas o Ubuntu ainda não está usando todo o espaço para sua raiz. O disco deve primeiro ser expandido do lado do hipervisor e sua nova capacidade deve ser visível no convidado. Este procedimento diz respeito apenas a uma raiz / montada diretamente em uma partição ext4 simples, seguida de espaço livre contíguo.

A partição e o sistema de arquivos são duas camadas diferentes. O procedimento primeiro amplia a entrada da partição, depois ext4. Passe para a próxima etapa somente se as verificações anteriores corresponderem à sua máquina.
Identificar a raiz ext4, o disco e a partição
Comece por localizar a fonte e o tipo de sistema de arquivos montados em /, depois examine os dispositivos e suas relações:
findmnt -no SOURCE /
findmnt -no FSTYPE /
lsblk
A primeira comando deve designar a partição que contém a raiz; a segunda deve indicar ext4. No lsblk, suba dessa partição até seu disco pai. Para obter colunas explícitas, você pode completar a inspeção assim:
lsblk -b -o NAME,PATH,TYPE,FSTYPE,SIZE,MOUNTPOINTS,PKNAME,PARTN
Não deduza o nome do disco a partir de um exemplo. Uma raiz pode, por exemplo, estar em /dev/vda2: o disco é então /dev/vda e o número da partição 2. Em NVMe, /dev/nvme0n1p2 corresponde ao disco /dev/nvme0n1 e ao número 2. Sempre verifique esses elementos em suas próprias saídas.
Nas comandos abaixo, /dev/sdX é um espaço reservado para o disco inteiro, nunca para uma partição. N representa o número real da partição raiz. Substitua-os antes de qualquer execução; não copie esses exemplos tal como estão.
Em seguida, examine a tabela e os limites das partições no disco identificado. No próximo comando, substitua /dev/sdX pelo caminho verificado do disco inteiro:
sudo fdisk -l /dev/sdX
fdisk -l é usado aqui para ler a tabela, não para modificá-la. Compare a capacidade do disco, os limites das partições e sua ordem. O espaço disponível deve estar imediatamente após a partição raiz, sem outra partição entre as duas. A documentação do fdisk descreve as informações da tabela exibidas por essa ferramenta; essa leitura não substitui a verificação da topologia real.
Antes de qualquer gravação, faça o diagnóstico em modo de teste. Substitua os dois espaços reservados pelo disco e o número da partição realmente identificados:
sudo growpart --dry-run /dev/sdX N
O modo --dry-run relata o que a ferramenta faria sem modificar a tabela. Ele deve anunciar uma possível expansão da partição correta no espaço contíguo disponível. A documentação do Ubuntu sobre growpart especifica a sintaxe disco-número da partição e o papel do diagnóstico em modo de teste.
Interrompa se a raiz passar por LVM, LUKS ou RAID, se o sistema de arquivos for Btrfs ou XFS — ou não for ext4 —, se uma partição estendida/lógica ou uma outra camada tornarem a topologia ambígua, se o espaço livre estiver antes da raiz ou não contíguo, ou se outra partição seguir a raiz. Pare também se o disco ampliado não estiver visível, se a ferramenta faltar, se o diagnóstico não anunciar a expansão esperada ou retornar um erro. Não tente contornar esses casos com uma manipulação de partição.
Preparar a mudança e um retorno
Antes do único comando deste procedimento que grava a tabela de partições, verifique se você possui um backup restaurável, se sabe como restaurá-lo e se as saídas de inspeção estão salvas. Um snapshot só é útil como retorno se você puder realmente restaurá-lo.
Confirme também o acesso ao console de recuperação da máquina e ao hipervisor, além da possibilidade de reiniciar o Ubuntu. Preveja uma janela de intervenção: um reinício pode ser necessário se o kernel não reconhecer o novo tamanho da partição a quente. Se o backup, o acesso ao console ou a possibilidade de reiniciar não estiverem assegurados, pare.
Registre a situação atual do sistema de arquivos e mantenha os resultados de findmnt, lsblk, fdisk -l e do diagnóstico em modo de teste para comparar depois:
df -hT /
Essa saída é um ponto de comparação, não uma prova de que a partição e o ext4 já foram expandidos.
Aumentar a entrada da partição
Continue somente se todas as verificações anteriores estiverem de acordo, se o backup restaurável estiver pronto e se o acesso de recuperação e o reinício forem possíveis. O seguinte comando modifica a tabela de partições. Substitua obrigatoriamente /dev/sdX e N pelo disco e número validados; o primeiro designa o disco inteiro, o segundo a partição raiz.
sudo growpart /dev/sdX N
O resultado esperado é um relatório de aumento da entrada da partição raiz para o espaço contíguo disponível. growpart muda o tamanho da partição, não o do sistema de arquivos ext4.
Se o comando retornar um erro, não reportar nenhum aumento, sinalizar um aviso sobre a tabela ou parecer direcionar para outro dispositivo, pare. Não encadeie com resize2fs e não tente recriar ou corrigir a partição às cegas.
Verificar o tamanho reconhecido pelo kernel
Após a operação, confronte a tabela e os dispositivos. Substitua /dev/sdX pelo disco identificado:
lsblk -b -o NAME,PATH,TYPE,FSTYPE,SIZE,MOUNTPOINTS,PKNAME,PARTN
sudo fdisk -l /dev/sdX
findmnt -no SOURCE /
A mesma partição ainda deve conter a raiz, e seu tamanho atual, conforme apresentado pelo kernel no lsblk, deve ser maior e corresponder à entrada de partição ampliada. Uma modificação visível na tabela não é suficiente se o kernel ainda expuser o antigo tamanho.
Se o tamanho não mudou, se a leitura da tabela falhou, se tabela e kernel não concordam, ou se a partição reconhecida não for a montada em /, pare: não inicie resize2fs. Se apenas a leitura a quente falhar, enquanto a ampliação da tabela é confirmada, planeje um reinício controlado utilizando o console de recuperação. Após o reinício, relance as verificações de fonte, tipo e tamanho. Se o tamanho esperado ainda não for reconhecido ou se o início apresentar problemas, pare e faça diagnosticar a máquina; não comande aleatoriamente.
Aumentar ext4 após confirmação da partição
Esta etapa é reservada para o caso em que findmnt ainda confirma a mesma raiz ext4 e onde lsblk confirma que sua partição realmente tem o novo tamanho. O espaço reservado /dev/sdXN designa aqui o caminho completo da partição raiz, e não o disco inteiro. Substitua-o pela fonte verificada; para NVMe, um nome de partição parece especialmente com /dev/nvme0n1p2.
sudo resize2fs /dev/sdXN
O resultado esperado é a extensão do sistema de arquivos ext4 na partição agora maior. A documentação do resize2fs distingue essa operação da modificação da tabela: resize2fs não altera a partição. A extensão online depende do suporte do kernel e do sistema de arquivos; não presuma que funcionará em qualquer configuração.
Interrompa se o tipo não for ext4, se a partição mantiver seu antigo tamanho, se a fonte não corresponder mais à raiz montada ou se o comando sinalizar um erro. Não desmonte / para improvisar outro procedimento; não execute nem reduza nem e2fsck na raiz montada. Um erro requer um diagnóstico adequado, não um novo comando aleatório.
Controlar o espaço utilizável
Termine com as verificações da fonte, do tipo, do tamanho da partição e do espaço utilizável:
findmnt -no SOURCE /
findmnt -no FSTYPE /
lsblk -b -o NAME,PATH,TYPE,FSTYPE,SIZE,MOUNTPOINTS,PKNAME,PARTN
df -hT /
Para concluir uma extensão efetiva, é necessário encontrar a mesma fonte de raiz, o tipo ext4, o novo tamanho da partição reconhecido pelo kernel e uma capacidade de sistema de arquivos superior no df -hT /. O tamanho da partição e o espaço relatado por df não são idênticos: o ext4 utiliza uma parte de sua capacidade para suas próprias estruturas.
Se o df não aumentou, se os valores não concordam ou se um comando indicou um erro, não declare a operação bem-sucedida e não repita growpart. Conserve as saídas para um diagnóstico. Para uma partição de dados ext4 não raiz a ser ampliada com fdisk, o percurso é diferente e este procedimento não se aplica.
Resumindo: identifique precisamente a raiz, confirme o espaço contíguo e o resultado do diagnóstico em modo de teste, prepare o backup e a recuperação, e então verifique separadamente a partição reconhecida pelo kernel e ext4. No menor desvio, pare antes da próxima etapa.