Remover arquivos no ZFS não libera espaço em disco

2

Estou tentando liberar espaço em um ZFS removendo arquivos. Eles são grandes (> 1GB), por isso devem aparecer nos números. Infelizmente, depois de desvincular os arquivos, df não mostra nenhum aumento no espaço disponível. Parece que os arquivos removidos têm hardlinks em algum lugar (mas ls mostra os contadores de hardlink de 1 para todos os arquivos, a menos que eu crie um hardlink manualmente (o que testei)).

O script que remove os arquivos abre, lê e fecha esses arquivos (verifiquei isso), portanto, não há identificadores de arquivos abertos. Depois, usa unlink() para remover os arquivos. ls também não mostra mais. Apenas o espaço em disco disponível não aumenta.

Estamos usando o recurso ZFS de instantâneos. Talvez esta seja uma razão pela qual nada é libertado?

Todas as ideias ou dicas para documentação sobre o meu problema são bem-vindas.

    
por Alfe 17.10.2013 / 16:16

1 resposta

2

De acordo com a documentação do zfs da Oracle,

A snapshot is a read-only copy of a file system or volume. Snapshots can be created almost instantly, and they initially consume no additional disk space within the pool. However, as data within the active dataset changes, the snapshot consumes disk space by continuing to reference the old data, thus preventing the disk space from being freed.

Se você quiser que o espaço em disco seja liberado, será necessário limpar os instantâneos que fazem referência a esse arquivo. Você também pode querer ler em copy-on-write , que é como zfs funciona .

Na verdade, não tenho experiência com o zfs, mas faço uso de btrfs . O btrfs faz instantâneos de uma maneira similar ao zfs e exatamente o mesmo 'problema' aparece lá. Naturalmente, como não desejo que um arquivo excluído no conjunto de trabalho atual seja removido de um instantâneo, certamente esperaria que o espaço em disco disponível permanecesse constante ao remover um arquivo. Afinal, o arquivo não é removido até que todas as referências (em todos os instantâneos) sejam removidas.

    
por 17.10.2013 / 16:44