Mettre en place des quotas d’espace disque disponible pour les utilisateurs
But de ce document
Ce document a pour but de mettre en place des quotas pour les utilisateurs multiples d’un disque dur. La démarche est testée sous Debian testing. Elle s’inspire de tutos divers cités à la fin de ce document. Cette démarche est valable pour la mise en place de quotas sur un serveur et pour d’autres distributions.
Installer les paquets et changer le système de fichiers
Installer les paquets nécessaires sous root :
# aptitude install quota quotatool
De même, sous root, nous allons changer le système de fichiers concerné pour y mettre les options de quota. Dans notre cas, le dossier est notre /home.
Vous pouvez bien entendu faire une sauvegarde préalable du fichier fstab concerné :
# cp /etc/fstab /etc/fstab-backup
Ouvrir le fichier du système de fichier :
# vim /etc/fstab
La ligne concernée avant le changement :
/dev/sda4 /home ext3 defaults 0 2
et après le changement :
/dev/sda4 /home ext3 defaults,usrquota,grpquota 0 2
Structure à mettre en place pour l’utilisation des quotas :
Créer les fichiers nécessaires au fonctionnement des quotas avec la commande « touch »
# touch /home/aquota.user /home/aquota.group
Attention :ne pas oublier de modifier les droits sur ces fichiers ! Ils doivent comporter les droits en écriture et lecture pour root uniquement.
# chmod 600 /home/aquota.*
Remonter le ou les systèmes de fichiers concernés pour prendre en compte l’utilisation de quotas pour ce système de fichiers.
# mount -o remount /home
La commande quotacheck permet de scanner le système de fichier
# quotacheck -auvgm
Pour activer les quotas, exécuter cette commande
# quotaon -avug
et l’on obtient :
/dev/sda4 [/home] : quotas group activés
/dev/sda4 [/home] : quotas user activés
Fixation des quotas des utilisateurs
Pour cela une commande fait le travail « edquota ». Je découvre à son utilisation qu’elle m’ouvre le fichier demandé avec l’éditeur « nano » alors que j’utilise « vim » habituellement. Je change donc d’éditeur avant de faire les manipulations :
# update-alternatives --config editor
et là je choisis vim comme editeur par défaut.
Je peux maintenant ouvrir « edquota » avec vim :
# edquota -u eric
Quotas disque pour user eric (uid 1003) :
Système de fichiers blocs souple stricte inodes souple stricte
/dev/sda4 725000 800000 1000000 3240 0 0
Dans cet exemple, nous remarquons que j’ai fixé à 800Mo le quotas souple et à 1Go le quota strict. L’utilisateur Eric sera prévenu dès l’utilisation de la limité souple l’utilisation de son quota.
Je peux définir des quotas pour les autres utilisateurs de la même façon. D’autres options sont aussi disponibles.
Voir l’utilisation des quotas
Pour l’administrateur, Il est assez simple en ligne de commande d’avoir un rapport d’utilisation avec la commande « repquota » : (Je n’ai conservé que le profil eric dans le rapport)
# repquota -avu
*** Rapport pour les quotas user sur le périphérique /dev/sda4
Période de sursis bloc : 7days ; période de sursis inode : 7days
Limites bloc Limites fichier
Utilisateur utilisé souple stricte sursis utilisé souple stricte sursis
eric — 1716936 1750000 1800000 5698 0 0
Statistiques :
Total des blocs : 7
Blocs de données : 1
Entrées : 4
Moyenne d’utilisation : 4,000000
Explications des options utilisées et autres options disponibles :
Information pour les utilisateurs
L’information sur le quota alloué va arriver quand l’utilisateur va s’en approcher. Il aura un signal au moment de copier un fichier qui dépasse la limité allouée.
Pour aller plus loin, les tutos qui m’ont aidé (merci Patrice) :
Historique des modifications
Version | Date | Commentaire |
0.2 | 01/02/09 | Création par Claude BOBEY |
Commentaires
Mettre en place des quotas d’espace disque disponible pour les u
Bonsoir Tony,
J’ai fait un ajout dans le tuto pour la consultation de l’utilisation des quotas. pour l’avertissement, ils sont avertis quand il arrivent à la limite de leur possibilité.
Mettre en place des quotas d’espace disque disponible pour les u
Bonsoir Claude,
Bravo pour le tuto, je vois que tu tapes dans le bien technique maintenant.
Une petite faute :
> mise ’ne’ place de quotas -> mise ’en’ place de quotas
Sinon, je ne vois pas dans ta configuration comment l’utilisateur sera averti.
> Tu as fait un test ?