Ubuntu - Sem espaço deixado no dispositivo (NTFS)

11

Eu tenho um servidor que armazena muitos dados, eu mantenho muitos diretórios aninhados com milhões de arquivos neles.

Ao tentar mover um grande diretório (~ 700 GB) de um disco para outro, recebo um erro:

mv /media/storage3/dir /media/storage4/

"No space left on device"

Além disso, tentar criar um pequeno arquivo txt no disco não funciona:

Error opening file '/media/storage4/Untitled Document': No space left on device

Eu verifiquei muitas opções on-line, nenhuma delas funcionou.

saída df -h:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sdg7        77G  9.2G   64G  13% /
none            4.0K     0  4.0K   0% /sys/fs/cgroup
udev             32G  4.0K   32G   1% /dev
tmpfs           6.3G  1.4M  6.3G   1% /run
none            5.0M     0  5.0M   0% /run/lock
none             32G   76K   32G   1% /run/shm
none            100M   48K  100M   1% /run/user
/dev/sdg6        19G  6.7G   11G  39% /home
/dev/sdb1       440G  278G  140G  67% /var
/dev/sda1       2.8T  2.0T  764G  73% /media/storage1
/dev/sdh1       2.8T  1.6T  1.3T  56% /media/storage2
/dev/sdi1       2.8T  1.7T  1.2T  60% /media/storage3
/dev/sdf1       2.8T  876G  1.9T  32% /media/storage4

saída df -i:

Filesystem         Inodes    IUsed      IFree IUse% Mounted on
/dev/sdg7         5079040   514215    4564825   11% /
none              8242449        2    8242447    1% /sys/fs/cgroup
udev              8239750      611    8239139    1% /dev
tmpfs             8242449      696    8241753    1% /run
none              8242449        5    8242444    1% /run/lock
none              8242449        4    8242445    1% /run/shm
none              8242449       28    8242421    1% /run/user
/dev/sdg6         1220608   218613    1001995   18% /home
/dev/sdb1        29310976 12863877   16447099   44% /var
/dev/sda1       858436804 41630853  816805951    5% /media/storage1
/dev/sdh1      1356948436 38728057 1318220379    3% /media/storage2
/dev/sdi1      1217505624 34748869 1182756755    3% /media/storage3
/dev/sdf1      2048962648 36308921 2012653727    2% /media/storage4

Lendo on-line, as pessoas disseram que problemas semelhantes acontecem por causa do acesso a uma enorme quantidade de arquivos e que configurar fs.inotify.max_user_watches para uma quantidade alta pode resolvê-lo, eu aumentei de 8192 para 1000000, mas não ajudou.

    
por PeterN 26.03.2015 / 13:48

3 respostas

1

Execute o seguinte:

lsof -s | sort -nrk 7 | head

Você verá a saída assim:

firefox    2997                     j   52rr     REG              252,0 10485760    5505182 /some/path
firefox    2997                     j   50rr     REG              252,0 10485760    5505182 /some/path
firefox    2997                     j    3rr     REG              252,0 10485760    5505182 /some/path
firefox    2997                     j   39rr     REG              252,0 10485760    5505182 /some/path
firefox    2997                     j   31ur     REG              252,0 10485760    5505182 /some/path

Nota; o acima é apenas um exemplo que você precisará usar seu julgamento para encontrar o uso do espaço.

Sobre a saída:

  • A coluna 7 é o tamanho do espaço em uso.
  • A coluna 4 é o descritor de arquivos.

Você pode remover o conteúdo no descritor de arquivo para recuperar esse espaço:

cat /dev/null > /proc/2997/fd/50

Obviamente, isso destruirá todos os dados desse descritor de arquivos.

    
por 17.07.2015 / 20:58
0

Você pode tentar um tar para copiar todos os dados e depois removê-los:

cd /media/storage3/; tar cfp - ./dir | ( cd /media/storage4; tar xfp - )

Isso preservará toda a propriedade, permissões e links

    
por 15.04.2015 / 23:21
0

Eu teria usado rsync -avrz storage3 storage4 e depois apagado os arquivos depois, mas eu tenho outra pergunta por que você tem esses compartilhamentos usando sistema de arquivos NTFS se você estiver usando Linux (Ubuntu) então eu teria ido para ext4 ou ReiserFS, ButterFS . Se esses compartilhamentos estiverem localizados em uma caixa do Windows, tente mover esses arquivos do Windows para o Windows usando o robocopy, o que é excelente nesse sentido. Robocopy funciona principalmente como rsync.

página man do rsync: link

página de ajuda para robocopy: link

página de suporte para drivers 3g-ntfs para Linux: www.tuxera.com/community/open-source-ntfs-3g /

Perguntas frequentes sobre o 3g-ntfs: www.tuxera.com/community/ntfs-3g-faq /

Eu suspeito que algo deve ser corrigido dentro dos drivers do sistema de arquivos NTFS que você está usando na sua instalação do Ubuntu, qual distribuição do NTFS você está usando, como você montou os discos, eles são locais conectados à caixa do ubuntu? eles são montados usando iSCSI de uma SAN?

Há mais para essa solução de problemas do que apenas "Não consigo mover meus arquivos, eles estão localizados no NTFS e estou executando o Ubuntu para movê-los."

    
por 19.04.2015 / 14:08