mam VPS. Jest zarządzany dzięki notorycznie podobnym rozwiązaniom plesk.
dzisiaj zacząłem widzieć wiadomości (początkowo za pomocą wordpress, ale także z powłoki wiersza poleceń), mówiąc: „Przekroczono limit miejsca na dysku”.
user@machine:~$ echo aaa > /tmp/aaa
-bash: /tmp/aaa: Disk quota exceeded
ale na komputerze jest dużo miejsca i tylko 1 partycja.
user@machine:~$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vzfs 100G 24G 77G 24% /
Usunąłem wszystkie pliki z / tmp / *, ale nadal.
Nic nie wiem o „vzfs”, może może to winowajca?
Co mogło pójść nie tak? i jak to naprawić?
Rozwiązanie!
(jeśli NIE korzystasz z Parallels Plesk, patrz odpowiedź @ Adalee)
Zobacz rozwiązanie @deltik, istotne dla systemu Parallel, jak w moim przypadku.
df -i natychmiast podał niezwykle dużą liczbę i-węzłów: 18 446,744,069,620,218,961, co jest szalone dla witryny wordpress.
dalej badałem i stwierdziłem, że kolejka qmail'a jest pełna i-węzłów (jest zapełniona próbami jakiegoś hakera, aby użyć mojego komputera do spamowania i odpowiedzi na niepowodzenia)
naprawianie qmail'a nie jest tutaj istotne, ale moje obejście jest istotne:
- zatrzymał usługę qmail
- nie mogłem pobrać qmhandle do systemu przekraczania kwot, więc musiałem
- rozpakuj i prześlij skrypt na inną stronę internetową,
- usuń kolejkę za pomocą tego polecenia:
- perl <(wget -O - http://link.to.my/script.pl ) -D
w ten sposób skrypt działa bezpośrednio z sieci (co nie jest bezpieczną praktyką, ale sam umieściłem tam skrypt), z opcjami wiersza poleceń.
dzięki @deltik za znajomość i szybkie rozpoznanie tego osobliwego ustawienia na miejscu oraz zapewnienie środków do dalszej diagnozy !!!
vzfs
przyczyną może być (wirtualny system plików OpenVZ). Widziałem wielu dostawców OpenVZ, którzy sprzedają nieprawdopodobnie tanie serwery, ale ustawili na nich niemożliwie głupie ograniczenia.Odpowiedzi:
Posiadasz system plików VZFS, co oznacza, że twój VPS jest maszyną wirtualną Parallels Virtuozzo. W Virtuozzo dostawca hostingu może ustawić limity dla wielu parametrów, w tym przydziałów, jakie otrzymujesz dzięki VZFS.
Przyczyna: Brak węzłów (najczęściej)
Po latach pracy z setkami klientów Virtuozzo VPS, którzy mieli problem z tworzeniem plików, mimo że wydawało się, że jest dużo wolnego miejsca, zdecydowana większość z nich osiągnęła limit i-węzłów. Uruchom to polecenie, aby zobaczyć przydział i-węzłów (
Inodes
), używane i-węzły (IUsed
), pozostałe i-węzły (IFree
) oraz procent używanych i-węzłów (IUse%
):Posiadanie 100% użycia i-węzła zdarza się często. Najczęstsze przyczyny mojego doświadczenia:
session.gc_maxlifetime
na ponad sto latRozwiązywanie problemów
Jeśli stwierdzisz, że masz mało lub brakuje i-węzłów, ale nie wiesz, gdzie jest większość z nich, mam ten linijkę Bash, która przeszukuje bieżący katalog i zlicza i-węzły na głębokości folderu 1:
Możesz ciągle zmieniać bieżący katalog roboczy, poczynając od,
/
aż znajdziesz winowajcę, który zużyje alokację węzła.Wyjaśnienie
Twój VPS działa na systemie plików VZFS, który jest częścią Parallels Virtuozzo (nie OpenVZ, który jest podobny i oparty na tej samej technologii, ale OpenVZ nie używałby VZFS).
Ze względu na sposób, w jaki Virtuozzo przechowuje pliki w VZFS, i-węzły są często bardziej ograniczone niż w innych systemach plików, takich jak ext4 lub XFS. Host śledzi wszystkie te pliki i byłoby korzystne dla dostawcy hostingu, aby nie pozwolić, aby pojedynczy VPS zajął setki milionów i-węzłów. W rezultacie dostawca hostingu może ustawić niski limit i-węzłów, na przykład 1 000 000 i-węzłów.
Po latach pracy z setkami klientów, którzy wyczerpali przydział i-węzłów na Virtuozzo, te „tajemnicze” problemy z przydziałem dysku już mnie nie zaskakują.
Przyczyna: Inne granice wirtuozzo
Bardzo mały odsetek klientów Virtuozzo VPS, z którymi współpracowałem, miał problemy z systemem plików, ponieważ przekroczyły inne granice. Za pomocą tego polecenia możesz zobaczyć niektóre (ale nie wszystkie) ograniczenia:
Rozwiązywanie problemów
Jeśli
failcnt
kolumna ma wartość większą niż 0 lubheld
wartość kolumny jest równa odpowiedniejlimit
wartości, osiągnąłeś limit.Możesz sprawdzić, jaki jest każdy parametr na wiki OpenVZ tutaj . Parametr może być „pierwotny”, „wtórny” lub „pomocniczy”.
Skontaktuj się z dostawcą usług hostingowych, aby uzyskać dalszą pomoc, jeśli okaże się, że nie możesz zmniejszyć
held
liczby limitu osiągniętego przez VPS.Ta odpowiedź może zostać znacznie rozszerzona w zależności od tego, która fasola została maksymalnie zwiększona, ponieważ różne limity osiągane powodują różne objawy.
Przyczyna: Zmniejszono limit (y) po trafieniu
Jeśli chodzi o,
/proc/user_beancounters
lubdf -i
czasami administrator systemu Virtuozzo, może zmniejszyćlimit
parametr poniżejheld
wartości.Na przykład, jeśli pierwotny limit
diskinodes
parametru wynosił 1 500 000 i osiągnąłeś limit, to ktoś u twojego dostawcy hosta ustawił limit twojego i-węzła na 1 000 000, zobaczyłbyś dziwny raport zdf -i
i- węzła, który nie ma sensu.Na twoim końcu możesz zobaczyć nieuzasadnioną liczbę, na przykład 18 446,744,069,620,218,961 .
Uważam to za złowrogie zachowanie dostawcy usług hostingowych, zwłaszcza jeśli nie informują o tym, ponieważ niezwykłe wartości, które widzisz, są sprzeczne z wiedzą superużytkowników, którzy nie mają doświadczenia z Virtuozzo / OpenVZ, co prowadzi do wprowadzających w błąd rada ( przykład , inny przykład ).
Rozwiązywanie problemów
Skontaktuj się z dostawcą usług hostingowych. Pokaż im, co znalazłeś, i współpracuj z nimi, aby utrzymać trzymaną fasolę poniżej limitu.
Jeśli odmówią ci pomocy, porzuć swojego dostawcę usług hostingowych i znajdź innego, który nie korzysta z wirtualizacji Virtuozzo / OpenVZ. Wirtualizacja KVM, wirtualizacja VMware, wirtualizacja Xen lub serwery bez systemu operacyjnego podlegałyby znacznie mniejszym ograniczeniom niż Virtuozzo / OpenVZ.
Wyjaśnienie
Twój dostawca hostingu mógł kontrolować lub odpowiadać na alert i stwierdził, że Twój VPS zużywał zbyt wiele określonego zasobu (prawie zawsze limit i-węzłów, który jest
diskinodes
parametrem na ich końcu).Niedoświadczony administrator Virtuozzo u dostawcy hostingu wierzy, że może poradzić sobie z tym problemem, zmniejszając limit do poziomu niższego niż faktyczne zużycie zasobów. W przypadku i-węzłów możesz mieć mniejszy przydział, na przykład 1 000 000, nawet jeśli twoje aktualne użycie może być wyższe, na przykład 1 500 000.
Administrator Virtuozzo w swoim panelu sterowania zobaczyłby twoje aktualne użycie i nowy limit, ale zobaczyłbyś fałszywe liczby, które są prawdopodobnie bardzo nieuzasadnione wysokie ze względu na sposób wirtualizacji Virtuozzo.
Niedbały administrator Virtuozzo nie poinformuje cię o tej zmianie, dlatego powinieneś skontaktować się z dostawcą usług hostingowych, jeśli tak się stanie.
źródło
„Przekroczono limit miejsca na dysku” nie oznacza, że na dysku nie ma dostępnego miejsca, ale nie wolno używać tak dużo miejsca.
Zasadniczo przydziały są pewnymi limitami ustalanymi przez administratora - maksymalna liczba procesów, które można uruchomić, ile miejsca można zająć, ile plików można mieć itp. Przydziały dysku można ustawić dla maksymalnej liczby i-węzłów i bloków dysku.
Spróbuj uruchomić
quota
iquota -g
(alternatywnie możesz uruchomićrepquota -u
irepqouta -g
), aby sprawdzić, czy użytkownik jest ograniczony w ten sposób i jak. Jeśli tak, możesz edytować te przydziały za pomocąedquota
lub wyłączyć je za pomocąquotaoff
polecenia. W tym celu może być konieczne zalogowanie się jako użytkownik root, w zależności od ustawień.Ta strona zawiera kilka przykładów pracy z przydziałami, a także zawiera linki do stron podręcznika do przydatnych poleceń.
źródło