Existe uma ferramenta Linux CLI para determinar o espaço "usado" de uma partição? (como gparted)

Existe uma ferramenta Linux CLI para determinar o espaço "usado" de uma partição? (como gparted)

Estou reduzindo uma partição Linux SDCard usando o incrível guia do AOakley. Estou tentando automatizá-lo, mas parece não haver nenhuma ferramenta de linha de comando para determinar o número de bytes usados ​​em uma partição.

Por exemplo, gparted me diz que o espaço usado é 1,88 GB de 6,99 GB (observe que estou usando /dev/loop0 que está montado na segunda partição de /dev/sdb):

dfestá errado:

% df /dev/loop0
Filesystem  ... Use%
udev        ... 0%

...e fdiske partednão imprima o espaço usado.

O que posso usar na linha de comando para determinar o espaço usado em uma partição gparted?

RESPOSTA: Resumo abaixo: A partição é ext4a que me permite usar dumpe2fse extrair: free blocks, block count(total) e block sizeque pode ser combinada para corresponder exatamente gparted. Acontece que isso resize2fslida com a fragmentação durante a redução. Consulte a página de manual para ext4obter mais informações (embora o editor da página de manual seja um pouco amargo sobre GiB vs. GB! :)

Responder1

dfé quase a ferramenta certa, mas você deve consultar o ponto de montagem (ou qualquer arquivo abaixo) que pertence ao sistema de arquivos que deseja examinar, não ao nó do dispositivo. O nó que você usou, /dev/loop0é um arquivo especial que pertence ao udevsistema de arquivos virtual; daí você conseguiu udev.

Monte /dev/loop0(ou /dev/sdb2, não sei por que é necessário /dev/loop0) em algum lugar (pode ser romount) e invoque df /the/mountpoint. Então dflhe dirá o que o sistema de arquivos reporta sobre si mesmo.

Eu disse " dféquasea ferramenta certa" porque não há garantia de que você possa reduzir o sistema de arquivos (e posteriormente a partição) para o tamanho relatado pela ferramenta. Quais dfimpressões podem ser sua primeira (ou melhor, zero) estimativa.

Você precisa de ferramentas diferentes para redimensionar diferentes sistemas de campo. Em um mundo perfeito, essa ferramenta (ou alguma ferramenta que a acompanha) é capaz de informar o tamanho mínimo possível, ou pelo menos o tamanho mínimo para o qual o redimensionamento terá sucesso com certeza. Na realidade você pode encontrar isso:

Bugs Conhecidos
O tamanho mínimo do sistema de arquivos estimado por resize2fspode estar incorreto, especialmente para sistemas de arquivos com tamanhos de blocos de 1k e 2k.

(fonte)

gpartedusa ferramentas específicas do sistema de arquivos. Eu o executei stracee não vi nenhuma evidência de que ele usa df. Eu vi btrfs filesystem show …, dumpe2fs …, …

Resumo:

  • Você usou dfda maneira errada.
  • De qualquer forma, é melhor usar uma ferramenta específica para o sistema de arquivos; gpartedfaz. Não posso dizer qual ferramenta você deve usar porque você não especificou o sistema de arquivos em questão.

informação relacionada