Eeldus:
kernel kompileerimine
kataloogistruktuur
Mitme kasutajaga arvutites on hea hoida kõvaketta ruumi kontrolli all. Selles mõttes, et mõni kasutaja sinna liiga palju asju ei salvestaks (blocks) või sinna liiga palju tillukesi faile (inodes) ei teeks.
Seda asja kontrollib kernelisse sisse kompileeritud asi nimega quota.
kui quota on nö. peal siis saab näha mis värk on käsuga
repquota -va, kus a - all disks, v - verbose
nt. näeb mdagi sellist:
bash# repquota -vau
*** Report for user quotas on /dev/hda6 (/)
Block limits
File limits
User
used soft hard grace
used soft hard grace
root --
54234 0
0 335
0 0
bin --
1133 0
0
23 0 0
daemon --
2 0
0
3 0 0
news --
1600 0
0 165
0 0
uucp --
806 0
0
40 0 0
200 --
554 0
0
23 0 0
500 --
12680 0
0 1943
0 0
501 --
89 0
0
19 0 0
507 --
2330 0
0 151
0 0
508 --
2048 0
0 133
0 0
512 --
1922 0
0
84 0 0
558 --
26 0
0
4 0 0
583 --
836 0
0 305
0 0
imre --
419 100000 120000
58 20000 40000
www --
276 0
0
26 0 0
kaak --
4 8000 12000
6 20000 40000
1003 --
27 0
0
1 0 0
1046 --
25949 0
0 2124
0 0
1052 --
174 0
0
23 0 0
1618 --
1716 0
0
83 0 0
2549 --
34938 0
0 163
0 0
3009 --
4 0
0
1 0 0
7550 --
1162 0
0 114
0 0
Näeme, et asi kehtib partitsiooni /dev/hda6 kohta ning tegu on
user quotaga. Saab määrata ka grupi quotat mida siin ei vaata.
Siit näeme, et kasutaja imre on kasutanud ara 419 kB talle antud
100 000 kB-st. Teatud tingimustel saab ta kasutada kuni 120 MB kõvakettaruumi.
Millistel tingimustel j akuidas neid tingimusi muuta selgub allpool.
Samuti näeme, et imrel on 58 faili kusjuures failide maksimaalne
arv võib olla 20 000 tükki. Teatud tingimustel 40 000 tükki.
Selline pilt on arvtis kui quota töötab.
Quota saab nö. maha ja peale keerata käskudega:
quotaon -va
quotaoff -va
enda quotat saab vaadata käsuga
quota -v
superuser saab vaadata teiste quotat käsuga
quota -v username
Kuidas quota peale panna ?
1. esmalt tuleb teha sissekanded /etc/fstab-i, selliselt;
/dev/hda7 swap
swap defaults
0 0
/dev/hda6 /
ext2 defaults,usrquota
0 1
/dev/hda2 /nt.40
vfat defaults
0 2
/dev/hda5 /os2
vfat defaults
0 2
/dev/hda8 /hda8
ext2 defaults
0 1
/dev/hdc1 /hdc1_300
ext2 defaults
0 2
/dev/hdc5 /hdc5_800
vfat defaults
0 2
/dev/fd0
/floppy ext2
noauto
0 0
/dev/fd0
/a vfat
noauto
0 0
/dev/hdd
/cdrom iso9660 ro,
noauto 0 0
none
/proc proc
defaults 0
0
Oluline on tähelepanna, et quota alla pandud kõvaketta juures on usrquota
2. siis tuleb luua roodule rw õigustega ja teistele r õigustega fail quota.user
touch quota.user
3. siis tuleb teha reboot (et arvuti fstab-i
uuesti läbi loeks, eks saab ka kuidagi teisiti:)
4. editeerida usrite quotad.
See editor on vaikimisi vi, mis aga paljudele ei meeldi, selleparast
onehk hea vi-d enne vähe uurida. Nii et oskaks vähemalt teha
muutusi, salvestada ja sulgeda.
käsk userite quotade editeerimiseks on selline:
edquota -u username
igaljuhul kui asi õnnestus siis avaneb vi millegi sellisega:
Quotas for user imre:
/dev/hda6: blocks in use: 0, limits (soft = 0, hard = 0)
inodes in use: 0, limits
(soft = 0, hard = 0)
Ning siin tuleb aarvud muuta nii nagu süda kutsub, ehk mitte päris:
Ülaltoodud kasutajale imre vastab selline asi:
Quotas for user imre:
/dev/hda6: blocks in use: 419, limits (soft = 100000, hard = 120000)
inodes in use: 58, limits
(soft = 20000, hard = 40000)
Niisiis, tehes muutused ära on asi korras.
5. panna quota peale käsuga quotaon -va
6. käivitada programm quotacheck -va
Et näha kas asi toimis võib vaadata
repquota -va
Peaks toimima.
Grace period
Eelpool märgiti, et teatud olukorras võib hoida imre ka
120 000 kB infot. Seda võimaldab nn. grace.
Vaatame seda konkreetselt kasutaja kaak näitel ja nii nagu olukorda
näeb/saab muuta administraator .
edquota -u kaak
Quotas for user kaak:
/dev/hda6: blocks in use: 10110, limits (soft = 8000, hard = 12000)
inodes in use: 19, limits
(soft = 20000, hard = 40000)
edquota -tu kaak
Time units may be: days, hours, minutes, or seconds
Grace period before enforcing soft limits for users:
/dev/hda6: block grace period: 7 days, file grace period: 7 days
Siin on kirjas aeg mille jooksul alates ületamisest jäävad üle 8000 kB ja alla 12 000 kB asjad kaagil alles. Kui aeg 7 päeva ületatakse, siis kustutatakse niipalju faile kui tarvis. Kui kaak on püüdnud tekitada enda rhokem kui 12 000 kB väärtuses kraami, siis ta saab lihtsalt veateate, et nii ei lähe kohe mitte. Ja kõik.
Antud juhul on kaak üle oma nn. soft limiti, miska repquotat tehes näeme:
bash# repquota -vau
*** Report for user quotas on /dev/hda6 (/)
Block limits
File limits
User
used soft hard grace
used soft hard grace
root --
54237 0
0 339
0 0
bin --
1133 0
0
23 0 0
daemon --
2 0
0
3 0 0
news --
1600 0
0 165
0 0
uucp --
806 0
0
40 0 0
200 --
554 0
0
23 0 0
500 --
12680 0
0 1943
0 0
501 --
89 0
0
19 0 0
507 --
2330 0
0 151
0 0
508 --
2048 0
0 133
0 0
512 --
1922 0
0
84 0 0
558 --
26 0
0
4 0 0
583 --
836 0
0 305
0 0
imre --
419 100000 120000
58 20000 40000
www --
276 0
0
26 0 0
kaak +-
10110 8000 12000 7days
19 20000 40000
1003 --
27 0
0
1 0 0
1046 --
25949 0
0 2124
0 0
1052 --
174 0
0
23 0 0
1618 --
1716 0
0
83 0 0
2549 --
34938 0
0 163
0 0
3009 --
4 0
0
1 0 0
7550 --
1162 0
0 114
0 0
On selge et edquota ja repquota on kasud administraatori jaoks.
Kasutaja saab teada kus maal ta on käsuga
quota -v
ning kaak näeb midagi sellist:
suvi:~$ quota -v
Disk quotas for user kaak (uid 1002):
Filesystem blocks quota
limit grace files quota
limit grace
/dev/hda6 10110*
8000 12000 7days
20 20000 40000