Aller au contenu

Configurer les quotas disque sur Linux​

Mise à jour :

Les quotas disque sous Linux permettent de contrôler et de limiter l’espace utilisé par les utilisateurs ou groupes sur un système de fichiers. Cela évite qu’un utilisateur monopolise toutes les ressources disponibles et aide à maintenir la stabilité du serveur. Ce guide explique pas à pas comment activer, configurer et gérer les quotas pour optimiser l’utilisation de l’espace disque sur votre système Linux.

Comprendre les quotas disque sous Linux

Un quota disque est une limite définie sur la quantité d’espace disque ou sur le nombre de fichiers qu’un utilisateur ou un groupe peut utiliser sur un système Linux. L’objectif est de prévenir la saturation du disque dur par une utilisation excessive et de garantir un partage équitable des ressources.

Utilité des quotas

Dans les environnements multi-utilisateurs, les quotas sont essentiels pour :

  • Éviter les abus de ressources en limitant l’espace individuel.
  • Prévenir les pannes système liées à la saturation du disque.
  • Planifier et dimensionner efficacement les ressources selon les besoins réels.

À noter : Les quotas sont particulièrement utilisés sur les serveurs de fichiers, les hébergements mutualisés et les infrastructures cloud pour une gestion fine des ressources.

Types de quotas

Linux propose principalement deux types de quotas :

  • Quota de bloc : limite la quantité d’espace disque (en Ko, Mo, Go) qu’un utilisateur ou un groupe peut consommer.
  • Quota d’inode : limite le nombre total de fichiers qu’un utilisateur ou groupe peut créer.

Chaque type de quota peut être défini pour un utilisateur individuel ou pour un groupe d’utilisateurs.

Limites souples et limites strictes

  • Limite souple (soft limit) : seuil que l’utilisateur peut dépasser temporairement. Le système autorise un dépassement pendant une période de grâce configurable.
  • Limite stricte (hard limit) : valeur absolue à ne jamais dépasser. Dès que cette limite est atteinte, aucune écriture supplémentaire n’est autorisée.

**Exemple : Un utilisateur a une limite souple de 5 Go et une limite stricte de 6 Go. Il peut utiliser jusqu’à 6 Go, mais doit revenir sous 5 Go avant la fin de la période de grâce.

Prise en charge des quotas selon les systèmes de fichiers

La gestion des quotas disque dépend aussi du support par le noyau Linux. Voici l’essentiel par système de fichiers :

Quotas sur ext4

Le système de fichiers ext4 est le plus courant sur les distributions Linux. Il prend en charge les quotas, mais nécessite une configuration supplémentaire.

Installation

  • Assurez-vous que le noyau est compilé avec CONFIG_QUOTA.

    Terminal window
    grep CONFIG_QUOTA /boot/config-$(uname -r)
    CONFIG_QUOTA=y
  • Installer les outils nécessaires :

    Terminal window
    sudo apt install quota quotatool -y

Activation

  • Modifier /etc/fstab :

    Terminal window
    UUID=xxx /home ext4 defaults,usrquota,grpquota 0 2
  • Remonter la partition :

    Terminal window
    sudo systemctl daemon-reload
    sudo mount -o remount /home
  • Vérifier que les options sont bien prises en compte :

    Terminal window
    mount | grep /home
  • Créer les fichiers de quotas :

    Terminal window
    sudo quotacheck -cum /home
    sudo quotacheck -cgm /home
  • Activer les quotas :

    Terminal window
    sudo quotaon /home

⚠️ Un message d’avertissement peut apparaître : les fichiers externes sont obsolètes sur ext4 moderne, mais les quotas fonctionnent.

Gestion

  • Configurer les quotas avec :
Terminal window
sudo edquota utilisateur
  • Vérifier l’utilisation :
Terminal window
sudo repquota /home

Quotas sur XFS

Le système de fichiers XFS est connu pour sa performance et sa scalabilité. Il prend en charge les quotas et offre des outils dédiés pour une gestion fine.

Installation

  • Le support des quotas est intégré dans le noyau.

  • Installer les outils XFS si nécessaire :

    Terminal window
    sudo apt install xfsprogs

Activation

  • Modifier /etc/fstab :
Terminal window
UUID=xxx /data xfs defaults,uquota,gquota 0 0
  • Remonter la partition :

    Terminal window
    sudo mount -o remount /data

Gestion

  • Définir les quotas avec :

    Terminal window
    sudo xfs_quota -x -c 'limit bsoft=5g bhard=6g utilisateur' /data
  • Afficher un rapport :

    Terminal window
    sudo xfs_quota -x -c 'report' /data

Quotas sur Btrfs

Le système de fichiers Btrfs est récemment devenu populaire pour sa flexibilité et ses fonctionnalités avancées. Il prend en charge les quotas, mais la gestion est différente des systèmes de fichiers comme ext4.

Installation

  • Le support est natif dans le noyau Linux récent.
  • Pas d’outils additionnels obligatoires.

Activation

  • Activer les quotas :

    Terminal window
    sudo btrfs quota enable /mnt

Gestion

  • Gérer avec qgroup :

    Terminal window
    sudo btrfs qgroup show /mnt
    sudo btrfs qgroup limit 5G /mnt/sousvolume

Quotas sur ZFS

Installation

  • Installer ZFS et ses outils (zfsutils-linux sur Debian/Ubuntu).

    Terminal window
    sudo apt install zfsutils-linux
  • Charger le module externe si nécessaire (zfs).

Activation

  • Pas d’étapes spécifiques pour activer les quotas.

Gestion

  • Définir un quota sur un dataset :

    Terminal window
    sudo zfs set quota=10G tank/home
  • Vérifier l’espace utilisé :

    Terminal window
    sudo zfs list

Et sur LVM ?

LVM (Logiciel de gestion de volumes) est souvent utilisé pour gérer des partitions sur des systèmes Linux. Il est compatible avec les quotas.

Il suffit de l’activer sur le système de fichiers utilisé (ext4, XFS, etc.) et de de suivre les étapes de configuration des quotas pour le système de fichiers choisi.

Exemple d’activation sur un volume LVM en ext4 :

Dans /etc/fstab :

Terminal window
/dev/mapper/vg_data-lv_home /home ext4 defaults,usrquota,grpquota 0 2

Puis :

Terminal window
sudo mount -o remount /home
sudo quotacheck -cum /home
sudo quotaon /home

Gestion

  • Identique à la gestion standard selon le système de fichiers.
  • Utilisation de quota, edquota, xfs_quota ou btrfs qgroup selon le cas.

Cas spécial : LVM snapshots

Lorsque vous utilisez des snapshots LVM, attention :

  • Un snapshot ne copie pas l’état des quotas.

  • Après restauration d’un snapshot, il peut être nécessaire de revalider les quotas avec :

    Terminal window
    sudo quotacheck -avugm
  • Sur XFS, utiliser :

    Terminal window
    sudo xfs_quota -x -c 'report' /point_de_montage

Bonnes pratiques pour la gestion des quotas disque sous Linux

La mise en place des quotas disque est une étape essentielle pour assurer la stabilité et l’équilibre de l’utilisation du stockage. Voici les bonnes pratiques à respecter pour une gestion efficace et durable.

Planifier l’utilisation de l’espace

Avant d’appliquer des quotas, évaluez :

  • Le nombre d’utilisateurs et de groupes.
  • Le volume moyen d’espace nécessaire par utilisateur.
  • Les besoins spécifiques (ex. : utilisateurs techniques vs utilisateurs bureautiques).

Astuce : Réservez une marge pour les opérations systèmes et les pics d’activité.

Choisir la méthode adaptée au système de fichiers

  • Sur ext4 récent, privilégiez les quotas natifs sans fichiers externes.
  • Sur XFS, utilisez toujours xfs_quota pour profiter de la gestion intégrée.
  • Sur Btrfs, activez les quotas (btrfs quota enable) avant toute gestion fine.
  • Sur LVM, appliquez les quotas directement sur les systèmes de fichiers montés, pas sur les volumes logiques eux-mêmes.

Activer et vérifier les quotas correctement

  • Montez toujours les partitions avec les bonnes options (usrquota, grpquota).
  • Utilisez quotacheck uniquement si nécessaire (principalement pour ext4 classique).
  • Vérifiez l’état des quotas avec :
Terminal window
sudo repquota /point_de_montage

Surveiller régulièrement l’utilisation

  • Planifiez un contrôle périodique via cron pour détecter les dépassements :

    Terminal window
    0 3 * * * /usr/sbin/repquota -a | mail -s "Rapport quotas quotidien" admin@example.com
  • Utilisez des outils de supervision (Nagios, Zabbix) pour recevoir des alertes.

Adapter les quotas selon l’évolution des besoins

  • Ajustez les limites de quotas tous les 6 à 12 mois en fonction de l’utilisation réelle.
  • Supprimez ou archivez les comptes inactifs pour libérer de l’espace disque.
  • Tenez compte de l’arrivée de nouveaux projets ou services gourmands en stockage.

Documenter la politique de quotas

  • Informez clairement les utilisateurs de leurs limites d’espace et des actions en cas de dépassement.
  • Documentez la procédure d’alerte et de demande d’augmentation de quota.

Contrôle de connaissances

Pourquoi ce contrôle ?

Cet contrôle va vous permettre de valider vos connaissances sur le sujet abordé dans le guide. Il comporte des QCM, des questions vrai/faux et des réponses ouvertes à un mot.

🕒 Le chronomètre commence dès que vous cliquez sur Démarrer le test. Vous devrez terminer l’examen avant la fin du temps imparti.

🎯 Pour réussir, vous devez obtenir au moins 80% de bonnes réponses.

💡 Je ne fournis pas directement les réponses aux questions. Cependant, si certaines sont complexes, des pistes d’explication pourront être proposées dans le guide ou après l’examen.

Bonne chance ! 🚀

Conclusion

Vous avez maintenant toutes les clés en main pour configurer et gérer les quotas disque sur Linux. En suivant ces étapes et bonnes pratiques, vous assurez une gestion efficace de l’espace disque, prévenez les abus et garantissez un environnement stable pour tous les utilisateurs. N’hésitez pas à adapter ces conseils à votre contexte spécifique et à surveiller régulièrement l’utilisation de l’espace disque pour anticiper les besoins futurs.