Recentemente, encontrei algo estranho. Uma cópia exata de uma pasta cheia de arquivos tem um Tamanho no Disco diferente do original. Eu pude entender como isso poderia acontecer entre unidades com estruturas diferentes, exceto que esses arquivos estão exatamente nas mesmas unidades.
Eu executei vários testes para garantir que cada arquivo seja exatamente o mesmo e que todas as propriedades também sejam exatamente as mesmas.
Qual poderia ser uma explicação para isso?
Captura de tela das propriedades das duas pastas:
Captura de tela do Gerenciamento de disco:
Considerações
- A compactação não está ativada para nenhuma das pastas.
- Há apenas uma partição na unidade, portanto, ambas as pastas compartilhariam o tamanho do cluster, o sistema de arquivos (NTFS) etc.
Então, isso exigiu muita pesquisa, mas acabei descobrindo isso. Aprendi muito sobre nossos servidores por meio desse problema.
Plano de fundo das pastas
Para começar, temos duas pastas em questão. Essas pastas são 100% idênticas em termos de dados, até o binário. Essas pastas ficam em um de nossos servidores.
Este servidor específico foi recentemente colocado offline e atualizado do Windows Server 2008 para 2012 para 2016. Junto com todos os outros arquivos neste servidor, uma das pastas permaneceu no volume enquanto o servidor passava por suas atualizações. A outra pasta foi realmente duplicada de um instantâneo do servidor em seu estado de 2008 e, em seguida, colocada no servidor de 2016 atual. Portanto, temos a pasta original e a pasta duplicada. A discrepância é que a pasta duplicada ocupa mais espaço no disco do que a original.
O que eu tentei
Minha linha de raciocínio para descobrir esse problema foi detalhar a pasta duplicada e descobrir se todos os arquivos tinham tamanho incompatível no disco ou se eram apenas alguns. Para tornar essa tarefa muito mais fácil para mim, usei o WizTree da Antibody Software , que é semelhante ao WinDirStat, exceto que, por padrão, possui uma coluna para mostrar o tamanho de cada arquivo no disco, bem como seu tamanho. WinDirStat mostra apenas o tamanho, acredito. Então, pesquisei e descobri que nem todas as subpastas ou arquivos tinham tamanho incompatível no disco, apenas alguns. E os que tinham tinham algo muito peculiar para mim: arquivos com tamanho 0 no disco, mesmo tendo tamanho diferente de zero.
Algum fundo NTFS
Essa descoberta me levou a encontrar essa resposta em outra pergunta de superusuário. No contexto do meu problema, foi isso que concluí dessa resposta.
Como acabei com exatamente os mesmos arquivos com tamanhos diferentes no disco
A pasta original que passou pelas atualizações do servidor teria seus dados reescritos durante o processo, portanto o Windows reexecutou seu cálculo de NTSF e quando encontrou os arquivos que agora sabia que poderiam se tornar arquivos residentes, atualizou a contabilidade para acomodá-los, ou seja, algumas centenas de tamanho de 4kb (1x tamanho do cluster) em arquivos de disco se transformaram em tamanho de 0kb em arquivos de disco, reduzindo assim um arquivo de 245Mb para 244Mb.
Quando nosso departamento de TI usou o software de duplicação de terceiros, não apenas os dados foram copiados, mas também as informações contábeis. Esta aplicação destina-se a duplicar tudo e isso inclui a contabilidade.
O arquivo original em 2008 ocupava 245 MB, pois o NTFS não manipulava os arquivos residentes em seu cálculo. Quando os dados foram reescritos, o NTFS executou o cálculo atualizado e tornou determinados arquivos residentes. A duplicação do original de 2008 também teve suas informações contábeis copiadas, portanto os arquivos de não residentes permaneceram como não residentes.
Portanto, uma resposta sucinta sem todo o histórico necessário para entender como isso aconteceu é: uma pasta contém arquivos residentes, enquanto a outra pasta não. Isso ocorre porque uma pasta teve seus dados reescritos com cálculos que lidam com arquivos residentes, enquanto a outra pasta teve seus dados e informações contábeis copiados de um sistema que não lidava com arquivos residentes.
Menções dignas de nota
O Windows compacta automaticamente os arquivos que não são usados com frequência. Se foi compactado pelo Windows, você pode verificar:
Verifique se a compactação de conteúdo para economizar espaço em disco está habilitada.
Comparar tamanho x tamanho no disco : o conteúdo dos arquivos na imagem acima é do mesmo tamanho, mas o espaço necessário para armazená-los é diferente.
Os arquivos são armazenados em pedaços ('clusters'), e esses pedaços variam de acordo com o sistema de formatação usado para preparar a unidade e o tamanho do cluster escolhido (se você não deixar o tamanho padrão do cluster ser usado). Este documento da Microsoft mostra o tamanho padrão do cluster] para diferentes opções de formatação e para o tamanho da unidade.
Você também pode ter bifurcações de Fluxo de Dados Alternativo anexadas a arquivos no diretório fora da raiz.
O 1 MB extra de espaço provavelmente se deve à adição de metadados no inode ou no nó de índice...
Embora sejam cópias, o maior está em um diretório diferente (aninhado), portanto, possui um conjunto diferente de informações para indexação.