Server dedicat Linux: cum sa folosesti “quota”

Pe un server de hosting pe care ruleaza o distributie de Linux, puteti configura cota de spatiu pe disc folosind una dintre urmatoarele metode:

– Sistemul de baza al fisierelor si cotele de spatiu pentru disc
– Alocarea cotelor de spatiu in functie de utilizatori sau grupuri de utilizatori

Daca ne referim la alocarea cotelor de spatiu / utilizator sau grupuri de utilizatori trebuie sa tinem cont de:

hard limit – limita maxima alocata; daca un utilizator are setat hard limit la 2GB, in contul sau nu se vor mai putea crea fisiere daca s-au ocupat cei 2 GB
soft limit – daca specificam 1 GB ca soft limit, utilizatorul va primi un mesaj de atentionare cand a depasit aceasta limita, insa se vor putea crea in continuare fisiere in contul sau
grace period (perioada de gratie) – de exemplu, daca specificam 5 zile ca perioada de gratie, dupa ce s-a atins limita maxim, in urmatoarele 5 zile utilizatorul va putea crea noi fisiere. Dupa depasirea acestei perioade, aceasta posibilitate nu va mai fi disponibila (ideal este, daca ati atins limita, in aceasta perioada de gratie sa incercati sa faceti ordine in cont pentru a va incadra cu spatiul in limita pe care o aveti)

Pentru a activa cota de spatiu (quota) trebuie sa vedeti mai intai care sistem de fisiere va permite acest lucru

Se modifica fisierul /etc/fstab si se adauga optiunile usrquota si grpquota in dreptul partitiei pe care doriti activarea cotei de spatiu. Presupunand ca acest lucru se va face pe partitia /home, fisierul /etc/fstab ar trebui sa arate asa:

# cat /etc/fstab
LABEL = /home /home ext3 defaults, usrquota, grpquota 1 2

Pentru ca modificarea de mai sus sa se realizeze, este necesar un restart al acelui server dedicat.

Dupa activarea cotei de spatiu (quota) se face verificarea sistemului de fisiere utilizand comanda:

# quotacheck -avug
quotacheck: Scanning /dev/sda2 [/home] done
quotacheck: Checked 7182 directories and 39667 files
quotacheck: Old file not found.
quotacheck: Old file not found.

Comanda de mai sus a fost executata cu parametrii -avug si in urma executarii va crea 2 fisiere, aquota.user si aquota.group in directorul /home
a – verifica sitemul de fisiere care are cota de spatiu activata
v – mod verbose
u – verifica cotele de spatiu pentru utilizatori
g – verifica cotele de spatiu pentru grupurile de utilizatori

# ls -l /home/
-rw——- 1 root root 11264 Oct 31 14:49 aquota.user
-rw——- 1 root root 11264 Oct 31 14:49 aquota.group

Pentru a edita cota de spatiu pentru un anumit utilizator vom folosi comanda edquota. De exemplu, daca dorim sa modificam cota de spatiu a utilizatorului Megahost:

# edquota megahost
Disk quotas for user megahost (uid 500):
Filesystem blocks soft hard inodes soft hard
/dev/sda3 1419352 0 0 1686 0 0

In urma executarii acestei comenzi se vor putea seta valorile soft si hard limit pentru utilizatorul megahost

Daca se doreste afisarea cotelor de spatiu ale utilizatorilor de pe server si procentul in care fiecare utilizator foloseste aceste cote de spatiu vom folosi comanda repquota:

# repquota /home
*** Report for user quotas on device /dev/sda2
Block grace time: 7days; Inode grace time: 7days
Block limits File limits
User used soft hard grace used soft hard grace
———————————————————————-
root — 566488 0 0 5401 0 0
nobody — 1448 0 0 30 0 0
ramesh — 1419352 0 0 1686 0 0
megahost — 26604 0 0 172 0 0

Pentru o verifica zilnica a cotelor de spatiu, se poate adauga un cron job editand fisierul /etc/cron.daily/quotacheck daca acesta exista, sau creand un fisier nou care va contine comanda: quotacheck -avug

# cat /etc/cron.daily/quotacheck
quotacheck -avug

4. Raport utilizarea contingentului disc pentru utilizatori şi de grup folosind repquota

Utilizaţi comanda repquota aşa cum se arată mai jos pentru a raporta utilizarea contingentului disc pentru utilizatori şi grupuri.

# Repquota / home
Raport *** pentru contingentele ghidul de pe aparat / dev/sda3
Block timp har: 7 zile; inode timp har: 7 zile
Blocare limitele limitele fişier
Ghid de utilizat graţie moale disk utilizat graţie moale tare
————————————————– ——————–
rădăcină – 566488 0 0 5401 0 0
nimeni – 1448 0 0 30 0 0
Ramesh – 1419352 0 0 1686 0 0
john – 26604 0 0 172 0 0
5. Adaugă quotacheck la locuri de muncă cron de zi cu zi

Adaugă quotacheck la locul de muncă cron de zi cu zi. Creaţi un fişier quotacheck aşa cum se arată mai jos, sub / etc / cron.daily director, care se va desfăşura comanda quotacheck de zi cu zi. Aceasta va trimite datele de ieşire ale comenzii quotacheck la rădăcină adresa de e-mail.

# Cat / etc / cron.daily / quotacheck
quotacheck-avug