POLITECHNIKA KRAKOWSKA

if [ -x /sbin/quotacheck ]

then

INSTYTUT INFORMATYKI STOSOWANEJ M-7

echo "Checking quotas. This may take some time."

/sbin/quotacheck -avug

Systemy Operacyjne

Laboratorium

2 x 45min

echo " Done."

fi

Temat: System LINUX – Zarządzanie zasobami dyskowymi użytkowników if [ -x /sbin/quotaon ]

then

1. Wstęp

echo "Turning on quota."

Ćwiczenie ma na celu zapoznanie się z podstawowymi informacjami dotyczącymi

/sbin/quotaon -avug

zarządzania kontami użytkowników systemów Unix/Linux oraz z konfiguracją fi

ograniczeń wykorzystania zasobów dyskowych przez użytkowników.

4. Quota

w

systemie

Quota - ograniczanie wielkości konta

Teraz trzeba dodać Quotę do systemów plików na naszym dysku. Zrobimy to 2.

Co to quota?

edytując plik /etc/fstab. Po opcji default dopisz słowo usrquota by ustawić Quotę dla konkretnych użytkowników. U mnie wpis dla partycji głównej wygląda tak: Quota jest to pakiet umożliwiający ograniczenie wielkości dysku twardego dostępnego dla konta (dla użytkownika, który na tym koncie zapisuje swoje dane.

/dev/VolGroup00/LogVol00 / ext3 defaults,usrquota 1 1

Quota robi to na dwa sposoby: albo ograniczając liczbę węzłów, albo liczbę bloków.

Dzięki Quotàcie możemy być pewni, że żaden user nie zapełni nam dysku Jeśli chcemy ustawiać ograniczenia dla całej grupy użytkowników, zamiast userqouta twardego, a przez to nie stworzy niebezpieczeństwa błędnej pracy systemu. Poza musimy wpisać grpquota :

tym bardzo modne jest udostępnianie np. 50 Mb na stronę, więc do roboty. Nasz cel to Quota!

/dev/VolGroup00/LogVol00 / ext3 defaults,grpquota 1 1

Kompilacja jądra i instalacja oprogramowania

Możemy też ustawić ograniczenia przestrzeni dyskowej równocześnie dla użytkowników i grup:

Aby móc skorzystać z Quoty musimy mieć wkompilowaną w jądro jej obsługę. Nie wiem czy jest to zrobione standardowo bo moje jajko (po instalacji systemu) od razu jest kompilowane na nowe. Aby wkompilować Quotę do jądra należy zaznaczyć

/dev/VolGroup00/LogVol00 / ext3 defaults,userquota,grpquota 1 1

opcję Quota support w menu Filesystem.

5.

Plik z informacjami dla Quoty

Oprócz kompilacji jądra należy także doinstalować odpowiednie oprogramowanie. W

przypadku Red Hata 6.1 można zainstalować pakiet z płyty cdrom o nazwie i wersji Tworzymy teraz plik z informacjami dla Quoty. Musimy to zrobić z poziomu rootà, a qouta-1.66-8.i386.rpm. Robimy to wydając polecenie:

plik ten musi należeć tylko i wyłącznie dla rootà. Utworzymy go w katalogu głównym partycji i będzie nosił nazwę quota.user

rpm -i qouta-1.66-8.i386.rpm

Tworzymy teraz plik z informacjami dla Quoty. Musimy to zrobić z poziomu rootà, a plik ten musi należeć tylko i wyłącznie dla rootà. Utworzymy go w katalogu głównym 3.

Automatyczny start Quoty

partycji, której ograniczenia będą dotyczyć i będzie nosił nazwę quota.user Aby nasza Quota działała musimy sprawić by pliki inicjujące system automatycznie Z konta rootà wpisujemy:

sprawdzały i uruchamiały Quotę. Bardzo ważną zasadą jest, aby skrypt inicjujący Quotę znajdował się (wykonywał) po wykonaniu wszystkich poleceń montujących dyski i partycje! Jeśli nie zrobimy tego poprawnie Quota może nie działać touch /quota.user

prawidłowo. Dla pewności napisz skrypt na końcu pliku inicjującego chmod 600 /quota.user

/etc/rc.d/rc.sysinit lub /etc/rc.d/rc.local.

Analogicznie dla grupy:

# Sprawdź quotę i włącz ją

touch /quota.group

repquota - podaje użycie systemu plików

chmod 600 /quota.group

repquota -a

Jeśli mamy katalogi umieszczone na osobnych partycjach np. /home, to musimy utworzyć quota.user i quota.group na tych partycjach. Dla przykładu: quotaon, quotaoff - startuje lub zatrzymuje quotę.

touch /home/quota.user

8. Przypisywanie

takich samych limitów dla większej ilości użytkowników touch /home/quota.group

chmod 600 /home/quota.user

Aby za jednym zamachem ustawiæ limit dla, powiedzmy 100 użytkowników, taki sam chmod 600 /home/quota.group

jak dla artur, najpierw trzeba ustawić ręcznie limity dla artur, a potem wykonać polecenie:

Restart systemu

edquota -p artur àwk -F: '$3 > 499 {print $1}' /etc/passwd`

Aby nasze zmiany i wpisy poskutkowały musimy zresetować system.

6. Limity

zakładając, że używasz powłoki csh i że twoi użytkownicy mają numery UID

zaczynające się od 500.

Limity użytkownikom przypisuje się za pomocą polecenia edquota. Gdy wpiszemy edqota artur (artur = login naszego użytkownika) uruchomi się nam standardowy Są trzy terminy, z którymi powinieneś się zapoznać: Soft Limit, Hard Limit i Grace edytor zapisany w zmiennej EDITOR. Czas wyedytować quotę dla artura!

Period.

• Soft Limit. Normalnie, soft limit określa maksymalną objętość dysku, jaką Quotas for user artur

użytkownik ma przyznaną. Ale jeśli połączymy to z grace period, to soft limit

/dev/hda3: blocks in use: 2594, limits (soft = 5120, hard = 6000) określa nam granicę, po przekroczeniu której użytkownik zostaje ostrzeżony.

inodes in use: 356, limits (soft = 1000, hard = 1500)

• Hard Limit. Działa to jedynie przy ustawieniu grace period. Określa to absolutny limit na dysku, którego dany użytkownik nie może przekroczyć.

•

Dla objaśnień. Block in use oznacza aktualną ilość miejsca zajmowaną przez Grace Period. Jest to okres czasu, po jakim zacznie działać opcja soft link.

Wartości tej opcji podaje się poleceniem edquota -t. Jednostkami czasu mogą naszego użytkownika, inodes in use to całkowita liczba plików, które użytkownik być: sekundy, minuty, godziny, dni, tygodnie lub miesiące. Oto co zobaczysz posiada.

po wydaniu polecenia edquota -t:

Dla całych grup limity ustawiamy tak samo z wyjątkiem, że zamiast user podajemy group, no i wpisujemy oczywiście nazwę istniejącej grupy.

Wracając do limitów wartość soft oznacza maksymalną wartość jaką użytkownik ma przyznaną, ale istnieje jeszcze grace period, która razem z soft limit stanowi nieprzekraczalną ilość dostępnego miejsca - hard limit

Grace period ustawia się wydając polecenie edquota -t Time units may be: days, hours, minutes, or seconds

Grace period before enforcing soft limits for users:

/dev/hda3: block grace period: 7 days, file grace period: 7 days 7 days oznacza okres czasu, można go zamienić z dni na godziny, minuty, sekundy.

7. Inne

polecenia:

quotacheck - wykonuje skanowanie filesystemu ze zwróceniem uwagi na jego użycie systemu plików i katalogów,