XFS supporta le quote disco per utente, gruppo e progetto. Le quote disco del progetto consentono di limitare la quantità di spazio su disco nelle singole gerarchie di directory. È possibile configurare limiti sia hardware che software sul numero di blocchi del disco (o spazio su disco) e sul numero di inode, che limitano il numero di file che un utente può creare. Le quote non si applicano all'utente root.
È necessario prima abilitare le quote per utenti, gruppi e/o progetti utilizzando un'opzione di montaggio durante il montaggio per il file system XFS. Dopo aver abilitato le quote, utilizza il comando xfs_quota per impostare i limiti e visualizzare le informazioni sulle quote.
Abilitazione delle quote
Per abilitare le quote per gli utenti su un file system XFS, includi l'opzione quota nella voce /etc/fstab per il file system o monta il file system con la quota opzione:
# mount –o quota /dev/xvdb1 /xfs
Per abilitare le quote per i gruppi, includi l'opzione gquota nella voce /etc/fstab per il file system o monta il file system con gquota opzione:
# mount –o gquota /dev/xvdb1 /xfs
Per abilitare le quote per i progetti, includi l'opzione prjquota nella voce /etc/fstab per il file system o monta il file system con prjquota opzione:
# mount –o prjquota /dev/xvdb1 /xfs
In alternativa, puoi includere le opzioni di montaggio della quota nel file /etc/fstab. L'esempio seguente mostra le voci nel file /etc/fstab per abilitare le quote rispettivamente per utenti, gruppi e progetti su un file system XFS. Questi esempi montano anche il file system con autorizzazioni di lettura/scrittura:
# vim /etc/fstab /dev/xvdb1 /xfs xfs rw,quota 0 0 /dev/xvdb1 /xfs xfs rw,gquota 0 0 /dev/xvdb1 /xfs xfs rw,prjquota 0 0
Opzioni di montaggio della quota XFS
Sono disponibili altre opzioni di montaggio "quota" per i file system XFS. Di seguito è riportato un elenco completo delle opzioni di montaggio per abilitare le quote utente sui file system XFS:
- quota|uquota|usrquota :abilita le quote utente e applica i limiti di utilizzo.
- uqnoenforce :Abilita le quote utente. Segnala l'utilizzo ma non imporre limiti di utilizzo.
Le opzioni di montaggio della quota di gruppo includono quanto segue:
- gquota|grpquota :abilita le quote di gruppo e applica i limiti di utilizzo.
- gqnoenforce :Abilita le quote di gruppo. Segnala l'utilizzo ma non imporre limiti di utilizzo.
Le opzioni di montaggio della quota del progetto includono quanto segue:
- pquota|prjquota :abilita le quote del progetto e applica i limiti di utilizzo.
- pqnoenforce :Abilita le quote del progetto. Segnala l'utilizzo ma non imporre limiti di utilizzo.
Segnala informazioni sullo stato della quota
Puoi utilizzare il seguente xfs_quota comando per riportare le informazioni generali sullo stato della quota:
# xfs_quota -x -c state User quota state on /data (/dev/mapper/vg_test-lv_test) Accounting: ON Enforcement: ON Inode: #67 (1 blocks, 1 extents) Group quota state on /data (/dev/mapper/vg_test-lv_test) Accounting: OFF Enforcement: OFF Inode: #0 (0 blocks, 0 extents) Project quota state on /data (/dev/mapper/vg_test-lv_test) Accounting: OFF Enforcement: OFF Inode: #0 (0 blocks, 0 extents) Blocks grace time: [7 days] Inodes grace time: [7 days] Realtime Blocks grace time: [7 days]
Questo comando segnala se l'accounting della quota del disco di utenti, gruppi e progetti è abilitato e se vengono applicati dei limiti. Viene riportato anche il periodo di grazia per blocchi e inode. Il timer per il periodo di grazia viene abilitato ogni volta che viene superato il limite soft. Se i limiti software continuano a essere superati dopo la scadenza del periodo di grazia, non viene più allocato spazio su disco o inode.
Utilità xfs_quota
Dopo aver abilitato le quote utilizzando le opzioni di montaggio del file system XFS, utilizzare il comando xfs_quota per segnalare le informazioni sulla quota del file system, impostare i limiti di blocco e inode, abilitare o disabilitare l'applicazione della quota, modificare le informazioni di timeout dell'applicazione della quota (periodo di grazia) ed eseguire altre operazioni di gestione della quota operazioni sui file system XFS.
L'utilità xfs_quota fornisce una serie di sottocomandi utente e amministratore. Questi sottocomandi possono essere emessi in modalità interattiva o inclusi come argomenti nel comando xfs_quota. Immettere xfs_quota senza opzioni o argomenti per accedere alla modalità interattiva. Viene visualizzato un prompt xfs_quota> in modalità interattiva. Inserisci aiuto o ? per visualizzare i sottocomandi disponibili. Puoi anche inserire help commandname per visualizzare informazioni aggiuntive su un sottocomando specifico.
# xfs_quota xfs_quota> help df [-bir] [-hn] [-f file] -- show free and used counts for blocks and inodes help [command] -- help for one or all commands print -- list known mount points and projects quit -- exit the program quota [-bir] [-g|-p|-u] [-hnNv] [-f file] [id|name]... -- show usage and limits Use 'help commandname' for extended help.
Quando includi i sottocomandi xfs_quota dalla riga di comando, usa il –c [comando] opzione. Eventuali modifiche al sistema delle quote dalla riga di comando richiedono anche l'opzione -x (abilita modalità esperto) . L'esempio seguente utilizza il sottocomando limit per impostare un limite software di 5 MB e un limite rigido di 6 MB sul file system XFS per l'utente john:
# xfs_quota –x –c 'limit –u bsoft=5m bhard=6m john' /xfs
L'esempio seguente imposta un limite soft di 100 inode e un limite hard di 150 inode per il gruppo di studenti:
# xfs_quota –x –c 'limit –g isoft=100 ihard=150 students' /xfs
Visualizzazione delle informazioni sulla quota
Utilizzare il comando xfs_quota per visualizzare le informazioni sulle quote del disco. Per elencare tutti i percorsi con dispositivi e identificatori:
# xfs_quota -x -c print Filesystem Pathname /data /dev/mapper/vg_test-lv_test (uquota)
Per segnalare l'utilizzo del file system per i blocchi (-b) e gli inode (-i):
# xfs_quota -x -c 'free -hb' Filesystem Size Used Avail Use% Pathname /dev/mapper/vg_test-lv_test 35.5G 41.1M 35.4G 0% /data
# xfs_quota -x -c 'free -hi' Filesystem Inodes Used Free Use% Pathname /dev/mapper/vg_test-lv_test 18.6m 5 18.6m 0% /data
Per segnalare le informazioni sulla quota del file system:
# xfs_quota -x -c report /data User quota on /data (/dev/mapper/vg_test-lv_test) Blocks User ID Used Soft Hard Warn/Grace ---------- -------------------------------------------------- root 4 0 0 00 [--------]
Per segnalare le informazioni sulle quote in formato leggibile su /data:
# xfs_quota -x -c 'report -h' /data User quota on /data (/dev/mapper/vg_test-lv_test) Blocks User ID Used Soft Hard Warn/Grace ---------- --------------------------------- root 4K 0 0 00 [------]
Impostazione delle quote di progetto
XFS consente di impostare quote su singole gerarchie di directory. Puoi creare una voce in /etc/projects file che associa la gerarchia di directory del file system XFS a un ID progetto univoco. Ad esempio, la voce seguente in /etc/projects associa un ID progetto di 50 alla directory /data:
50:/data
È possibile utilizzare facoltativamente il file /etc/projid per associare un nome progetto a un ID progetto. Ad esempio, la voce seguente nel file /etc/projid associa il nome del progetto test all'ID progetto 50:
test:50
Dopo aver definito un progetto in /etc/projects, usa il comando xfs_quota per inizializzare la sua directory di progetto:
# xfs_quota –x –c 'project –s test' /data
Utilizzare il comando xfs_quota per impostare i limiti per i progetti con directory inizializzate. L'esempio seguente imposta un limite soft di 5 MB e un limite rigido di 6 MB per il progetto di prova:
# xfs_quota –x –c ‘limit –p bsoft=5m bhard=6m test’ /dataCome eseguire il backup e il ripristino di file system XFS (xfsdump / xfsrestore)
Esecuzione di riparazioni su filesystem XFS
Come aumentare/estendere filesystem XFS in CentOS/RHEL utilizzando il comando "xfs_growfs"