Problema na cota de disco excedido


12

Estou usando o Debian Squeeze. De repente, comecei a enfrentar um problema que meu usuário não pode criar diretórios e outras tarefas desse tipo. Correr mkdir abcme dá

mkdir: cannot create directory 'abc': Disk quota exceeded

Meu disco rígido não está cheio, os df -hresultados são

Filesystem            Size  Used Avail Use% Mounted on
/dev/md1              1.8T   39G  1.8T   3% /
tmpfs                 7.8G     0  7.8G   0% /lib/init/rw
udev                  7.8G  148K  7.8G   1% /dev
tmpfs                 7.8G     0  7.8G   0% /dev/shm
/dev/md0              243M   31M  200M  14% /boot

uname -a saída que pode ser necessária é

Linux server 2.6.32-5-686-bigmem #1 SMP Sun Sep 23 10:27:25 UTC 2012 i686 GNU/Linux

Nota: Se eu entrar como root, tudo estará bem. Esse problema é apenas com um usuário específico

Editar : saída dequota

Disk quotas for user user (uid 1000): none

saída de quota -g

Disk quotas for group user (gid 1000): 

Filesystem  blocks   quota   limit   grace   files   quota   limit   grace
/dev/disk/by-uuid/26fa7362-fbbf-4a9e-af4d-da6c2744263c
8971324* 1048576 1048576    none   43784       0       0  

1
Peça ao usuário para executar quotae enviar os resultados.
Flup 14/03/13

out of quotaadded
Gursimran 14/03

E quanto a quota -g(cota do grupo)? Você tem cotas nesse sistema de arquivos? A execução quotacheckajuda?
Gilles 'SO- stop be evil'

saída do quota -gadicionado acima. Não sei sobre cotas no meu sistema de arquivos. Tudo o que sei é que defini a opção de cota ilimitada no webmin para dois dos usuários que estou executando no meu debian. De repente, esse usuário começou a me dar um problema de cota sem nenhuma alteração feita por mim. Em relação a quotacheckele não está funcionando, me dando-sh: quotacheck: not found
Gursimran

Respostas:


7

O disco não está cheio, mas o espaço em disco permitido para esse usuário está cheio. Você precisa verificar quota(1), talvez persuadir o suspeito a limpar o lixo ou, em uma explosão de bondade, aumentá-lo com ele edquota(8).


2
Ambos os comandos que você me pediu para executar deram o meu erro de sintaxe. edquota(8)me deu-bash: syntax error near unexpected token '8'
Gursimran 14/03

2
A (8)refere-se a secção 8 (comandos administrativos) dos manuais Unix.
vonbrand

12

O problema no meu caso foi que eu havia excedido o número de inodes (entradas de arquivo) suportados pelo sistema de arquivos. O comando

df -i

revelou o problema na minha VM:

Filesystem      Inodes   IUsed IFree IUse% Mounted on
/dev/vzfs      1500000 1500000     0  100% /

A exclusão de alguns arquivos pequenos desnecessários ou o aumento da quantidade de inodes (mais complicados) resolve o problema. Um comando como esse pode ajudar a localizar quais diretórios possuem muitos arquivos (nesse caso, pesquisando sob / var):

find /var -type d -size +256k

1
Eu acho que este comando é melhor: find / -xdev -printf '%h\n' | sort | uniq -c | sort -kn1. Retirado da resposta a seguir .
X-yuri

1

Não uso o Debian Squeeze, mas tive um problema semelhante e talvez isso possa ajudar outra pessoa. Minha conta de usuário é para um aluno, então é significativamente menor do que se eu estivesse executando o Linux no meu computador em casa, mas ainda assim ... Em um programa que eu estava executando, a saída era gravada em um arquivo. Corri para um loop infinito e tive que cntrl-C do programa para cancelá-lo. Depois que isso aconteceu, continuei recebendo o erro de que minha cota estava cheia e não consegui salvar nada. Solução: exclua o arquivo de saída no qual meu loop estava gravando. Depois de excluir isso e corrigir meu loop, minha cota foi liberada novamente.


0

Verifique suas configurações de cota de disco de acordo com o seguinte tutorial oficial do Debian .


Isso é bastante confuso, eu já visitei este guia, mas não ajudou em nada.
Gursimran 14/03
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.