Implémenter des quotas de disque sous Ubuntu

J’ai eu le besoin d’implémenter la gestion de quota pour des utilisteurs réseau sur une ressource partagée d’un serveur Ubuntu.
Nous verrons dans un second temps l’intégration de ce dernier avec un annuaire Active Directory mais testons tout d’abord cette fonctionnalité.
Ce tuto s’applique à un système de fichier journalisé tel ext3 ou ext4.

Pré-requis

Installer les packages suivants avec votre gestionnaire préféré :

[Root@ ~]# aptitude install quota

Activer les quotas sur un système de fichiers journalisés

Éditer le fichier /etc/fstab file, et ajouter les options usrquota et grpquota au système de fichiers correspondant à monitorer:

[root@ ~]# vi /etc/fstab

L’exemple suivant indique que les quotas utilisateur et groupe sont activés sur le point de montage /data:

/dev/mapper/EPGstorage01-data /data ext4 defaults,usrjquota=aquota.user,grpjquota=aquota.group, jqfmt=vfsv0 1 1

Redémarrer la machine après la modification pour sa prise en compte.

Nous devons réaliser ensuite la vérification initiale des quotas:

[root@ ~]# quotacheck -avugmf

a: Check all quota-enabled filesystem
v: Verbose mode
u: Check for user disk quota
g: Check for group disk quota »
f: Force action

La commande précédente créera les fichiers aquota pour les utilisateurs et groupes comme listé ci dessous:

[root@ ~]# ls -l /data
total 40
-rw——- 1 root root 7168 2011-07-13 14:54 aquota.group
-rw——- 1 root root 8192 2011-07-13 14:54 aquota.user

Ajoutons maintenant des quotas via la commande edquota:
Par exemple, pour changer le quota pour l’utilisateur « user », utiliser edquota qui permettra de renseigner les limites « souple » et « stricte » comme ci dessous:

[root@ ~]# edquota user
Quotas disque pour user user (uid 10471) :
Systèmme de fichiers blocs souple stricte inodes souple stricte
/dev/mapper/EPstorage01-data 4 500000 600000 1 0 0

Vous pouvez ensuite éditer les paramètres pour cet utilisateur et saisir les limites suivantes soit en espace (taille en kbits) ou en nombre de fichiers (inodes). La différence entre la limite souple et la stricte est que la souple (soft) peut être dépassée pendant un temps défini, alors que la stricte (hard) peut être considérée comme une limite physique non franchissable.

Nous pouvons afficher le rapport d’un quota via la commande repquota avec par exemple le listing des quotas utilisateurs et groupes pour un répertoire donné :

[root@ ~]# repquota /data
*** Rapport pour les quotas user sur le périphérique /dev/mapper/EPstorage01-data
Période de sursis bloc : 00:00 ; période de sursis inode : 00:00
Block limits File limits
Utilisateur utilisé souple stricte sursis utilisé souple stricte sursis
———————————————————————-
root — 28 0 0 4 0 0
user1 — 2136768 0 0 5 0 0
user2 — 4 500000 600000 1 0 0
user3 — 4 500000 600000 1 0 0

Planification des rapports de quota

Nous pouvons ajouter une verifictation des quotas dans le cron. Il suffit d’ajouter une commande repquota comme ci-dessus dans le fichier /etc/cron.daily pour avoir un résultat quotidien. Ceci retournera le résultat de la commande vers l’adresse émail de root.

QR Code - Take this post Mobile!
Use this unique QR (Quick Response) code with your smart device. The code will save the url of this webpage to the device for mobile sharing and storage.
Mots-clés : , , ,

kiolul