Jest to pakiet umożliwiający limitowanie zużycia dysków na dwa sposoby: ilość węzłów jaką można przydzielić użytkownikowi; ilość bloków dysku jaką można przydzielić użytkownikowi.
Podstawową ideą Quoty jest to, że użytkownicy zmuszani są do ograniczenia swoich zasobów i co za tym idzie odebranie im ich zdolności do zabierania nieskończonej ilości pamięci dyskowej.
Obsługa Quoty została zintegrowana z jądrem od wersji 1.3.8x i jest także w wersji 2.0. Jeśli twój system nie obsługuje Quoty, to proponuje go uaktualnić.
Obecnie Quota działa tylko dla systemu plików ext2
.
/pub/Linux/kernel
./pub/Linux/sunsite/system/admin/
.
/pub/Linux/sunsite/system/admin/
.# Sprawdź quotę i włącz ją if [ -x /usr/sbin/quotacheck ] then echo "Checking quotas. This may take some time." /usr/sbin/quotacheck -avug echo " Done." fi if [ -x /usr/sbin/quotaon ] then echo "Turning on quota." /usr/sbin/quotaon -avug fi
/etc/fstab
zostały zamontowane, bo
inaczej quota nie będzie działać. Zalecam włączanie quoty na końcu
pliku inicjalizującego twój system, albo jeśli wolisz, zaraz po
fragmencie kiedy twoje systemy plików są montowane./etc/fstab
/dev/hda1 / ext2 defaults 1 1 /dev/hda2 /usr ext2 defaults 1 1Aby dodać quotę do systemu plików, dodaj usrquota do czwartego pola zawierającego default: (szczegóły w
man fstab
)
/dev/hda1 / ext2 defaults 1 1 /dev/hda2 /usr ext2 defaults,usrquota 1 1Zamień usrquota na grpquota jeśli potrzebujesz ograniczenia dla grup.
/dev/hda1 / ext2 defaults 1 1 /dev/hda2 /usr ext2 defaults,grpquota 1 1A może potrzebujesz ograniczeń i dla użytkowników i dla grup?
/dev/hda1 / ext2 defaults 1 1 /dev/hda2 /usr ext2 defaults,usrquota,grpquota 1 1
quota.user
quota.user
, powinien należeć do
"root-a" oraz zapis i odczyt do niego powinien mieć także tylko
"root".
Zaloguj się jako "root". Przejdź do podstawowego katalogu na
partycji, którą chcesz objąć quotą i stwórz plik quota.user
:
touch /partycja/quota.user touch /partycja/quota.group chmod 600 /partycja/quota.user chmod 600 /partycja/quota.group
Operację tę wykonuje się poleceniem edquota
(szczegóły
man edquota
).
Normalnie uruchomiłbym quotacheck
z opcjami -avug
, aby
zyskać jak najaktualniejszy obraz systemu plików, przed edycją
plików quoty. Jest to jednak tylko moje przyzwyczjenie a nie
wymagany krok.
Oto przykład. Mam użytkownika, którego login to bob.
Polecenie edquota bob
uruchomi edytor vi (lub ten podany
w zmiennej $EDITOR), w którym będzie można edytować limit dla
użytkownika bob dla każdej partycji, na której jest włączona
quota:
Quotas for user bob: /dev/hda2: blocks in use: 2594, limits (soft = 5120, hard = 6400) inodes in use: 356, limits (soft = 1000, hard = 1500)
"blocks in use" - jest całkowitą ilością bloków (w kilobajtach) jaką
zużył dany użytkownik.
"inodes in use" - jest całkowitą liczbą plików jaką użytkownik ma na
dysku.
Teraz mam grupę games. Polecenie edquota -g games
znowu uruchamia edytor vi, aby edytować limity dla tej grupy:
Quotas for group games: /dev/hda4: blocks in use: 5799, limits (soft = 8000, hard = 10000) inodes in use: 1454, limits (soft = 3000, hard = 4000)
Aby za jednym zamachem ustawić limit dla, powiedzmy 100 użytkowników, taki sam jak dla boba, najpierw trzeba ustawić ręcznie limity dla boba, a potem wykonać polecenie:
edquota -p bob `awk -F: '$3 > 499 {print $1}' /etc/passwd`
zakładając, że używasz powłoki csh i że twoi użytkownicy mają numery UID zaczynające się od 500.
Dodatkowo są jeszcze trzy inne terminy, z którymi powinieneś się
zapoznać: Soft Limit, Hard Limit i Grace Period
.
edquota -t
.
Jednostkami czasu mogą być: sekundy, minuty, godziny, dni, tygodnie
lub miesiące. Oto co zobaczysz po wydaniu polecenia edquota -t
:
Time units may be: days, hours, minutes, or seconds Grace period before enforcing soft limits for users: /dev/hda2: block grace period: 0 days, file grace period: 0 days
Program ten jest używany do analizowania systemu plików ze względu
na bieżące zużycie i uaktulaniania zapisu w pliku
quota.user
. Zalecam uruchamianie tego programu co jakiś
okres czasu poprzez crontab oraz podczas startu systemu.
Program ten podaje sumaryczne wiadomości dotyczące aktualnego zużycia systemu plików. Przykładowe wyjście tego polecenia może wyglądać tak:
# repquota -a Block limits File limits User used soft hard grace used soft hard grace root -- 175419 0 0 14679 0 0 bin -- 18000 0 0 735 0 0 uucp -- 729 0 0 23 0 0 man -- 57 0 0 10 0 0 user1 -- 13046 15360 19200 806 1500 2250 user2 -- 2838 5120 6400 377 1000 1500
Pierwszy z tych dwóch programów służy do włączania quoty, a drugi do wyłączania. Właściwie oba pliki są podobne. Są wykonywane podczas startu systemu i jego zamknięcia.
Tłumaczenie to jest chronione prawami autorskimi © Bartosza Maruszewskiego. Dozwolone jest rozprowadzanie i dystrybucja na prawach takich samych jak dokument oryginalny.
Jeśli znalazłeś jakieś rażące błędy ortograficzne, gramatyczne, składniowe, techniczne to pisz do mnie:
Napewno znajdziesz tu jakieś niejasne i niepolskie konstrukcje. Jeśli wpadniesz na lepszy pomysł daj mi znać.
Oficjalną stroną tłumaczeń HOWTO jest http://www.jtz.org.pl/
Aktualne wersje przetłumaczonych dokumentów znajdują się na
tejże stronie. Dostępne są także poprzez anonimowe ftp pod adresem
ftp.jtz.org.pl w katalogu /pub/Linux/JTZ/
.
Przetłumaczone przeze mnie dokumenty znajdują się także na mojej stronie WWW. Są tam też odwołania do Polskiej Strony Tłumaczeniowej.
Kontakt z naszą grupą, grupą tłumaczy możesz uzyskać poprzez listę
dyskusyjną jtz@ippt.gov.pl. Jeśli chcesz sie na nią zapisać, to
wyślij list o treści subscribe jtz Imię Nazwisko
na adres
majordomo@ippt.gov.pl