Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

16.2. Gérer les quotas de disque

Si les quotas sont mis en œuvre, ils devront être maintenus, surtout sous une forme qui permette de voir si les quotas sont dépassés et de vérifier qu'ils soient exacts.
Bien entendu, si les utilisateurs dépassent constamment leur quota ou leur limite, un administrateur de système aura un choix limité suivant le type d'utilisateur ou suivant l'impact de l'espace disque sur leur travail. L'administrateur pourra soit aider l'utilisateur à déterminer comment utiliser moins d'espace disque ou augmenter le quota de disque de l'utilisateur.

16.2.1. Activation et désactivation

Il est possible de désactiver les quotas sans les définir sur 0. Pour désactiver tous les quotas d'utilisateur et de groupe, veuillez utiliser la commande suivante :
# quotaoff -vaug
Si les options -u ou -g ne sont pas spécifiées, seuls les quotas d'utilisateur seront désactivés. Si seule l'option -g est spécifiée, seuls les quotas de groupe seront désactivés. L'interrupteur -v provoque l'affichage des informations verbeuses du statut lorsque la commande est exécutée.
Pour activer les quotas à nouveau, veuillez utiliser la commande quotaon avec les mêmes options.
Par exemple, pour actier les quotas d'utilisateur et de groupe pour tous les systèmes de fichiers, veuillez utiliser la commande suivante :
# quotaon -vaug
Pour activer les quotas pour un système de fichiers particulier, tel que /home, veuillez utiliser la commande suivante :
# quotaon -vug /home
Si les options -u ou -g ne sont pas spécifiées, seuls les quotas d'utilisateur seront activés. Si seule l'option -g est spécifiée, seuls les quotas de groupe seront activés.

Note

La commande quotaon n'est pas toujours requise sur XFS car elle est exécutée automatiquement au moment du montage. Voir la page man de xfs_quota(8) pour plus d'informations.

16.2.2. Rapports sur les quotas de disques

Créer un rapport sur l'utilisation du disque suppose l'exécution de l'utilitaire repquota.

Exemple 16.5. Sortie de la commande repquota

Par exemple, la commande repquota /home produit la sortie suivante :
*** Report for user quotas on device /dev/mapper/VolGroup00-LogVol02 
Block grace time: 7days; Inode grace time: 7days
			Block limits			File limits		
User		used	soft	hard	grace	used	soft	hard	grace 
---------------------------------------------------------------------- 
root      --      36       0       0              4     0     0 
kristin   --     540       0       0            125     0     0 
testuser  --  440400  500000  550000          37418     0     0
Pour afficher un rapport d'utilisation de disque pour tous les systèmes de fichiers dont les quotas sont activés (-a), utiliser la commande suivante :
# repquota -a
Même si le rapport est facile à lire, certains points doivent être expliqués. Les caractères -- qui sont affichés après chaque utilisateur servent à déterminer si les limites du bloc ou de l'inode ont été dépassées. Si la limite soft est dépassée, le caractère + apparaîtra à la place du caractère - correspondant ; le premier caractère - représente la limite du bloc, et le second représente la limite de l'inode.
Les colonnes grace sont normalement vides. Si une limite soft a été dépassée, la colonne affichera le temps correspondant au délai restant de la période de grâce. Si la période de grâce a été dépassée, la chaîne none (aucun) s'affichera à sa place.

16.2.3. Contrôler l'exactitude des quotas

Lorsqu'un système de fichiers échoue à effectuer un démontage correct (par exemple, dû à une panne du système), il est nécessaire d'exécuter quotacheck. Cependant, quotacheck peut être exécuté de manière régulière, même si le système n'est pas tombé en panne. Les méthodes sûres pour exécuter quotacheck périodiquement incluent :
L'assurance que quotacheck sera exécuté lors du prochain redémarrage

Note

Cette méthode fonctionne mieux pour les systèmes multi-utilisateur (occupés) qui sont redémarrés périodiquement.
En tant qu'utilisateur root, veuillez placer un script shell dans le répertoire /etc/cron.daily/ ou /etc/cron.weekly/ qui contient la commande touch /forcequotacheck — ou planifiez-en un à l'aide de la commande crontab -e. Ceci crée un fichier forcequotacheck vide dans le répertoire root, que le script init du sytème cherchera lors du démarrage. Si celui-ci est trouvé, le script init exécutera quotacheck. Puis le script init supprimera le fichier /forcequotacheck ; ainsi, la planification de la création périodique de ce fichier avec cron assure que quotacheck soit effectivement exécuté lors du prochain redémarrage.
Pour obtenir davantage d'informations sur cron, veuillez consulter man cron.
Exécuter quotacheck en mode mono-utilisateur
Une manière alternative d'exécuter quotacheck en toute sécurité consiste à démarrer le système en mode mono-utilisateur, ce qui empêche toute possibilité de corruption de données dans les fichiers de quota, puis d'exécuter les commandes suivantes :
# quotaoff -vug /file_system
# quotacheck -vug /file_system
# quotaon -vug /file_system
Exécuter quotacheck sur un système en cours d'exécution
Si nécessaire, il est possible d'exécuter quotacheck sur un ordinateur à un moment où aucun utilisateur n'est connecté, ainsi il n'y aura aucun fichier ouvert sur le système en cours de vérification. Exécutez la commande quotacheck -vug file_system  ; cette commande échouera si quotacheck ne peut pas monter à nouveau le système de fichiers donné file_system en lecture seule. Remarquez qu'après la vérification, le système de fichiers sera remonté en lecture-écriture.

Avertissement

Exécuter quotacheck sur un système de fichiers en cours d'exécution monté en lecture-écriture n'est pas recommandé à cause de la possibilité de corruption de fichier(s) de quota.
Veuillez consulter man cron pour obtenir davantage d'informations sur la configuration de cron.