Hvordan sette opp, og drifte et Skolelinux nettverk.: Hvordan bruke mindre tid på å drifte, og mer på opplæring av elevene. | ||
---|---|---|
Forrige | Kapittel 5. Etter at installasjonen er ferdig-I | Neste |
Først må vi installere de nødvendige pakkene, om vi ikke allerede har dem installert.
apt-get install quota quotatool
Deretter må vi muliggjøre bruk av kvoter på den ønskede partisjonen, må da først legge inn en linje i fila /etc/fstab. Gjør dette for partisjonen /skole/tjener/home0
/dev/vg_data/lv_home0 /skole/tjener/home0 ext3 defaults,usrquota,grpquota 0 2med flaggene 'usrquota' og 'grpquota' så har vi nå muliggjort bruk av brukerkvoter og gruppekvoter på partisjonen /skole/tjener/home0, for at dette skal tre i kraft må partisjonen umountes og så mountes, evt du rebooter maskinen.
Så må vi lage databasene som inneholder info om kvotene:
touch /skole/tjener/home0/quota.user touch /skole/tjener/home0/quota.group chmod 600 /skole/tjener/home0/quota.user chmod 600 /skole/tjener/home0/quota.groupDeretter sjekker du at quota.user og quota.group er tomme før databasene initialiseres:
ls -lh /skole/tjener/home0/quota*
skal gi at quota.user og quota.group har null størrelse. Deretter initialiseres databasene med kommandoenquotacheck -avug
deretter sjekker du at databasene ikke lenger er null i størrelsels -lh /skole/tjener/home0/quota*
Så skrur vi på kvotene: quotaon -a
Så må vi sette kvoter på noen brukere.
edquota -u klaustar oss inn i en vi-basert kvoteeditor der setter vi opp kvoten slik vi vil ha den for klaus, hvis vi synes at dette er slik vi vil ha det for alle våre brukere, så kan vi bruke kvotestørrelsen til klaus som mal for de andre brukerene. Når dette er gjort, så sjekker vi hvordan tilstanden på diskkvotene nå er,
repquota /skole/tjener/home0gir da
tjener:~# repquota /skole/tjener/home0 *** Report for user quotas on device /dev/vg_data/lv_home0 Block grace time: 7days; Inode grace time: 7days Block limits File limits User used soft hard grace used soft hard grace ---------------------------------------------------------------------- root -- 1198381 0 0 12832 0 0 daemon -- 4 0 0 5 0 0 bin -- 1 0 0 1 0 0 man -- 1000 0 0 28 0 0 lp -- 81 0 0 198 0 0 mail -- 5233 0 0 444 0 0 news -- 1 0 0 1 0 0 proxy -- 126788 0 0 4722 0 0 junkbust -- 5 0 0 3 0 0 klaus -- 1993 1500 2000 268 0 0 test16 -- 5 0 0 4 0 0 test15 -- 5 0 0 4 0 0 test14 -- 5 0 0 4 0 0 test13 -- 5 0 0 4 0 0Her har brukeren klaus en softlimit på 1.5MB og en hardlimit på 2MB.
Hvis vi har en liste med brukernavn i fila Liste_Med_Brukernavn.txt på formen jan janak janne så kan vi gi alle disse samme kvotestørrelse som klaus med kommandoen
for x in `cat Liste_Med_Brukernavn.txt `;do edquota -p klaus $x;doneHvis vi nå ser på hvordan tilstanden på kvotene er, så skal vi se at alle brukerene har fått samme kvote som klaus
tjener:~# repquota /skole/tjener/home0 *** Report for user quotas on device /dev/vg_data/lv_home0 Block grace time: 7days; Inode grace time: 7days Block limits File limits User used soft hard grace used soft hard grace ---------------------------------------------------------------------- root -- 1198381 0 0 12832 0 0 daemon -- 4 0 0 5 0 0 bin -- 1 0 0 1 0 0 man -- 1000 0 0 28 0 0 lp -- 81 0 0 198 0 0 mail -- 5233 0 0 444 0 0 news -- 1 0 0 1 0 0 proxy -- 126788 0 0 4722 0 0 junkbust -- 5 0 0 3 0 0 klaus +- 1993 1500 2000 268 0 0 test16 -- 5 1500 2000 4 0 0 test15 -- 5 1500 2000 4 0 0 test14 -- 5 1500 2000 4 0 0 test13 -- 5 1500 2000 4 0 0Hvis du bruker LDAP så kan du kjapt skaffe deg en liste over dine brukere med kommandoen
getent passwd|grep home0|cut -d":" -f1>Liste_Med_Brukernavn.txtsjekk at Liste_Med_Brukernavn.txt er slik du vil ha den.
Aktuelle kommandoer for å lære seg mere om diskkvoter for brukere og grupper er
man edquota
man quota
man quotacheck
man quotaoff
man quotaon
man quotastats
man quotatool
man repquota
Det hender noen ganger at et program "slår seg vrang" og begynner å skrive enorme mengder med feilmeldinger til fila .xsession-errors på brukerens hjemmeområde. Noen program, spesielt GIMP har den egenskap at det er istand til å på noen få minutter å lage en så stor .xsession-erros at hele harddisken blir full, med det resultat at alt slutter å virke, da må root-brukeren inn på Hovedtjeneren og først finne denne fila, deretter slette den. Dette er ikke spesielt trivelig, eller ønskelig i en skolehverdag.
Derfor, selv om en slik feilmeldingsfil som .xessions-errors sikkert er nyttig å ha for å diagnostisere problemer, så er den mer til ugang i skolehverdagen, derfor velger vi å velge bort denne egenskapen, det gjør vi ved å omdirigere alle meldinger som ellers ville ha blitt skrevet til denne fila, rett til søpplebøta /dev/null.
Ved å endre på noen linjer i fila /etc/X11/Xsession, sett et kommentartegn(#) foran disse linjene, på denne måten:
#ERRFILE=$HOME/.xsession-errors # ## attempt to create an error file; abort if we cannot #if touch $ERRFILE 2> /dev/null && [ -w $ERRFILE ]; then # chmod 600 "$ERRFILE" #elif ERRFILE=$(tempfile 2> /dev/null); then # if ! ln -sf "$ERRFILE" "${TMPDIR:=/tmp}/xsession-$USER"; then # message "Xsession: unable to symlink \"$TMPDIR/xsession-$USER\" to" \ # "\"$ERRFILE\"." # fi #else # errormsg "Xsession: unable to create X session log/error file. Aborting." #fi # #exec > "$ERRFILE" 2>&1Og sett inn disse to linjene istdedenfor:
errfile="/dev/null" exec > "$errfile" 2>&1Nå trenger du ikke å være redd for at .xsession-errors vil fylle opp hele harddisken din.