/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 1
Aby 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 1
Zamieñ usrquota na grpquota jeśli potrzebujesz
ograniczenia dla grup.
/dev/hda1 / ext2 defaults 1 1
/dev/hda2 /usr ext2 defaults,grpquota 1 1
A 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.userquota.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