Quota
| Fiche express | |
|---|---|
| Domaine | Quotas disque par utilisateur/groupe |
| Commandes | quotacheck, edquota, setquota, quotaon, repquota
|
| Contexte | Filesystems ext3/ext4 (quotas classiques) — XFS utilise un mécanisme différent (xfs_quota, options de montage uquota/gquota), non couvert ici
|
| Voir aussi | options de montage /etc/fstab
|
Les quotas disque limitent l'espace occupé (en blocs) et le nombre de fichiers (en inodes) qu'un utilisateur ou un groupe peut consommer sur un filesystem. Sur ext3/ext4, le mécanisme repose sur les fichiers aquota.user/aquota.group à la racine du montage et sur les commandes historiques quota-tools (quotacheck, edquota, quotaon, repquota).
Activer les quotas sur un filesystem
Ajouter les options usrquota,grpquota à la ligne concernée de /etc/fstab :
/dev/rootvg/lvhome /home ext3 defaults,usrquota,grpquota 1 2
Puis remonter le filesystem pour que les nouvelles options prennent effet (ou mount -o remount /home si on veut éviter de le démonter) :
umount /home
mount /home
Initialiser la base de données des quotas
Créer (ou recréer) les fichiers aquota.user et aquota.group à la racine du filesystem, en scannant les fichiers existants pour calculer l'occupation réelle :
quotacheck -cug /home # -c : (re)crée les fichiers de quota, -u/-g : utilisateurs/groupes
quotacheck -avug # rescanne tous les filesystems montés avec quotas (-a) pour resynchroniser les compteurs
quotacheck -avug est aussi utile après un arrêt brutal (fsck, crash) pour resynchroniser les compteurs avec l'état réel du disque.
Activer/désactiver le suivi
quotaon -vug /home # active l'application des quotas sur le filesystem
quotaoff -vug /home # désactive (les fichiers aquota.* restent en place)
Assigner des quotas aux utilisateurs
Édition interactive (ouvre le fichier de quota dans $EDITOR) :
edquota username
Le fichier édité se présente ainsi (limites souples et strictes, en blocs puis en inodes) :
Disk quotas for user eisadmin (uid 500):
Filesystem blocks soft hard inodes soft hard
/dev/mapper/rootvg-lvhome 5000 5000 5000 7 0 0Dans cet exemple, le quota est fixé à 5 Mo (blocs) pour l'utilisateur, sans limite sur le nombre d'inodes (soft/hard à 0 = illimité).
Pour recopier les quotas d'un utilisateur modèle vers d'autres comptes :
edquota -p user1 user2 user3
Pour assigner un quota en mode non interactif, sans passer par l'éditeur (setquota -u utilisateur bloc-soft bloc-hard inode-soft inode-hard -a filesystem) :
setquota -u user 5000 5000 0 0 -a /home
Configurer le délai de grâce
Le délai de grâce est le temps toléré au-delà de la limite souple (soft) avant que le quota ne soit appliqué comme une limite stricte (hard) :
edquota -t
Le fichier édité se présente ainsi :
Grace period before enforcing soft limits for users:
Time units may be: days, hours, minutes, or seconds
Filesystem Block grace period Inode grace period
/dev/mapper/rootvg-lvhome 0seconds 0secondsConsulter l'état des quotas
Rapport global sur tous les filesystems avec quotas activés :
repquota -a
Un utilisateur non-root peut consulter son propre quota avec quota sans argument ; root peut consulter celui de n'importe quel utilisateur avec quota -u username.
Voir aussi
/etc/fstab— options de montage (dontusrquota/grpquota)