Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

4.5. Gestione quota del GFS2

I quota del File-system sono utilizzati per limitare la quantità di spazio utilizzato da un utente o gruppo. Un utente o gruppo non possiedono alcun limite quota fino a quando non ne viene impostato uno. Durante il montaggio di un file system GFS2 con l'opzione quota=on o quota=account GFS2 controlla lo spazio utilizzato da ogni utente o gruppo, anche quando non è implementato alcun limite. Il GFS2 aggiorna le informazioni dei quota in modo tale da non aver bisogno di una ricostruzione dell'utilizzo del quota dopo il crash del sistema.
Per impedire un rallentamento delle prestazioni un nodo GFS2 sincronizza periodicamente gli aggiornamenti con il quota file. L'accounting quota "fuzzy" permette agli utenti o gruppi di eccedere leggermente i limiti impostati. Per minimizzare questa tendenza, GFS2 riduce dinamicamente il periodo di sincronizzazione quando si è prossimi ad un limite quota "hard".

Nota

Con Red Hat Enterprise Linux 6.1 è ora disponibile il supporto delle funzioni standard dei quota di Linux. Per il suo utilizzo installare l'RPM quota. Questo è il metodo preferito per gestire i quota sul GFS2 ed è consigliato il suo uso per tutte le nuove implementazioni di GFS2 che utilizzano il quota. Questa sezione documenta la gestione del quota sul GFS2 utilizzando le suddette funzioni.
Nelle release precedenti di Red Hat Enterprise Linux GFS2 richiedeva l'uso del comando gfs2_quota per la gestione dei quota. Per informazioni su questo comando consultare Appendice A, Gestione quota del GFS2 con il comando gfs2_quota.

4.5.1. Configurazione dei disk quota

Per implementare un disk quota seguire le seguenti fasi:
  1. Impostare i quota in modalità enforcement o accounting.
  2. Inizializzare il file del database quota con le informazioni correnti relative all'uso del blocco.
  3. Assegnare le politiche del quota. (In modalità accounting queste politiche non sono implementate.)
Ogni fase viene riportata in dettaglio nelle sezioni seguenti.

4.5.1.1. Impostazione dei quota in modalità Enforcement o Accounting.

Nei file system GFS2, il quota enforcement è disabilitato per default. Per abilitare il quota enforcement per un file system montare il file system specificando l'opzione quota=on.
È possibile controllare l'utilizzo del disco ed il conteggio dei quota per ogni utente e gruppo senza implementare valori limiti e di avvertimento. Per fare questo montare il file system specificando l'opzione quota=account.
Utilizzo
Per montare un file system con un quota abilitato, montare il file system specificando l'opzione quota=on.
mount -o quota=on BlockDevice MountPoint
Per montare un file system con un conteggio dei quota anche se i limiti del quota non sono stati impostati, montare il file sistem con l'opzione quota=account.
mount -o quota=account BlockDevice MountPoint
Per montare un file system con un quota disabilitato, montare il file system specificando l'opzione quota=off. Questa risulta essere l'impostazioni predefinita.
mount -o quota=off BlockDevice MountPoint
quota={on|off|account}
on - Specifica che il quota è stato abilitato quando il file system è montato.
off - Specifica che il quota è stato disabilitato quando il file system è montato.
account - Specifica la gestione delle statistiche dell'utente e del gruppo da parte del file system, anche se i limiti di quota non sono implementati.
BlockDevice
Specifica il dispositivo a blocchi dove risiede il file system GFS2.
MountPoint
Specifica la directory dove il file system GFS2 deve essere montato.
Esempi
In questo esempio il file system GFS2 su /dev/vg01/lvol0 è montato sulla directory /mygfs2 con quota accounting abilitato.
mount -o quota=on /dev/vg01/lvol0 /mygfs2
In questo esempio il file system GFS2 su /dev/vg01/lvol0 è montato sulla directory /mygfs2 con un quota accounting gestito ma non implementato.
mount -o quota=account /dev/vg01/lvol0 /mygfs2

4.5.1.2. Creazione dei file del Quota Database

Dopo aver montato ogni file system abilitato al quota il sistema sarà in grado di operare con i disk quota. Tuttavia il file system stesso non sarà in grado di supportare i quota. La fase successiva è quella di eseguire il comando quotacheck.
Il comando quotacheck esamina i file system abilitati al quota e compila una tabella per l'uso corrente del disco per file system. La tabella viene usata per aggiornare la copia relativa all'uso del disco del file system. In aggiunta i file del disk quota del file system vengono aggiornati.
Per creare i quota file sul file system usare le opzioni -u e -g del comando quotacheck; per poter inizializzare entrambe le opzioni le stesse devono essere specificate. Per esempio, se i quota sono stati abilitati per il file system /home, creare i file nella directory /home:
quotacheck -ug /home

4.5.1.3. Assegnazione dei quota per utente

L'ultima fase è quella di assegnare i disk quota con il comando edquota. Se avete montato il file system in modalità accounting (con l'opzione quota=account), i quota non verranno implementati.
Per configurare il quota per un utente, come utente root in un prompt della shell, eseguire il comando:
edquota username
Eseguire la seguente fase per ogni utente che ha bisogno di un quota. Per esempio, se un quota è abilitato in /etc/fstab per la partizione /home (/dev/VolGroup00/LogVol02 nell'esempio di seguito riportato) e si esegue il comando edquota testuser, verrà mostrato il seguente nell'editor configurato come il default per il sistema:
Disk quotas for user testuser (uid 501):   
Filesystem                blocks     soft     hard    inodes   soft   hard
/dev/VolGroup00/LogVol02  440436        0        0

Nota

L'editor di testo definito dalla variabile d'ambiente EDITOR sarà usato da edquota. Per cambiare l'editor impostare la variabile EDITOR nel file ~/.bash_profile per il percorso completo dell'editor desiderato.
La prima colonna rappresenta il nome del file system con un quota abilitato. La seconda colonna mostra il numero di blocchi attualemente usato dall'utente. Le due colonne successive sono usate per impostare i limiti hard e soft del blocco per l'utente sul file system.
Il limite soft del blocco definisce la quantità massima di spazio del disco utilizzabile.
Il limite hard del blocco è la quantità massima assoluta di spazio del disco utilizzabile da un utente o gruppo, Una volta raggiunto questo limite non sarà più possibile usare alcuno spazio.
Il file system GFS2 non mantiene alcun quota per gli inode, per questo motivo le suddette colonne non sono applicate ai file system GFS2 e saranno vuote.
Se qualsiasi valore viene impostato su 0, allora quel limite non viene impostato. Nell'editor di testo modificare i limiti desiderati. Per esempio;
Disk quotas for user testuser (uid 501):   
Filesystem                blocks     soft     hard    inodes   soft   hard
/dev/VolGroup00/LogVol02  440436   500000   550000
Per verificare l'impostazione del quota per un utente usare il comando;
quota testuser

4.5.1.4. Assegnazione dei quota per un gruppo

Un quota può essere assegnato in base al gruppo. Se avete montato il file system in modalità accounting (con l'opzione account=on) i quota non verranno implementati.
Per impostare un quota al gruppo devel (è necessario che il gruppo esista per poter impostare un quota), usare il seguente comando:
edquota -g devel
Questo comando mostra il quota esistente per il gruppo nell'editor di testo;
Disk quotas for group devel (gid 505):   
Filesystem                blocks    soft     hard    inodes   soft   hard
/dev/VolGroup00/LogVol02  440400       0        0
Il file system GFS2 non mantiene alcun quota per gli inode, per questo motivo le suddette colonne non sono applicate ai file system GFS2 e saranno vuote. Modificare i limiti e successivamente salvare il file.
Per verificare se il quota del gruppo è stato impostato usare il seguente comando:
quota -g devel