Estou usando o Dirvish em um sistema de servidor Ubuntu para fazer o backup de um hd em uma unidade usb 3.0 externa. Até alguns dias atrás, tudo funcionava bem, mas agora cada backup falha com "nenhum espaço deixado no dispositivo (28)" e "sistema de arquivos cheio". Infelizmente não é assim tão simples: há > 500 GB livres no dispositivo.
Detalhes:
rsync_error:
rsync: write "/mnt/backupsys/shd/gesichert1/20130223_213242/tree/<SomeFilename1>.eDJiD9": No space left on device (28)
rsync: writefd_unbuffered failed to write 4 bytes to socket [sender]: Broken pipe (32)
rsync: write "/mnt/backupsys/shd/gesichert1/20130223_213242/tree/<SomeFilename2>.RHuUAJ": No space left on device (28)
rsync: write "/mnt/backupsys/shd/gesichert1/20130223_213242/tree/<SomeFilename3>.9tVK8Z": No space left on device (28)
rsync: write "/mnt/backupsys/shd/gesichert1/20130223_213242/tree/<SomeFilename4>.t3ARSV": No space left on device (28)
[... some more files ...]
rsync: connection unexpectedly closed (2712185 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(605) [sender=3.0.9]
o log parece quase normal até atingir:
<SomeFilename1>
<SomeFilename2>
<SomeFilename3>
<SomeFilename4>
<PartOfAFilename>filesystem full
write error, filesystem probably full
broken pipe
RESULTS: warnings = 0, errors = 1
Mas, como dito acima, há muito espaço no dispositivo:
df -h
/dev/sdg1 2.7T 2.0T 623G 77% /mnt/backupsys/shd
e também há muitos inodes restantes:
df -i
/dev/sdg1 183148544 2810146 180338398 2% /mnt/backupsys/shd
O dispositivo é montado como rw:
mount
/dev/sdg1 on /mnt/backupsys/shd type ext3 (rw)
O processo está sendo executado como root.
Eu estava prestes a dizer que não mudei nada, mas isso não é bem verdade:
Eu liguei o acl para o drive que estou fazendo backup:
/dev/md0 on /mnt/md0 type ext4 (rw,acl)
Poderia ser esse o problema? Se sim, como? root ainda tem acesso total aos arquivos.
EDITAR:
Acabei de verificar os diretórios temporários:
- / tmp contém apenas uma pasta .webmin que está vazia
- / var / tmp está vazio
o sistema de arquivos em que esses diretórios residem tem bastante espaço livre e inodes:
df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 289G 55G 220G 20% /
df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/sda1 19202048 167644 19034404 1% /
EDIT2:
Os diretórios são bastante grandes, mas não > 2 GB. Aquele em que o backup falha não é sequer um dos maiores, ele contém 7530 arquivos.
EDIT3:
Uma informação que não considerei relevante ao postar esta pergunta:
Um dia antes de os backups começarem a falhar, eu havia ativado os acls nos sistemas de arquivos dos quais foi feito backup. Suponho agora que isso acionou o Dirvish (ou rsync) para pensar que todos os arquivos foram alterados, de modo que a lista de arquivos a serem copiados, em vez de vinculados, era muito grande. Isso poderia significar que alguns buffers eram muito pequenos.
Hoje, um backup completo para um disco vazio funcionou perfeitamente. Vou tentar um backup incremental em seguida. Isso mostrará se a ativação de acls foi a causa do problema.