Espaço livre no sistema de arquivos ZFS que está faltando inesperadamente

3

Indo reformular completamente essa questão, já que ainda é uma questão de produção excepcional vários meses depois.

Eu tenho uma caixa FreeNAS 0.7.2, baseada no FreeBSD 7.3-RELEASE-p1, rodando o ZFS com drives SATA 4x1TB no RAIDz1.

Parece que perdi 1 TB de espaço utilizável depois de criar e excluir um arquivo esparso de 1 TB. Isso aconteceu meses atrás.

Esta tabela mostra a situação atual.

command         actual             expected           ok/not ok

du -c           1.47TB used        1.47TB used        ok

zfs list        used 2.48TB        used 1.47TB        not ok
                avail 206GB        avail 1.2TB        not ok

zpool list      size 3.64TB        size 3.64TB        ok
                used 3.31TB        used 1.95TB        not ok
                avail 334GB        avail 1.69TB       not ok

Windows right   Disk size 2.67TB   Disk size 2.67TB   ok
  click disk,   Used 2.47TB        Used 1.47          not ok
  properties    free 206GB         free 1.2TB         not ok

Windows select  total file size    total file size
  all files,      1.48TB             1.48TB           ok
  right click, 
  properties
  • Nenhum instantâneo em qualquer parte do pool
  • A compactação está desativada
  • O De-dupe está desativado
  • A versão do pool do ZFS é 13
  • A versão do ZFS FS é 3
  • Usando a versão "incorporada" do FreeNAS
  • O arquivo foi criado com dd usando / dev / zero como entrada, excluído usando rm, tudo como raiz
  • O arquivo foi definitivamente excluído
  • O Windows pode ver a pasta via SMB
  • a versão do Windows é 7
  • Não sei como determinar se o bug sugerido por um respondente abaixo foi resolvido no pool do ZFS e nas versões do FS no FreeBSD que estou usando

Exclua qualquer pergunta que você goste, eu posso pegar uma concha na caixa de qualquer lugar.

Realmente aprecie qualquer conselho ou pensamentos. Tom

    
por tomfanning 20.10.2010 / 14:04

4 respostas

8

A solução veio por meio da lista de discussão zfs-discuss - este post .

Aparece a saída de zfs list -t snapshot alterada em algum momento e havia um instantâneo oculto consumindo o espaço extra:

There was a change where snapshots are no longer shown by default.
This can be configured back to the old behaviour setting the zpool 
"listsnapshots" property to "on"

Otherwise, you need to use the "-t snapshot" list.

But, a much better method of tracking this down is to use: 
    zfs list -o space

That will show the accounting for all dataset objects.
 -- richard

Pensei que valeria a pena postar isso aqui e marcá-lo como a resposta, mesmo após esse período.

    
por 21.09.2011 / 23:04
2

listsnapshots é uma propriedade que controla apenas se a saída padrão de zfs list mostra os instantâneos ou não. Não "ativa ou desativa instantâneos".

Para listar tudo, incluindo instantâneos, use este comando:

zfs list -t all

Para listar somente instantâneos, use este comando:

zfs list -t snapshot

edit : você pode ter encontrado este bug do ZFS . Para confirmar que esse bug é a causa, tente novamente com um arquivo não esparso. O erro deve ocorrer apenas para arquivos grandes e esparsos, como aqueles criados por mkfile ou copiando de /dev/zero .

Este bug foi corrigido no Solaris, mas talvez ainda exista na versão do FreeBSD que você está usando.

    
por 20.10.2010 / 14:57
1

Existe um arquivo delta entre BEs. Use beadm list para verificar se você possui BEs. Quando você remove um BE anterior, ele deve mesclar / confirmar os dados delta no disco e liberar esse espaço oculto. Você pode ver o espaço de volta somente depois de destruir um conjunto inteiro de sub-BEs marcado como a mesma data.

    
por 18.01.2018 / 22:20
-2

Na minha máquina, normalmente demora cerca de 15 segundos para que as estatísticas de uso do disco sejam atualizadas. Talvez você não tenha sido paciente o suficiente.

    
por 18.01.2011 / 17:11