Kvotesystemet kan begrense diskplass avsatt til en bruker, eller gruppe av brukere. For å sette det opp må du ha en kjerne som støtter det (utarbeidet med CONFIG_QUOTA
alternativ) - som er tilfellet med Debian-kjernene. Kvotehåndteringsprogrammet finnes i quota Debian-pakken.
For å aktivere kvoter i et filsystem må du angi usrquota
og grpquota
-valgene i /etc/fstab
for henholdsvis bruker- og gruppekvotene. Deretter vil omstart av maskinen oppdatere kvotene når det ikke er diskaktivitet (en nødvendig betingelse for riktig bokføring av allerede brukt diskplass).
Kommandoen edquota bruker
(eller edquota -g gruppe
) tillater deg å endre grensene mens bruken av gjeldende diskplass undersøkes.
Kvotesystemet lar deg sette fire grenser:
two limits (called “soft” and “hard”) refer to the number of blocks consumed. If the filesystem was created with a block-size of 1 kibibyte, the 1024 available bytes of each block can only be assigned to one file. Unsaturated blocks thus induce losses of disk space. A quota of 100 blocks, which theoretically allows storage of 102,400 bytes, will, however, be saturated with just 100 files of 500 bytes each, only representing 50,000 bytes in total.
two limits (“soft” and “hard”) refer to the number of inodes used. Each file occupies at least one inode to store information about it (permissions, owner, timestamp of last access, etc.). It is thus a limit on the number of user files.
En «myk» grense kan overskrides midlertidig; brukeren vil bare bli advart om at de overstiger kvoten fra warnquota
-kommandoen, som vanligvis er utløst av cron
. En «hard» grense kan aldri bli overskredet: Systemet vil nekte enhver operasjon som vil føre til at en hard kvote blir overskredet.
Med edquota -t
-kommandoen, kan du definere en maksimal tillatt «nådeperiode» («grace period») innenfor hvilken en myk grense kan overskrides. Etter denne perioden, vil den myke grensen bli behandlet som en hard grense, og brukeren vil måtte redusere sin bruk av diskplass til denne grensen, for å kunne skrive noe på harddisken.