Você não deve usar df
porque mostra o tamanho conforme informado pelo sistema de arquivos (neste caso, ext4).
Use o comando dumpe2fs -h /dev/mapper/ExistingExt4
para descobrir o tamanho real da partição. A opção -h
torna dumpe2fs
mostrar informações de super blocos sem muitos outros detalhes desnecessários. A partir da saída, você precisa da contagem de blocos e do tamanho de bloco .
... Block count: 19506168 Reserved block count: 975308 Free blocks: 13750966 Free inodes: 4263842 First block: 0 Block size: 4096 ...
A multiplicação desses valores fornecerá o tamanho da partição em bytes . Os números acima são um múltiplo perfeito de 1024:
$ python -c 'print 19506168.0 * 4096 / 1024'
78024672.0
Desde que você quer encolher a partição por 15 GiB (que é 15 MiB vezes 1 KiB):
$ python -c 'print 19506168.0 * 4096 / 1024 - 15 * 1024 * 1024'
62296032.0
Como resize2fs
aceita vários tipos de sufixos, sendo um deles K
para "1024 bytes", o comando para encolher a partição para 62296032 torna-se KiB:
resize2fs -p /dev/mapper/ExistingExt4 62296032K
Sem unidade, o número será interpretado como um múltiplo do tamanho do bloco do sistema de arquivos (4096 neste caso). Veja man resize2fs (8)