Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > ebac5394abc62d2e0b61505bfba9712a > files > 179

howto-text-fr-2006-5mdv2010.0.noarch.rpm


                               Quota Mini-Howto

par Albert M.C. Tam (bertie@scn.org)

   Version du 08 Août 1997
     _________________________________________________________________

   _(Adaptation française par Antoine Levavasseur levavass@efrei.fr, le
   14 Octobre 1997). L'objectif de ce mini-howto est d'expliquer comment
   mettre en place et utiliser les quotas sous linux._
     _________________________________________________________________

   _Dernière Modification_ : Fri Aug 8 09:45:05 HKT 1997

   _Préambule : _Ce document a été écrit par Albert M.C. Tam
   (bertie@scn.org). La possibilité d'utiliser, copier, distribuer ce
   document pour une utilisation non-commerciale est permise, à partir du
   moment où la présente remarque et les noms de l'auteur et de l'éditeur
   apparaissent sur toutes les copies et/ou supports du document; et que
   le document n'est pas modifié. Ce document est diffusé en espérant
   qu'il sera utile, mais sans AUCUNE GARANTIE, exprimée ou implicite.
   Bien que tous les efforts ait été faits pour s'assurer de l'exactitude
   des informations du présent document, l'auteur / éditeur / mainteneur
   n'assume AUCUNE RESPONSABILITE pour des erreurs, ou des domages
   résultant de l'utilisation des informations du présent document.

   Ce document décrit comment activer un quota sur le système de fichier
   d'une machine Linux, attribuer des quotas pour les utilisateurs et les
   groupes, ainsi que l'utilisation de diverses commandes sur les quotas.
   Il est destiné aux utilisateurs utilisant un noyau 2.x (testé
   récemment sur RedHat 4.1 avec un noyau 2.0.27). Les utilisateurs qui
   utilisent des noyaux plus vieux doivent se mettre à jour avec un noyau
   plus récent pour pouvoir utiliser les quotas.

   N'hésitez pas à envoyer vos commentaires et point-de-vue à
   bertie@scn.org si vous trouvez une erreur, ou qu'une information
   manquante. J'aprécierai.

1. Les Quotas, qu'est-ce que c'est ?

   Les quotas permettent de spécifier les limites sur deux aspects du
   stockage sur disque : le nombre d'i-noeuds qu'un utilisateur ou un
   groupe peux posséder; et le nombre de blocks disques qui peuvent êtres
   alloués à un utilisateur ou un groupe d'utilisateurs.

   L'idée des quotas, c'est que les utilisateurs sont obligés de rester
   sous leur limite de consomation de disque, perdant leur possiblité de
   saturer la totalité de l'espace disque d'un système.

   Les quotas sont supportés sur une base par utilisateur et par système
   de fichier. Si il y a plus d'un système de fichiers ou un utilisateur
   qui est censé créer des fichiers, alors les quotas doivent être
   configurés séparemment sur chaque système de fichier.

1.1 Etat actuel des quotas sous Linux

   Le support des quotas a été intégré dans le noyau depuis la version
   1.3.8x il me semble. Maintenant il est partie prenante du noyau Linux
   version 2.0. Si votre système ne supporte pas les quotas, je
   recommande chaudement une mise à jour.

   Actuellement les quotas ne fonctionnent qu'avec le système de fichier
   _ext2_.

1.2 Que faut-il pour utiliser les Quotas sur Linux

  Noyau

   Les sources du noyau 2.x sont disponibles sur
   http://sunsite.unc.edu/pub/Linux/kernel/v2.0 ou plus près sur
   _ftp.lip6.fr_ .

  Programmes pour les quotas

   Selon votre distribution Linux, vous avez, ou devez avoir, ou ne pas
   avoir les programmes des quotas installés sur votre système. Si vous
   ne les avez pas, alors téléchargez les sources des programmes pour les
   quotas sur
   ftp://ftp.funet.fi/pub/Linux/PEOPLE/Linus/subsystems/quota/all.tar.gz

2. Partie I : La configuration

2.1 Reconfigurer votre noyau

   Reconfigurez votre noyau et ajoutez le support des quotas en répondant
   'y' à :

     Quota support (CONFIG_QUOTA) [n] y

2.2 Compiler et installer les programmes des quotas

   Les sources des programmes des quotas sont disponibles sur
   ftp://ftp.funet.fi/pub/Linux/PEOPLE/Linus/subsystems/quota/all.tar.gz

2.3 Modifier les scripts init de votre système pour vérifier les quotas et les
activer lors du boot.

   Voici un exemple :

# Check quota and then turn quota on.
if [ -x /usr/sbin/quotacheck ]
then
     echo "Checking quotas. This may take some time."
     /usr/sbin/quotacheck -avug
     echo " Done."
fi

if [ -x /usr/sbin/quotaon ]
then
      echo "Turning on quota."
      /usr/sbin/quotaon -avug
fi

   La règle d'or est de _toujours_ activer les quotas _après_ que votre
   système de fichier ait été monté avec /etc/fstab, sinon les quotas ne
   fonctionneront pas. Je recommande d'activer les quotas à la fin de
   votre script init, ou, si vous préférez, juste après la partie ou le
   script init monte les systèmes de fichiers.

2.4 Modifier /etc/fstab

   Les partitions sur lesquelles vous n'avez pas encore activé les quotas
   ressemblant normalement à :

/dev/hda1       /       ext2    defaults        1       1
/dev/hda2       /usr    ext2    defaults        1       1

   Pour activer le support des quotas utilisateur pour un système de
   fichiers, ajoutez "usrquota" dans le quatrième champ contenant le mot
   "defaults" (man fstab pour avoir des détails).

/dev/hda1       /       ext2    defaults                1       1
/dev/hda2       /usr    ext2    defaults,usrquota       1       1

   Remplacez "usrquota" par "grpquota", si vous avez besoin du support
   des quotas pour les groupes sur un sytème de fichiers.

/dev/hda1       /       ext2    defaults                1       1
/dev/hda2       /usr    ext2    defaults,grpquota       1       1

   Vous avez besoin à la fois du support des quotas pour les groupes et
   les utilisateurs ?

/dev/hda1       /       ext2    defaults                        1       1
/dev/hda2       /usr    ext2    defaults,usrquota,grpquota      1       1

2.5 Créer les enregistrements des quotas "quota.user" et "quota.group"

   Les deux fichiers d'enregistrement des quotas, quota.user et
   quota.group, doivent être possédés par root, et avec les permissions
   lecture_écriture pour root et personne d'autre.

   Logguez-vous en root. Allez sur la partition root où vous voulez
   activer les quota, et créez quota.user et quota.group en faisant :

touch /partition/quota.user
touch /partition/quota.group
chmod 600 /partition/quota.user
chmod 600 /partition/quota.group

2.6 Rebooter

   Maintenant rebooter votre système pour que les changements que vous
   avez fait prennent effet.

   Remarquez que pour les partitions pour lesquelles vous souhaiteriez
   activer les quotas dans le futur, vous avez seuleument besoin des
   étapes 4, 5 et 6.

3. Partie II : Attribuer les quotas aux utilisateurs et aux groupes.

   Cette opération est assurée par la commande _edquota_ (man edquota
   pour les détails).

   J'utilise généralement _quotachek_ avec les flags _-avug_ pour avoir
   les fichiers les plus à jour possible avant d'éditer les quotas. C'est
   juste une habitude personnelle, mais pas une étape indispensable.

3.1 Attribuer les quotas pour un utilisateur particulier

   Voici un exemple. J'ai un utilisateur avec le loggin _bob_ sur mon
   système. La commande edquota -u bob me lance vi (ou l'éditeur spécifié
   dans la variable d'environnement $EDITOR) pour éditer les quotas pour
   l'utilisateur _bob_ sur chacune des partitions où le quota est activé.

Quotas for user bob:
 /dev/hda2: blocks in use: 2594, limits (soft = 5000, hard = 6500)
             inodes in use: 356, limits (soft = 1000, hard = 1500)

   _block utilisés_ est le nombre total de blocks (en Ko) que
   l'utilisateur a déjà consommé sur la partition.

   _i-noeuds utilisés_ est le nombre total de fichiers que l'utilisateur
   possède sur la partition.

3.2 Attribuer les quotas sur un groupe particulier

   Maintenant, il y a un groupe _games_ sur mon système. _edquota -g
   games_ lance une nouvelle fois l'éditeur vi pour éditer le groupe
   _games_ :

Quotas for group games:
   /dev/hda4: blocks in use: 5799, limits (soft = 8000, hard = 10000)
              inodes in use: 1454, limits (soft = 3000, hard = 4000)

3.3 Attribuer les quotas pour plusieurs utiliateurs avec la même valeur

   Pour attribuer rapidement les quotas pour, par exemple 100
   utilisateurs, sur mon système avec la même valeur que pour
   l'utilisateur _bob_, je vais d'abord éditer les quotas de _bob_ à la
   main, et ensuite exécuter :

edquota -p bob `awk -F: '$3 > 499 {print $1}' /etc/passwd`

   en partant du principe que vous utilisez _csh_, et que les UID de vos
   utilisateurs commencent à partir de 500.

   En plus de edquota, il y a trois termes avec lesquels vous devez vous
   familiariser : Limite douce (Soft Limit), Limite dure (Hard Limit), et
   délais (Grace Périod).

   _Limite douce (Soft Limit)_
   La limite douce indique la quantité maximale qu'un utilisteur peut
   utiliser sur une partition. En combinaison avec le délais (Grace
   Périod), il agit d'une frontière, à partir de laquelle des messages
   d'avertissement sont envoyés pour informer du dépassement de quota
   lorsqu'il survient.

   _Limite dure (Hard Limit)_
   La limite dure ne fonctionne que lorsque le délais est configuré. Celà
   définit la limite absolue de l'utilisation disque, puisque
   l'utilisateur ne peut dépasser la limite dure.

   _Délais (Grace Period)_ Lancé par la commande _edquota -t_, le délais
   est une limite de temps avant que la limite douce soit renforcée sur
   un système de fichiers ou les quotas sont activés. Les unités de temps
   "sec(onds), min(utes), hour(s), day(s), week(s), and month(s)" peuvent
   être utilisées. Voici ce que nous voyons avec la commande _edquota -t_
   :

Time units may be: days, hours, minutes, or seconds
Grace period before enforcing soft limits for users:
/dev/hda2: block grace period: 0 days, file grace period: 0 days

   Changer la partie "0 days" pour une durée qui vous semble résonnable.
   J'ai choisi personnellement "7 days" (ou une semaine).

4. Diverses commandes pour les quotas

4.1 Quotacheck

   Quotacheck est utilisé pour vérifier le système de fichier et les
   utilisations disque pour mettre le plus à possible le fichier
   enregistrement "quota.user" Je recommande de lancer quotacheck au boot
   du système, ou régulièrement avec cron (par exemple chaque semaine ?).

4.2 Repquota

   Repquota affiche un résumé des quotas pour le système de fichiers.
   Voici une sortie type de repquota :

# repquota -a
                        Block limits               File limits
User            used    soft    hard  grace    used  soft  hard  grace
root      --  175419       0       0          14679     0     0
bin       --   18000       0       0            735     0     0
uucp      --     729       0       0             23     0     0
man       --      57       0       0             10     0     0
user1     --   13046   15360   19200            806  1500  2250
user2     --    2838    5120    6400            377  1000  1500

4.3 Quotaon et Quotaoff

   Quotaon est utiliser pour activer la gestion des quotas; et quotaoff
   pour le terminer. Les fichiers sont en fait similaires. Ils sont
   exécutés au démarrage et à l'arrêt du système.