[Retour index]

Gestion des quotas

L'idée est de gérer les quotas (sous Linux Fedora Core 2) afin de limiter l'espace des utilisateurs. Ce document montre comment mettre en oeuvre la gestion des quotas sous Linux.
1. Le noyau gère t'il les quotas?
2. Configuration de la gestion des quotas
3. Attribution des quotas
4. Quelques liens

1. Le noyau gère t'il les quotas?

Pour le savoir, on vérifie tout simplement :
[root@localhost root]# rpm -qa | grep quota
quota-3.10-2
Puis :
[root@localhost root]# grep -i quota /boot/config-2.6.5-1.358
CONFIG_XFS_QUOTA=y
CONFIG_QUOTA=y
CONFIG_QUOTACTL=y

2. Configuration de la gestion des quotas

Les quotas sont activés au démarrage grâce à la commande /sbin/quotaon lancée par le script /etc/rc.d/rc.sysinit. Ils sont désactivés à l'arrêt du système par la commande quotaoff.
Nous devons modifier le fichier /etc/fstab pour gérer les quotas au niveau utilisateur. Il suffit de rajouter le mot-clé usrquota au niveau de la ligne de la partition concernée :
/dev/md3	/home	ext3	default,usrquota	1	2
PS : Ici, nous ne souhaitons gérer les quotas qu'au niveau utilisateur. On pourrait les gérer au niveau groupe en mettant également le mot-clé grpquota dans le fichier /etc/fstab à la ligne correspondante à la partition concernée.
Le fichier aquota.user doit être créé à la racine du système de fichier qui comporte les quotas, c'est à dire /home dans notre cas. A la création de ce fichier, il faut veiller à lui donner les droits en lecture/écriture seulement pour le root.
[root@localhost root]# touch /home/aquota.user
[root@localhost root]# chmod 600 /home/aquota.user
[root@localhost root]# mount -o remount /home
PS : Si nous voulions gérer les quotas au niveau groupe, il faudrait créer de la même manière le fichier aquota.group. A noter que l'on peut gérer les quotas utilisateur et les quotas groupe simultanément.
Initialisons la base des quotas :
[root@localhost root]# quotacheck -afm
Voici la syntaxe de la commande : quotacheck [ -vugfm ] -a | filesystem

3. Attribution des quotas

Tout d'abord, voici la commande pour afficher un résumé de l'utilisation des quotas :
[root@localhost root]# repquota -a
Voici la syntaxe de la commande : repquota [ -vug ] -a | filesystem
La commande suivante permet tout simplement d'afficher le quota de l'utilisateur courant :
[root@localhost root]# quota
Celle-ci, affiche le quota de l'utlisateur alenorcy :
[root@localhost root]# quota alenorcy
Disk quotas for user alenorcy (uid 11679):
     Filesystem  blocks   quota   limit   grace   files   quota   limit   grace
       /dev/md3      16       0       0               3       0       0
Pour attribuer un quota à l'utilisateur alenorcy :
[root@localhost root]# edquota -u alenorcy
Par defaut, vi se lance et il faut modifier le fichier qui apparaît pour attribuer un quota à l'utilisateur alenorcy. Pour que ce fichier soit lancé automatiquement dans un autre éditeur, il suffit de mettre le nom de votre éditeur favori dans la variable $EDITOR.
Le fichier lancé par vi est le suivant :
Disk quotas for user alenorcy (uid 11679):
  Filesystem                   blocks       soft       hard     inodes     soft     hard
  /dev/md3                         16          0          0          3        0        0
Pour attribuer un quota, il faut modifier les valeurs qui sont mises à zero puis enregistrer et fermer l'éditeur.
Le fichier se compose de 6 colonnes :
Pour attribuer un quota à plusieurs utilisateurs de façon automatique (sans devoir modifier un fichier sous vi...), il faut affecter un "modèle de quota" aux utilisateurs. Voici un exemple :
[root@localhost root]# edquota -p alenorcy -u autre_utilisateur
L'utilisateur autre_utilisateur a désormais le même quota que l'utilisateur alenorcy.
Après avoir modifié un quota, on fait une vérification de la cohérence du système :
[root@localhost root]# quotacheck -afm
Ainsi, il est très simple d'automatiser l'ajout un quota pour un nouvel utilisateur.

4. Quelques liens


Un commentaire, une remarque? - 0 commentaire(s) :


MAJ le 15/06/2005
Valid XHTML 1.1! Valid CSS!