Estou um pouco confuso sobre a forma como o ext4 reporta o espaço usado. Em uma nova instalação do Debian wheezy (testing), eu obtive consistentemente cerca de 1GB de espaço extra usado com um SSD de 60GB, quando comparado a du
. Eu então iniciei a rede naquele computador e montei o SSD. O sistema operacional de inicialização da rede (Debian squeeze) mostra apenas 180MB de espaço extra usado no SSD. A revista tem 128MB, então não há muito mais além disso.
Qual é o espaço extra usado relatado por df
, quando não é espaço reservado para arquivos raiz ou excluídos? Usar o Google resulta principalmente nessas causas comuns, que descartei. E por que essa quantidade difere no mesmo sistema de arquivos quando montado em sistemas operacionais diferentes? Eu testei isso re-instalando, e o uso extra foi novamente ~ 1GB na instalação wheezy, e 180MB quando eu iniciei a rede e montei esse SSD.
No XFS e no btrfs, o uso extra relatado parece insignificante. Eu percebo que o sistema de arquivos precisa de alguma sobrecarga, mas é inconveniente quando essa sobrecarga é misturada com o uso real.
Aqui estão alguns resultados detalhados.
df
$ df -m on wheezy
Filesystem 1M-blocks Used Available Use% Mounted on
rootfs 57132 1567 52703 3% /
udev 7899 0 7899 0% /dev
tmpfs 1581 1 1581 1% /run
/dev/mapper/ssd-kvmhost 57132 1567 52703 3% /
tmpfs 5 0 5 0% /run/lock
tmpfs 3162 0 3162 0% /tmp
tmpfs 3162 0 3162 0% /run/shm
du
$ du -sm /
592 /
tune2fs
mostra a contagem de Inodes para 3670016 e tamanho 256, o que explica, na verdade, quase todo o espaço usado. Eu simplesmente não entendo porque isso não é subtraído do tamanho, já que os inodes são estaticamente reservados. Contá-lo como espaço e, em seguida, sempre contá-lo como usado não faz muito sentido.
Aqui está a saída para o mesmo sistema de arquivos, a partir da rede Debian booted squeeze:
aufs 7905 46 7859 1% /
tmpfs 7905 0 7905 0% /lib/init/rw
udev 7900 1 7900 1% /dev
tmpfs 7905 1 7905 1% /dev/shm
172.17.172.127:/storage/private/tftp/debian-live-6.0.3-amd64-lxde-desktop
24737 17448 7289 71% /live/image
tmpfs 7905 46 7859 1% /live/cow
tmpfs 7905 0 7905 0% /live
tmpfs 7905 1 7905 1% /tmp
/dev/mapper/ssd-kvmhost
56337 772 52703 2% /mnt
E apenas para confirmação, du -sm / no sistema operacional de inicialização da rede:
592 /
Talvez o kernel antigo com sabedoria não conte o espaço de inode reservado estaticamente como utilizável e, portanto, não precise mostrá-lo como usado? A diferença é de 795MB em Tamanho e Usado, quase todo o espaço necessário para os inodes. Qual é o 180MB então? Se isso também é estático, não seria ótimo também subtrair isso do tamanho? Então df
poderia realmente mostrar o uso real, como outros sistemas de arquivos parecem fazer.
Do jeito que eu vejo, se meu sistema de arquivos precisa de uma quantidade estática de sobrecarga, ele apenas fornece menos espaço utilizável do que alguns outros sistemas de arquivos para a mesma quantidade de espaço absoluto. Não deveria refletir isso, e também mostrar quanto do espaço utilizável eu usei?