8.3. Gestion des quotas XFS
Le sous-système de quotas XFS gère les limites de l'espace disque (blocs) et l'usage des fichiers (inodes). Les quotas XFS contrôlent ou rapportent l'usage de ces éléments sur un niveau d'utilisateur, de groupe, de répertoire ou de projet. Veuillez également remarquer que même si les quotas utilisateur, groupe, et répertoire ou projets sont activés indépendamment, les quotas de groupe et de projet sont mutuellement exclusifs.
Lorsque la gestion est effectuée sur une base par répertoire ou par projet, XFS gère l'usage disque des hiérachies de répertoires associées à un projet particulier. Ce faisant, XFS reconnait qu'il existe des limites de « groupe » trans-organisationnelles entre projets. Ceci offre un niveau de contrôle plus important que ce qui est possible lors de la gestion des quotas d'utilisateurs ou de groupes.
Les quotas XFS sont activés lors du montage, avec des options de montage spécifiques. Chaque option de montage peut être spécifiée comme
noenforce
; ceci permettra d'effectuer des rapport d'utilisation sans appliquer de limite. Les options de montage de quotas valides incluent :
uquota
/uqnoenforce
- Quotas d'utilisateursgquota
/gqnoenforce
- Quotas de groupespquota
/pqnoenforce
- Quotas de projets
Une fois les quotas activés, l'outil
xfs_quota
peut être utilisé pour définir les limites et effectuer un rapport sur l'utilisation du disque. Par défaut, xfs_quota
est exécuté de manière interactive et dans le mode de base. Les sous-commandes du mode de base rapportent simplement l'usage et sont disponibles à tous les utilisateurs. Les sous-commandes xfs_quota
de base incluent :
- quota username/userID
- Afficher l'utilisation et les limites pour le nom d'utilisateur
username
donné ou l'ID numériqueuserID
donné - df
- Afficher le compte des blocs et inodes disponibles et utilisés
En revanche,
xfs_quota
possède également un mode expert. Les sous-commandes de ce mode permettent la configuration des limites, et sont uniquement disponibles aux utilisateurs possédant des privilièges élevés. Pour utiliser les sous-commandes du mode expert de manière interactive, veuillez exécuter xfs_quota -x
. Les sous-commandes du mode expert incluent :
- report /path
- Rapport des informations sur les quotas d'un système de fichiers particulier
- limit
- Modifier les limites de quota.
Pour une liste complète des sous-commandes du mode de base ou du mode expert, veuillez utiliser la sous-commande
help
.
Toutes les sous-commandes peuvent également être exécutées directement à partir de la ligne de commande en utilisant l'option
-c
, avec -x
pour les sous-commandes du mode expert.
Exemple 8.2. Afficher un exemple de rapport de quotas
Par exemple, pour afficher un exemple de rapport de quotas pour
/home
(sur /dev/blockdevice
), veuillez utiliser la commande xfs_quota -cx 'report -h' /home
. Ceci affichera une sortie similaire à la suivante :
User quota on /home (/dev/blockdevice) Blocks User ID Used Soft Hard Warn/Grace ---------- --------------------------------- root 0 0 0 00 [------] testuser 103.4G 0 0 00 [------] ...
Pour paramétrer une limite dure (« hard ») et une limite douce (« soft ») du compte d'inode, respectivement de 500 et 700 pour l'utilisateur
john
(dont le répertoire d'acceuil est /home/john
), veuillez utiliser la commande suivante :
# xfs_quota -x -c 'limit isoft=500 ihard=700 /home/john'
Par défaut, la sous-commande
limit
reconnaît les cibles en tant qu'utilisateurs. Lors de la configuration des limites d'un groupe, veuillez utiliser l'option -g
(comme dans l'exemple précédent). De la même manière, veuillez utiliser -p
pour les projets.
Les limites de blocs dures (« hard ») et douces (« soft ») peuvent également être configurées à l'aide de
bsoft
ou bhard
au lieu de isoft
ou ihard
.
Exemple 8.3. Définir une limite douce (« soft ») et une limite dure (« hard »)
Par exemple, pour définir une limite douce (« soft ») et une limite dure (« hard ») avec des valeurs respectives de 1000m et 1200m pour grouper
accounting
sur le système de fichiers /target/path
, veuillez utiliser la commande suivante :
# xfs_quota -x -c 'limit -g bsoft=1000m bhard=1200m accounting' /target/path
Important
Même si les blocs en temps réel (
rtbhard
/rtbsoft
) sont décrits dans man xfs_quota
comme étant des unités valides lors du paramétrage de quotas, le sous-volume en temps réel n'est pas activé dans cette version. Ainsi, les options rtbhard
et rtbsoft
ne sont pas applicables.
Paramétrer des limites de projets
Avant de configurer les limites des répertoires contrôlés par projets, veuillez les ajouter à
/etc/projects
. Les noms de projets peuvent être ajoutés à /etc/projectid
pour lier les ID de projets aux noms de projets. Une fois qu'un projet est ajouté à /etc/projects
, veuillez initialiser son répertoire de projet en utilisant la commande suivante :
# xfs_quota -c 'project -s projectname'
Les quotas pour les projets avec des répertoires initialisés peuvent ensuite être configurés avec :
# xfs_quota -x -c 'limit -p bsoft=1000m bhard=1200m projectname'
Les outils génériques de configuration de quotas (par exemple
quota
, repquota
, et edquota
) peuvent également être utilisés pour manipuler les quotas XF. Cependant, ces outils ne peuvent pas être utilisés avec les quotas des projets XFS.
Pour obtenir davantage d'informations sur le paramétrage de quotas XFS, veuillez consulter
man xfs_quota
.