Używam Debian Squeeze. Nagle zacząłem mierzyć się z problemem, że mój użytkownik nie jest w stanie tworzyć katalogów i innych podobnych zadań. Bieganie mkdir abc
daje mi
mkdir: cannot create directory 'abc': Disk quota exceeded
Mój dysk twardy nie jest pełny df -h
wyniki są
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
wyjście, które może być potrzebne, to
Linux server 2.6.32-5-686-bigmem #1 SMP Sun Sep 23 10:27:25 UTC 2012 i686 GNU/Linux
Uwaga: jeśli zaloguję się jako root, wszystko będzie dobrze. Ten problem dotyczy tylko określonego użytkownika
Edycja : wyjście zquota
Disk quotas for user user (uid 1000): none
wyjście z 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
quota
i przesłanie wyników.quota
added addedquota -g
(limitem grupowym)? Czy w ogóle masz przydziały w tym systemie plików? Czy bieganiequotacheck
pomaga?quota -g
dodany powyżej. Nie wiem o limitach w moim systemie plików. Wiem tylko, że ustawiłem opcję nieograniczonej kwoty w webmin dla dwóch użytkowników, których używam na moim debianie. Nagle ten użytkownik zaczął mi dawać problem z przydziałem bez dokonywanych przeze mnie zmian. Jeśli chodzi oquotacheck
to, że to nie działa, daj mi-sh: quotacheck: not found
Odpowiedzi:
Dysk nie jest pełny, ale miejsce na dysku dla tego użytkownika jest pełne. Musisz to sprawdzić
quota(1)
, być może przekonać podejrzanego, aby wyczyścił swoje śmieci, lub w wybuchu dobroci zwiększyć jeedquota(8)
.źródło
edquota(8)
dał mi-bash: syntax error near unexpected token '8'
(8)
Odnosi się do sekcji 8 (komendy administracyjne) podręcznikach Unix.Problem w moim przypadku polegał na tym, że przekroczyłem liczbę i-węzłów (wpisów plików) obsługiwanych przez system plików. Komenda
ujawniłem problem na mojej maszynie wirtualnej:
Usunięcie niepotrzebnych małych plików lub zwiększenie liczby i-węzłów (bardziej skomplikowane) rozwiązuje problem. Komenda taka jak ta może pomóc w zlokalizowaniu katalogów, w których jest dużo plików (w tym przypadku wyszukiwanie pod / var):
źródło
find / -xdev -printf '%h\n' | sort | uniq -c | sort -kn1
. Zaczerpnięte z następującej odpowiedzi .Nie używam Debian Squeeze, ale miałem podobny problem i może to pomóc komuś innemu. Moje konto użytkownika jest przeznaczone dla studenta, więc jest znacznie niższe niż gdybym uruchamiał Linuksa z mojego domowego komputera, ale nadal ... W programie, w którym działałem, dane wyjściowe były zapisywane do pliku. Wpadłem na nieskończoną pętlę i musiałem cntrl-C z programu, aby ją anulować. Po tym zdarzeniu nadal pojawiał się błąd, że mój przydział jest pełny i nie mogę nic zapisać. Rozwiązanie: Usuń plik wyjściowy, do którego zapisywała moja pętla. Po usunięciu tego i naprawieniu mojej pętli mój limit został ponownie zwolniony.
źródło
Sprawdź ustawienia przydziałów dysku zgodnie z następującym oficjalnym Debian HowTo .
źródło