V systému Linux můžete nastavit diskovou kvótu jedním z následujících způsobů:
- Přidělení základní diskové kvóty systému souborů
- Přidělování diskových kvót na základě uživatele nebo skupiny
U kvóty založené na uživateli nebo skupině je třeba zvážit následující tři důležité faktory:
- Pevný limit – Pokud například zadáte 2 GB jako pevný limit, uživatel nebude moci vytvářet nové soubory po 2 GB
- Měkký limit – Pokud například zadáte 1 GB jako měkký limit, uživatel dostane varovnou zprávu „překročena disková kvóta“, jakmile dosáhne limitu 1 GB. Stále však budou moci vytvářet nové soubory, dokud nedosáhnou pevného limitu
- Dodatečná lhůta – Pokud například určíte 10 dní jako lhůtu odkladu, poté, co uživatel dosáhne svého pevného limitu, bude mu povoleno dalších 10 dnů na vytváření nových souborů. V tomto časovém období by se měli pokusit dostat zpět na limit kvóty.
1. Povolit kontrolu kvót na souborovém systému
Nejprve byste měli určit, který souborový systém je povolen pro kontrolu kvóty.
Upravte /etc/fstab a přidejte klíčová slova usrquota a grpquota do odpovídajícího souborového systému, který chcete monitorovat.
Následující příklad ukazuje, že na /home filesystem
je povolena kontrola kvót uživatelů i skupin# cat /etc/fstab LABEL=/home /home ext2 defaults,usrquota,grpquota 1 2
Po výše uvedené změně restartujte server.
2. Počáteční kontrola kvót na souborovém systému Linux pomocí kontroly kvót
Jakmile v souborovém systému povolíte kontrolu diskových kvót, nejprve shromážděte všechny informace o kvótách, jak je uvedeno níže.
# quotacheck -avug quotacheck: Scanning /dev/sda3 [/home] done quotacheck: Checked 5182 directories and 31566 files quotacheck: Old file not found. quotacheck: Old file not found.
Ve výše uvedeném příkazu:
- a:Zkontrolujte všechny systémy souborů s povolenými kvótami
- v:Podrobný režim
- u:Zkontrolujte kvótu disku uživatele
- g:Zkontrolujte kvótu skupinového disku
Výše uvedený příkaz vytvoří soubor aquota pro uživatele a skupinu v adresáři souborového systému, jak je uvedeno níže.
# ls -l /home/ -rw------- 1 root root 11264 Jun 21 14:49 aquota.user -rw------- 1 root root 11264 Jun 21 14:49 aquota.group
3. Přidělte uživateli diskovou kvótu pomocí příkazu edquota
Chcete-li upravit informace o kvótě pro konkrétního uživatele, použijte příkaz edquota, jak je uvedeno níže.
Chcete-li například změnit diskovou kvótu pro uživatele „ramesh“, použijte příkaz edquota, který otevře měkké a pevné limitní hodnoty v editoru, jak je uvedeno níže.
# edquota ramesh Disk quotas for user ramesh (uid 500): Filesystem blocks soft hard inodes soft hard /dev/sda3 1419352 0 0 1686 0 0
Jakmile příkaz edquota otevře v editoru nastavení kvóty pro konkrétního uživatele, můžete nastavit následující limity:
- měkký a pevný limit pro velikost diskové kvóty pro konkrétního uživatele.
- měkký a pevný limit pro celkový počet inodů, které jsou povoleny pro konkrétního uživatele.
4. Nahlaste využití diskové kvóty pro uživatele a skupinu pomocí repquota
Pomocí příkazu repquota, jak je uvedeno níže, nahlaste využití diskové kvóty pro uživatele a skupiny.
# repquota /home *** Report for user quotas on device /dev/sda3 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 john -- 26604 0 0 172 0 0
5. Přidejte kontrolu kvót do denní úlohy cron
Přidejte kontrolu kvót do denní úlohy cron. Vytvořte soubor kvóty, jak je znázorněno níže v adresáři /etc/cron.daily, který bude každý den spouštět příkaz kvóty. Tím se odešle výstup příkazu kvóty na kořenovou e-mailovou adresu.
# cat /etc/cron.daily/quotacheck quotacheck -avug