Quanto espaço está disponível?

1

A pergunta diz Remove todo o diretório git (não é usado em nossos tutoriais). Agora repita o cálculo acima para espaço em disco, mas desta vez dê a resposta em blocos. Eu deletei com sucesso o diretório git , mas agora eu preciso encontrar o espaço em disco nos blocos que eu fiz df -k e isso surgiu:

Filesystem                  1K-blocks    Used Available Use% Mounted on
/dev/mapper/centos_lvm-root   6813696 4533956   2279740  67% /
devtmpfs                       234236       0    234236   0% /dev
tmpfs                          250168      84    250084   1% /dev/shm
tmpfs                          250168    4792    245376   2% /run
tmpfs                          250168       0    250168   0% /sys/fs/cgroup
/dev/sda1                      508588  209632    298956  42% /boot
tmpfs                           50036      16     50020   1% /run/user/42
tmpfs                           50036       0     50036   0% /run/user/0

O que preciso fazer?

    
por Rakata Infinite Empire 10.10.2018 / 12:07

3 respostas

0

Tente isso,

Digamos que você excluiu o diretório git do caminho /usr/share/doc . Agora, execute df -k / , desde que usr/share/doc esteja presente na partição / . Pode ser algo assim:

    Filesystem                  1K-blocks    Used   Available Use%  Mounted on
/dev/mapper/centos_lvm-root   6813696      4533956   2279740  67%    /

Aqui 6813696 é o número total de blocos disponíveis, dos quais 2279740 estão livres. Cada tamanho de bloco é de 1024 bytes.

Agora, sua resposta de lição de casa seria 2279740 blocks.

Você sempre pode executar df -kh para ver a utilização do espaço em disco em termos legíveis como 1GB etc

Mas se você quiser que o tamanho do bloco seja 512 ou algo assim, tente o seguinte:

df --block-size=512 /

df --block-size=<your_block_size> <your_partition>

EDIT: Para obter o tamanho em Mega bytes, tente isto:

df -hm /

O número abaixo de Available seria sua resposta.

Supondo que seus 2279740 bloqueiem cada tamanho de 1024 bytes são gratuitos, a resposta em Ms seria 2226.30859375M

Cálculo: 2279740/1024 ou

Em bytes 2279740*1024 = 2334453760 bytes;

Em KB: 2334453760/1024=2279740KB ;

Em MB 2279740/1024=2226.30859375M ;

Em G 2226.30859375/1024=2.174129486083984G

Para mais opções de df , tente man df ou df --help

    
por 10.10.2018 / 12:47
0

Blocos tradicionalmente tinham um tamanho de 512 bytes (eles tinham uma strong correlação com setores de disco). Você pode dizer a df qual tamanho de bloco ou unidade usar. A partir da especificação POSIX df :

The format of the default output from df is unspecified, but all space figures are reported in 512-byte units, unless the -k option is specified.

Supondo que sua pergunta de tarefa de casa pressupõe que os blocos tenham 512 bytes, basta remover o -k . Se df ainda usar blocos de 1k, você poderá ter a variável BLOCKSIZE definida como K . Desvincule-o com unset BLOCKSIZE e set POSIXLY_CORRECT=yes .

Você pode reduzir a saída para incluir apenas o sistema de arquivos relevante com

df .     # or maybe df /usr/share/doc

(supondo que seu diretório de trabalho atual esteja no sistema de arquivos relevante).

    
por 10.10.2018 / 12:36
0

Você pode tentar algo assim:

#!/bin/bash

TO_REMOVE="/usr/share/doc/git"
BASE_DIR=$(dirname $TO_REMOVE)

SIZE_BEFORE=$(df $BASE_DIR | tr -s ' ' | cut -d" " -f 3 | tail -1)
rm -Rf $TO_REMOVE
SIZE_AFTER=$(df $BASE_DIR | tr -s ' ' | cut -d" " -f 3 | tail -1)

echo $(($SIZE_BEFORE - $SIZE_AFTER))

dirname - retira o último componente do caminho

tr -s ' ' - esmaga todos os espaços

cut -d" " -f 3 - seleciona a segunda coluna

tail -1 - seleciona a última linha da coluna

    
por 10.10.2018 / 12:53