Em teoria, sim, você pode calcular o tamanho exato do LV requerido pelo sistema de arquivos - quando resize2fs
faz isso, ele imprime quantos blocos estão em uso. Infelizmente, entender um pouco errado resulta em um sistema de arquivos quebrado, e gastar 100MB de espaço em troca de não desossar um sistema de arquivos é uma troca que a maioria das pessoas está disposta a fazer.
EDITAR : Com o risco de dar uma metralhadora a um macaco e limpar seus sistemas de arquivos o tempo todo, o seguinte processo funcionou para mim em um sistema de arquivos scratch:
-
fsck -f /dev/vg/sizetest
-
resize2fs -M /dev/vg/sizetest
- Pegue o número de blocos (e o tamanho do bloco) da linha "Redimensionando o sistema de arquivos" de
resize2fs
e calcule o número de kilobytes envolvidos multiplicando a contagem de blocos pelo tamanho do bloco em kB:- "Redimensionar o sistema de arquivos em / dev / vg / sizetest para 119325 (4k) blocos" se traduz em
119325 * 4 => 477300
(número importante para a próxima etapa)
- "Redimensionar o sistema de arquivos em / dev / vg / sizetest para 119325 (4k) blocos" se traduz em
-
lvresize -L477300k vg/sizetest
- Neste ponto, se o seu tamanho não estiver certo, você estará total e totalmente desossado - expandir o sistema de arquivos novamente não trará necessariamente os mesmos blocos de volta na mesma ordem.
-
fsck -f /dev/vg/sizetest
- Remontar o sistema de arquivos, observe que o df mostra que o sistema de arquivos está 100% cheio, com 0 blocos disponíveis
Se isso atrapalhar o seu sistema de arquivos crucialmente importante, não me diga, pois eu apenas me empenharei em uma longa dança "contada", e ninguém quer me ver dançar. Confie em mim.