Kvotite sa sredstvo, s chiiato pomosht ukazvate kolko diskovo prostranstvo
mozhe da zaema daden potrebitel ili grupa na Vashata Linux sistema. S kvotite
opredeliate limitita za diskovo prostranstvo po dva nachina: broiat
inode-i (failove, ustroistva, direktorii t.n), koito daden potrebitel ili
grupa mozhe da pritezhava, kakto i broiat blokove ot diska(v povecheto sluchai
blokove ot 1K).
Kvotite zadulzhavat potrebitelite ili grupite ot potrebiteli da spazvat
tozi limit, kato po tozi nachin predpazvat ot zaemane
na tsialoto diskovo prostranstvo ot edin potrebitel i narushavane normalnata
rabota na sistemata.
Kvotite se opredeliat za razlichni failovi sistemi, potrebiteli ili grupi
ot potrebiteli.
V momenta se poddruzha edinstveno ext2 failova sistema.
Za da izpolzvate kvoti na vashata Linux mashina triabva da imate root prava
i da napravite slednite stupki.
1. Konfigurirane na Linux iadroto:
Predi da mozhe da izpolzvate kvotite na vashata sistema triabva da kompilirate
iadroto s optsiiata "Filesystems ->Quota support". Sled koeto triabva
da prekompilirate iadroto i da go instalirate.
2. Izbirane na failova sistema:
Sled kato zapochnete da izpolzvate novoto iadro triabva da reshite koia failova
sistema se nuzhdae ot kvoti. Obiknoveno tova sa dialovete v koito se namirat
direktoriite na potrebitelite na sistemata. Za da razreshite kvotite za
dadena failova sistema triabva da redaktirate /etc/fstab failut i
da dobavite usrquota i grpquota. Eto i primer:
# ustroistvo direktoriia tip
optsii
/dev/hda1 /
ext2 defaults
/dev/hda2 none
swap sw
/dev/hda3 /usr
ext2 defaults,usrquota
/dev/hdb1 /usr/users ext2 defaults,grpquota
/proc proc defaults
Klyuchovata duma "usrquota" se izpolzva kogato iskame da izpolzvame kvoti
za otdelni potrebiteli. Klyuchovata duma "grpquota"
ot svoia strana pozvoliava izpolzvaneto na kvoti za grupi ot potrebiteli
na sistemata. Ako izpolzvate tezi klyuchovi dumi -
usrquota i grpquota bez "=" togava sistemata shte tursi failovete koito
opisvat kvotite na otdelnite grupi i potrebiteli
v nachalnata direktoriia na ustroistvoto za koiato sa aktivirani kvotite.
Za konkretniia primer(t.e /etc/fstab) triabva da napishete slednite komandi:
touch /usr/quota.user
chmod 600 /usr/quota.user
touch /usr/users/quota.gruop
chmod 600 /usr/users/quota.gruop
Failut "quota.user" sudurzha v sebe si informatsiia za kvotite na
otdelnite potrebiteli, dokato failut "quota.group" opisva kvotite na otdelnite
grupi.
Mozhe da posochite ot kude se namirat tezi failove, ako ne sa razpolozheni
v glavnata direktoriia.
Tova stava po sledniiat nachin: pishete "usrquota=/usr/adm/quotasrc.user"
ako iskate da se izpolzva failut /usr/adm/quotasrc.user.
Imaite predvid maksimumut ot redove koito mozhe da slozhite v /etc/fstab.
3. Aktivirane na kvotite
Periodichno zapisite, koito se namirat v quota.* failovete, triabva
da se proveriavat dali otgovariat na tekushtoto sustoianie na sistemata. Komandata
"quotacheck" se izpolzva za da se proveri dali daden potrebitel ne e nadhvurlil
svoiata kvota.
Ne e nuzhno da demontirate failovata sistema ili da dezaktivirate kvotite
za da startirate tazi komanda, vupreki tova
ako v momenta, v koito startirate tazi komanda, ustroistvata se izpolzva
aktivno tova mozhe da dovede do greshni rezultati.
Za predpochitane e da izpolzvate "quotacheck" komandata kogato ne se
izvurshvat pochti nikakvi deistviia ot failovata sistema.
Za da proverite za deistvitelnoto diskovo prostranstvo koeto izpolzva
daden potrebitel startiraite komandata "quotacheck"
po sledniia nachin "quotacheck -avug". Izpulnenieto na komandata mozhe
da vzeme izvestno vreme na golemi failovi sistemi.
Samoto aktivirane na kvotite stava s komandata "quotaon".
Za da aktvirate kvotite avtomatichno dobavete slednite redove v niakoi
rc fail
Za Slackware tova e /etc/rc.d/rc.M
# Check quotas and then turn quota system on:
if fgrep quota /etc/fstab 1> /dev/null 2> /dev/null ; then
if [ -x /sbin/quotacheck ]; then
echo "Checking filesystem quotas..."
/sbin/quotacheck -avug
fi
if [ -x /sbin/quotaon ]; then
echo "Activating filesystem quotas..."
/sbin/quotaon -avug
fi
fi
4. Proverka na kvotite na otdelnite potrebiteli ili grupi.
Administratorut mozhe da izpolzva komandata "quota" za da prosledi izpolzvanoto
diskovo prostranstvo ot otdelen potrebitel i komandata "repquota"
za da proveri izpolzvaneto i limitite na vsichki potrebiteli na failovata
sistema.
# 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
5. Dobaviane i redaktirane na kvotite na daden potrebitel ili
grupa
Za da redaktirate kvotite na razlichnite potrebiteli ili grupi izpolzvaite
komandata "edquota". Za da redaktirate potrebitel izpolzvaite "edquota
-u" i "edquota -g" za da redaktirate grupa. Ima tochno po dva reda informatsiia
za aktivnite kvoti na dadena failova sistema.
Quotas for user user1:
/dev/hda3: blocks in use: 5799, limits (soft = 8000, hard = 10000)
inodes in use: 1454, limits (soft = 3000, hard = 4000)
Zabelezhete, che ima dva vida ogranicheniia: soft i hard. Soft ogranichenieto
pokazva kolko e preporuchitelniia razmer, koito mozhe da zaema daden
potrebitel. Ako tazi granitsa se preskochi ima "gratisen" period, prez koito
potrebitelia triabva da namali obshtiia razmer na izpolzvanite failove
. Gratisniiat period mozhe da bude promenian s komandata "edquota -t ",
rezultatut ot koiato e:
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
Redaktiraite i zapishete sudurzhanieto za da aktivirate promenite.
Osven dni - days, mozhe da izpolzvate i sec(onds), min(utes), hour(s),
day(s), week(s), i month(s). Ako sled kraia na gratisniia period
potrebitelia ne sleze pod kvotata si se izpolzva hard limita. hard limita
e absolyutniia maksimum, koito daden potrebitel mozhe da izpolzva. Ako potrebitel
nadhvurli tozi limit toi niama pravo da dobavia novi failove. Tozi
red
blocks in use: 5799, limits (soft = 8000, hard = 10000)
pokazva kolko bloka mozhe da izpolzva dadeniia potrebitel. CHesto 1 block
= 1 kilobyte.
A tozi red
inodes in use: 1454, limits (soft = 3000, hard = 4000)
pokazva kolko inodes (failove/ustroistva/i t.n) se polagat na
potrebitelia. V poveche ot sluchaite imate grupi ot potrebiteli s edna i sushta
kvota. Burz nachin da redaktire kvotata na vsichki tezi potrebiteli
e da redaktirate kvotata na edin ot tezi potrebiteli, primerno bob, sled
koeto da napishete na ruka slednata komanda
edquota -p bob `awk -F: '$3 > 499 {print $1}' /etc/passwd`
Tuk stava duma za potrebiteli, koito imat ID > 499.
Sega vsichki potrebiteli imat edna i sushta kvota, no dopulnitelno
mozhe da smenite kvotite na otdelnite potrebiteli.
6. Premahvane na kvotite za potrebitel ili grupa
Ako iskate da dezaktivirate kvotata za daden potrebnitel ili grupa
izpolzvaite programata "edquota". Pishete: edquota username | uid ili edquota
-g groupname | gid i opredelete soft limita kakto i hard limita na 0. Tova
shte e dostatuchno za da premahnete kvotata na daden potrebitel i da mu pozvoli
da izpolzva kolkoto si iska diskovo prostranstvo.
7. Spirane na kvotite za vsichki potrebiteli.
Tova stava s komandata "quotaoff". Dobre e tazi komanda da se dobavi
v skriptut, koito se izpulniava pri spirane na sistemata.
Otnovo shte dam primer sus Slackware. Tezi redove triabva da postavite
vuv failut /etc/rc.d/rc.6
# Try to turn off quota:
if fgrep quota /etc/fstab 1> /dev/null 2> /dev/null ; then
if [ -x /sbin/quotaoff ]; then
echo "Turning off filesystem quotas."
/sbin/quotaoff -a
fi
fi