Ok, isso é estranho ... não há espaço suficiente para remover um arquivo!
Isso acaba sendo um problema relativamente comum com o ZFS, embora possa surgir em qualquer sistema de arquivos que tenha instantâneos .
A explicação é que o arquivo que você está tentando excluir ainda existe em um instantâneo. Então, quando você excluí-lo, o conteúdo continua existindo (apenas no instantâneo); e o sistema deve gravar adicionalmente as informações de que o instantâneo possui o arquivo, mas o estado atual não. Não há mais espaço para essa informação extra.
Uma correção de curto prazo é encontrar um arquivo que tenha sido criado após o último snapshot e excluí-lo. Outra possibilidade é encontrar um arquivo que tenha sido anexado após o snapshot mais recente e truncá-lo para o tamanho que ele tinha no momento do último snapshot. Se o seu disco ficou cheio porque algo está enviando spam para seus logs, tente cortar os maiores arquivos de log.
Uma correção mais aplicável geralmente é remover alguns instantâneos. Você pode listar instantâneos com zfs list -t snapshot
. Não parece ser uma maneira fácil de prever quanto espaço será recuperado se você destruir um snapshot em particular, porque os dados que ele armazena podem se tornar necessários por outros snapshots e, portanto, permanecerão ativos se você destruir esse snapshot. Portanto, faça backup de seus dados em outro disco, se necessário, identifique um ou mais instantâneos dos quais você não precisa mais e execute zfs destroy name/of/snap@shot
.
Existe uma discussão extensa sobre este assunto em este tópico de fórum do OpenSolaris .