Hoje baixei vários arquivos. O aplicativo AFAIK reserva espaço para todo o arquivo desde o início. Para o 1º e 2º arquivos, vi que a RAM disponível diminuiu logo após o início do download, mas para o 3º não havia espaço suficiente (por mensagem), apaguei alguns e o download começou. Mas para minha surpresa free
continuou a mostrar grande espaço disponível. Verifiquei o tamanho do arquivo pensando que talvez o aplicativo reservasse apenas parte do espaço para iniciar, mas não, o tamanho do arquivo estava cheio de vários GBs, conforme mostrado no Nemo. Eu pensei que talvez eu acidentalmente apaguei mais do que o esperado, mas após o download free
não mostrou quase nenhuma memória disponível. Como o sistema de arquivos pode relatar um objeto (arquivo) considerável, mas não ocupa espaço?
O sistema é baseado no Ubuntu liveUSB, inicializado na RAM, findmnt
por /
dizer cow
, portanto, hesito em chamá-lo tmpfs
porque não conheço bem os scripts de inicialização (e também não tenho certeza de quais tags aplicar à pergunta). Posso tentar reproduzir o problema na unidade puramente tmpfs se for importante identificar a causa. Oh, meu problema - como posso confiar nas informações de vários utilitários do Linux se as informações se contradizem?
O tamanho aparente dos arquivos não é necessariamente o mesmo que o espaço que eles realmente ocupam no disco:
Na verdade, não tenho um disco de 10PiB e, felizmente
hugefile
, não ocupa 10PiB:O campo importante aqui é o número de blocos, 0.
Esses arquivos são conhecidos como arquivos esparsos.
Muitas ferramentas de download funcionam assim quando sabem de antemão qual é o tamanho final do arquivo: elas darão ao arquivo seu tamanho total, fazendo com que o arquivo fique com um tamanho aparente sempre igual ao seu tamanho “real” final, e, em seguida, gravam no arquivo à medida que recebem seu conteúdo, alocando progressivamente espaço no disco. Isto é o que você está vendo.