Le Syst me GNU/Linux
Master Professionnel en Logiciels Libres
(MP2L)
Pr. Habib SMEI
E-Mail :[email protected] / [email protected]
1
Chapitre 5
Syst me de Gestion de
Fichiers
2
Fichiers
Fichier = Objet typ sur lequel on peut appliquer
des op rations Il a une signification plus
large que celle connue usuellement (fichier
disque).
Exemples : Fichier lecteur CD, Fichier
imprimante, Fichier terminal, etc.
3
Fichiers
Le syst me GNU/Linux, attribue, pour chaque fichier, une
entr e appel e i-nSud (index node) dans une table
d crivant ses diff rentes propri t s.
Un fichier s'identifie, dans le syst me, au travers la
connaissance de l'identificateur de la table contenant ses
propri t s (appel e disque logique) et de l'indice dans
cette table de l'entr e contenant ces propri t s.
4
Syst me de Fichiers
Cest un ensemble de r gles qui organisent la mani re dont les
fichiers sont stock s et r cup r s sur un disque dur ou sur
nimporte quel support de stockage. La disposition des
donn es sur un support est tr s structur e. Par exemple, on
part dune racine qui abrite des r pertoires qui, eux-m mes
sont capables de contenir plusieurs niveaux de sous-
r pertoires.
5
Partitionnement
Le syst me GNU/Linux n'utilise pas une table de
fichiers mais plusieurs et chacune est relative
une arborescence bien d termin e.
L'acc s l'une des arborescences est possible
gr ce au m canisme de montage (mounting) : il
s'agit de cr er un point d'acc s cette
arborescence partir de la racine absolue du
syst me de fichiers.
6
Arborescence du syst me de fichiers
La hi rarchie est normalis e
" Norme courante : FHS 2.2 (Filesystem Hierarchy
Standard). FHS 2.3 en cours &
" http://www.pathname.com/fhs/
/
home
proc
usr
boot
lib
opt
dev
etc
var
Ftp & hb
bin lib man tmp
lib log run spool tmp
7
Les diff rents types de fichiers
1. Les fichiers r guliers
Fichiers disque, leur contenu n'est pas
n cessairement structur : ex cutables, programmes
en code source, donn es, etc.
2. Les fichiers r pertoires
Ils permettent aux utilisateurs de d signer leurs
fichiers. Les r pertoires suivants sont
particuli rement importants dans tout syst me
GNU/Linux:
8
Les diff rents types de fichiers
/bin et /usr/bin
/dev
/etc
/home ou /users
/tmp
/boot
/root
/lib et /usr/lib
9
Les diff rents types de fichiers
3. Les fichiers sp ciaux
Les fichiers sp ciaux en mode bloc
Comme les disques. Le transfert de donn es dans
une op ration d'entr e-sortie est r alis par blocs
(512 ou 1024 octets).
Les fichiers sp ciaux en mode caract re Comme
les terminaux et les imprimantes. Ce type de
p riph riques transf re les donn es octet par
octet et il n'y a pas d'utilisation de caches
d'entr e-sortie.
10
Les diff rents types de fichiers
4. Les liens symboliques
Fichiers qui pointent sur d'autres fichiers (ou
r pertoires). Ces derniers peuvent exister ou non.
Les liens symboliques et les fichiers (ou r pertoires)
peuvent appartenir, ou non, au m me syst me de
fichiers.
5. Les tubes nomm s (fifo)
Permettent aux processus, n'ayant pas de liens de
parent , d' changer des informations. (manipul s
par des appels syst me open, read et write)
11
Les diff rents types de fichiers
6. Les sockets
Il s'agit d'objets permettant la communication
bidirectionnelle entre les processus. Les sockets permettent
aussi la communication entre des applications distantes
(applications r parties).
12
Notion d'i-nSud
Un i-nSud contient, typiquement, les informations suivantes :
Le uid et le gid du fichier
Le type du fichier
Les droits d'acc s des utilisateurs
La taille du fichier (en octets)
Le nombre de liens physiques sur le fichier
Les dates du dernier acc s et de derni re
modification du fichier
L'adresse, sur disque, du fichier
13
Notion d'i-nSud
Remarques importantes:
" Un i-nSud ne contient aucun nom pour le fichier
correspondant.
" Chaque utilisateur est caract ris par un num ro
d'utilisateur et appartient un groupe particulier (ou
plusieurs). Pour tout fichier, GNU/Linux d finit
trois classes d'utilisateurs: User (propri taire) Group
(groupe auquel le propri taire) et Others (autres
utilisateurs)
14
Commandes de base du syst me de gestion de
fichiers
1. La commande pwd
2. La commande cd
3. La commande ls
4. La commande cat
5. La commande cp
6. La commande ln
7. La commande mv
8. La commande rm
9. la commande mkdir
10. La commande rmdir
11. La commande chmod
12. La commande umask
15
principaux r pertoires du syst me
: Repertoire racine du syst me
: Les commandes essentielles (binaires)
: Contient les fichier du chargeur de boot (noyau vmlinuz, etc .)
: Les fichiers de p ripherique
: Les fichiers de configuration du syst me
: Les librairies essentielles et les modules du noyau
: Point de montage pour montage temporaire de syst me de fichier
Advertisement
: Lieu d'installation de logiciels additionnels
: Les commande essentielle du syst me
: Les donn es des services rendu par le syst me
: Repertoire temporaire
: Programmes accessibles tout utilisateur
: Pour les donn es variables
: Syst me de fichier virtuel informations sur les processus et du
: R pertoire personnel des utilisateurs
: R pertoire personnel du super Utilisateur
/
bin
boot
dev
etc
lib
mnt
opt
sbin
srv
tmp
usr
var
proc
syst me
home
root
Permissions (droits dacc s)
l Types dutilisateurs
Owner ( Propri taire ) u
Group g
Others (Le reste du monde) o
l Types de permissions
Read ( Lecture ) r
Write ( Ecriture ) w
Execute ( Ex cution ) x
17
Permissions (droits dacc s)
$ ls -l
-rwxrwxrwx 1 user1 group 512 Mar 14 11:36 filename1
18
File TypeUser AccessGroup AccessOther AccessOctal4 2 14 2 14 2 1-r w xr w xr w xPosition12 3 45 6 78 9 10Read Write Execute *Permissions (droits dacc s)
l Permissions sur les r pertoires
Read
- Lister le r pertoire (ls).
Write
- Possibilit dex cuter les commandes
cp, mv, rm dans le r pertoire
Execute - Possibilit dutiliser la commande cd
dans le r pertoire
19
Commandes sur les droits
chmod
Access_String
file . . .
l Change les permissions dun fichier.
l Ex cut e uniquement par le propri taire.
l M thode dite Access Strings :
Classe
Combinaison de :
u
g
o
a
Operateurs
+
+ Ajout de droits.
- Retrait de droits.
= Set (supprime anciens).
+
Type dacc s
Combinaison de :
r
w
x
t
s
20
Commandes sur les droits
$ chmod u=rwx,g=r,o-rwx filename1
$ chmod o+r filename1
$ chmod go+x filename1
21
Permissions par d faut
Quels sont les droits affect s la cr ation d'un fichier ou
d'un r pertoire ?
La commande umask :
umask (pour afficher le masque)
umask
l D termine le masque de permissions lors de la cr ation de fichiers ou
r pertoires
mode d termine les restrictions
Au plus lev est le mode, au plus restrictives seront les permissions.
umask S (pour afficher le masque sous forme symbolique)
umask valeur_masque (pour modifier le masque)
$ umask 026
$ umask 077
22
Permissions par d faut
Changer les droits d'acc s (session en cours) :
Les permissions des fichiers ordinaires correspondent a la valeur du
masque sur laquelle est fait un ou exclusif (XOR) avec la valeur
666.
Les permissions des r pertoires correspondent a la valeur du masque
sur laquelle est fait un OU exclusif (XOR) avec la valeur 777.
Le masque donn la commande umask pr cise les droits qui
seront supprim s la cr ation du fichier. Par exemple avec :
umask 021 (en binaire 000 010 001)
un r pertoire cr avec ce masque obtiendra les droits suivants :
111 101 110 soit u=rwx gx=r o=rw
23
Permissions par d faut
Changer les droits d'acc s :
La modification des droits l'aide de la commande
umask a des effets seulement durant la session
en cours.
Pour rendre cette modification permanente, il faut
modifier le script :
/etc/profile (par root pour le profil g n ral)
$HOME/.bash_profile (par l'utilisateur pour son profil)
ou Fichier /etc/login.defs Modifier le param tre UMAK
UMASK 027 (exemple)
24
Changement de propri taire
l chown
Change le propri taire du fichier
chown
new_owner file(s) . . .
l chgrp
Change le groupe du fichier
chgrp
new_group file(s) . . .
$ ls -l file1
-rwxr-xr-x 1 salah prog 512 Mar 14 11:36 file1
$ chgrp acct file1
$ chown hal file1
$ ls -l file1
-rwxr-xr-x 1 hal
acct 512 Mar 14 11:36 file1
25
Permissions (droits dacc s)
Les droits tendus
Le droit SUID
Ce droit s'applique aux fichiers ex cutables, il permet
d'allouer temporairement un utilisateur les droits du
propri taire du fichier, durant son ex cution.
Les utilisateurs ex cutent des commandes qui crivent
dans des fichiers dont les droits sont en "lecture seule" ou
"aucun". Par exemple :
" La commande "cat /etc/shadow" ex cut e par un
utilisateur entra nera un refus ("r - - - - - - - -").
" Par contre la commande /usr/bin/passwd permet ce
m me utilisateur de modifier son mot de passe donc
d' crire dans le fichier /etc/shadow.
26
Permissions (droits dacc s)
Le droit SUID
- Les droits pr sent s par la commande
/usr/bin/passwd sont : r - s - - x - - x.
- L'utilisateur peut ex cuter la commande ("x") mais il ne
peut pas crire dans /etc/shadow
- Le "s" qui se superpose au droit "x" du propri taire
Advertisement
root permet l'utilisateur dex cuter la commande avec
les droits du propri taire root (le "s" ne supprime pas le
"x" qui est simplement cach ).
27
Permissions (droits dacc s)
Positionner le droit SUID
La valeur en octal du droit SUID est 4000 (100 000 000 000).
Par exemple sur le fichier "commande" on souhaite
obtenir les droits : "r s r x - - -":
chmod 4550 commande
28
Permissions (droits dacc s)
Le droit SGID
Il donne un utilisateur les droits du groupe auquel
appartient le propri taire de l'ex cutable et non plus les
droits du propri taire de lex cutable.
Ce droit a une tout autre utilisation s'il est appliqu un
r pertoire.
D'une fa on g n rale, la cr ation d'un fichier, le groupe
propri taire est celui du propri taire de lutilisateur. Avec
le droit SGID le groupe sera celui d fini au niveau du
r pertoire p re.
29
Permissions (droits dacc s)
Positionner le droit SGID
" Un "s" se superpose ici au droit "x" du groupe
propri taire d'un r pertoire.
"
La valeur octal du droit SGID est 2000 (010 000 000 000).
Par exemple sur le r pertoire"/home/doc" on souhaite
obtenir les droits :
-
-
"drwxr-s- - -" : chmod 2750 /home/doc
"drwxr-S- - -" : chmod 2740 /home/doc
30
Permissions (droits dacc s)
Le "sticky bit"
Ce droit s'applique aux r pertoires et est symboliquement
repr sent par un "t" la place du "x" de la cat gorie "o"
Ce droit permet d'interdire un utilisateur de supprimer
un fichier dont il n'est pas propri taire alors qu'il le droit
d' crire dans le r pertoire (donc de supprimer).
31
Permissions (droits dacc s)
Positionner le "sticky bit"
La valeur octal de ce droit est 1000 (001 000 000 000).
Par exemple pour appliquer ce droit sur le r pertoire
"/home/doc" et obtenir les droits : "drwxrwxrwt":
chmod 1777 /home/doc
32
Permissions (droits dacc s)
Remarque :
Si le droit "x" n'est pas accord sous le droit "s" ou "t"
le droit tendu appara t en majuscule "S" ou "T"
Soit chmod 2750 /home/doc ("drwxr-s- - -")
Avec chmod 2740 /home/doc
On obtiendra "drwxr-S- - -"
(suppression du droit "x" derri re le "s")
33
Liens entre fichiers
l ln
Cr e un lien entre fichiers (raccourcis).
Hard Link - Associe deux inodes un fichier.
l Hard links: Repr sente un m me fichier deux
emplacements diff rents
l Possible seulement au sein dun m me file system.
Soft (symbolic) Link - Pointeur indirect sur un fichier.
l Est une entr e dans un r pertoire repr sentant un chemin
vers un fichier.
l Peut tre exploit entre diff rents file systems.
l Lien vers un fichier sans se soucier de sa place originale.
$ ls -l file1 file2
lrwxrwxrwx 1 hal acct 512 Mar 14 11:36 file1-> filepointat
-rwxrwxrwx 2 hal acct 512 Mar 14 11:36 file2
34
Exemple de liens
Le fichier myfile comprend la fois un lien
symbolique et un lien hard.
myfile
hlink
slink
data
Pointer
35
Exemple de liens
Si myfile est supprim , alors hlink pointe encore
sur data et slink ne pointe sur aucun l ment.
myfile
hlink
slink
data
Pointer
36
Liens entre fichiers
Si un nouveau myfile est cr , hlink pointe toujours sur le data
original et slink pointe sur le nouveau data de myfile.
myfile
hlink
slink
data
data
Pointer
37
Planification des t ches
Planification des taches (crontab)
Commande crontab
Syntaxe des lignes des tables crontab
Planification asynchrone (anacron)
Planification avec la commande at
38
Planification des t ches
Le service crond
Dans un syst me Unix, de nombreuses t ches sont
r guli rement planifi es :
" La mise jour de la BD du programme locate ;
" La rotation des logs ;
" Les sauvegardes ;
" Des scripts d'entretien (comme le nettoyage des fichiers
temporaires).
39
Planification des t ches
cron est le d mon en charge d'ex cuter des commandes
planifi es et r currentes (chaque jour, chaque semaine,
etc.) ;
atd est celui qui s'occupe des commandes ex cuter une
seule fois, un instant pr cis et futur.
40
Planification des t ches
Le service crond
Il est charg de faire ex cuter par le syst me toutes t ches
(commandes et scripts) d finies et planifi es l'avance.
Ces t ches allant de la simple commande aux scripts
complexes peuvent ainsi tre ex cut es heure fixe et
m me de fa on p riodique, et fait l'objet de messages de
compte-rendu.
41
Planification des t ches
Planification des taches (commande crontab)
La commande crontab permet la programmation des t ches planifi es.
Son usage est r serv e root.
Par d faut, tous les utilisateurs peuvent planifier l'ex cution de t ches.
C'est pourquoi chacun dispose de sa propre crontab, o il peut consigner
les commandes planifier. Il peut la modifier en ex cutant crontab -e
ses informations sont stock es dans le fichier
/var/spool/cron/crontabs/utilisateur
42
Planification des t ches
Planification des taches (commande crontab)
On peut toutefois autoriser certains utilisateurs et interdire dautres via les
fichiers /etc/cron.allow et /etc/cron.deny
Exemple : seuls Mohamed et Ali ont la permission d'utiliser le service
crontab
cat cron.allow
Mohamed
Ali
Si le fichier /etc/cron.allow existe, alors vous devez tre pr sent dans ce fichier pour
tre autoris utiliser cette commande. Si le fichier /etc/cron.allow n'existe pas
mais que /etc/cron.deny existe, alors vous ne devez pas tre mentionn dans le
fichier /etc/cron.deny afin de pouvoir utiliser cette commande.
Il est conseill de ne cr er qu'un seul des deux fichiers et ensuite placer le
nom des utilisateurs auxquels on veut donner/refuser l'acc s la
Advertisement
commande crontab.
43
Planification des t ches
Planification des taches (commande crontab)
Le processus crond est normalement lanc au d marrage.
On peut le lancer ou l'arr ter avec https://phoenixnap.com/kb/start-stop-
restart-linux-services systemctl start crond.service (ou
/etc/rc.d/init.d/crond pour system V)
Il lit toutes les minutes les fichiers pr sents dans le r pertoire
/var/spool/cron (et aussi le fichier /etc/crontab, pour voir si des t ches
doivent tre ex cut es).
Chaque action de crond ajoute une ligne de message dans le fichier
/var/log/cron, qu'il faut purger de temps en temps ... par une commande
crontab (CAD cr er un script de purge et le placer dans le fichier crontab)
Par d faut si une commande produit un affichage, il est dirig vers la
messagerie
44
Planification des t ches
L'utilisateur root dispose de sa crontab personnelle, mais peut galement
employer le fichier /etc/crontab ou d poser des crontab suppl mentaires dans
le r pertoire /etc/cron.d/
Ces deux solutions ont l'avantage de pouvoir pr ciser l'utilisateur sous l'identit
duquel ex cuter la commande.
Le paquet cron propose par d faut des commandes planifi es qui ex cutent :
" une fois par heure les programmes du r pertoire /etc/cron.hourly/ ;
" une fois par jour les programmes du r pertoire /etc/cron.daily/ ;
" une fois par semaine les programmes du r pertoire /etc/cron.weekly/ ;
" une fois par mois les programmes du r pertoire /etc/cron.monthly/.
De nombreux paquets Debian profitent de ce service : en d posant dans ces
r pertoires des scripts de maintenance, ils assurent le fonctionnement optimal
de leur service.
45
Planification des t ches
Commande crontab[-u user]{-l |-r|-e}
Options :
crontab -l affiche le fichier crontab de l'utilisateur
crontab r efface ce fichier
crontab -l -u Med root examine le fichier crontab de l'utilisateur Med
crontab e cr e ou dite (pour modification) un fichier temporaire dans
/tmp ouvert dans vi
Lors de la sauvegarde, le fichier est crit dans /var/spool/cron/$USER, o
$USER est le nom de login de l'utilisateur.
46
Planification des t ches
Syntaxe des lignes des tables crontab
Chaque ligne du fichier contient 6 champs, les 5 premi res d terminent les
moments d'ex cution de la t che d crite au 6 me champ.
Les 5 premiers, s par s par des espaces, appel s champs temporels,
d crivent la p riodicit :
minutes (0-59), heures (0-23), jour du mois (1-31), mois de l'ann e
(1-12), jour de la semaine (0-6, 0= dimanche)
47
Planification des t ches
Syntaxe des lignes des tables crontab
Le 6 me est la commande ex cuter, ce peut tre naturellement un script qcq
un champ temporel peut contenir :
une valeur pr cise et valide pour le champ (par exemple 15 sur le champ minute)
une liste de valeurs valides, s par es par des virgules (1,3,5 dans le champ
mois : janvier, mars, mai)
un intervalle valide (1-5 dans le champ jour : du lundi au vendredi)
pour signifier toutes les valeurs possibles du champ ( dans le champ minute :
toutes les minutes)
*/5 (dans le champ minutes : toutes les 5 minutes), 0-23/3 (dans le champ
heures : toutes les 3 heures)
48
Planification des t ches
Exemples
ex cution chaque 1er et 15 de chaque mois minuit
0 0 1,15 commande
ex cution toutes les heures pass es 15 minutes
15 commande
ex cution tous les matins du lundi au vendredi 7 h 30
30 7 1-5 commande
ex cution tous les quarts d'heure de 15 19h du lundi au vendredi
seulement en 1 re quinzaine du troisi me trimestre
0,15,30,45 15-19 1-15 7-9 1-5 commande
49
Planification des t ches
Exemples
trouver puis nettoyer le r pertoire /tmp des vieux fichiers (non modifi s
depuis 31 jours) tous les 1er jour de chaque mois, 2 heures du matin
0 2 1 find /tmp -atime 31 -exec rm -f {} \;
envoyer les messages "Je suis encore au travail !" tous les quarts
d'heure partir de 17 h tous les utilisateurs actuellement connect s,
et le message "Bonjour chef !" root tous les jours ouvrables 10 h
0 10 1-5 write root %Bonjour chef !
/15 17-20 * 1-5 wall %Je suis encore au travail !
50
Planification des t ches
Planification des taches (commande at)
La commande at pr voit l'ex cution d'une commande un moment
ult rieur.
Elle prend l'horaire et la date pr vue en param tres sur sa ligne de
commande, et la commande ex cuter sur son entr e standard.
L'horaire est indiqu en suivant les conventions
habituelles : 16:12 repr sente 16 h 12.
La date peut tre pr cis e au format JJ.MM.AA (27.07.20 repr sentant
ainsi 27 juillet 2020) ou AAAA-MM-JJ (cette m me date tant alors
repr sent e par 2020-07-27).
On peut encore crire explicitement today (aujourd'hui)
ou tomorrow (demain).
51
Planification des t ches
Planification des taches (commande at)
$ at 09:00 25.05.20 <<FIN
echo "Penser me renseigner de la progression de vos activit s pour
la s ance de r vision" \
> | mail [email protected]
FIN
warning: commands will be executed using /bin/sh
job 31 at Mon May 25 09:00:00 2020
52
Planification des t ches
Planification des taches (commande at)
Une autre syntaxe permet d'exprimer une dur e d'attente :
at now + nombre p riode.
La p riode peut valoir minutes, hours (heures), days (jours)
ou weeks (semaines).
Le nombre indique simplement le nombre de ces unit s qui doivent
s' couler avant ex cution de la commande.
53
Planification des t ches
Planification des taches (commande at)
Pour annuler une t che planifi e pour cron, il suffit, lors d'un appel
crontab -e, de supprimer la ligne correspondante dans la crontab o la
t che est d finie. Pour les t ches at, c'est peine plus complexe : il suffit
d'ex cuter la commande atrm num ro-de-t che. Le num ro de t che est
indiqu par la commande at lors de la planification mais on pourra le
retrouver gr ce la commande atq, qui donne la liste des commandes
actuellement planifi es.
54
Planification des t ches
Planification asynchrone : (commande anacron)
anacron est le d mon qui compl te cron pour les ordinateurs
non allum s en permanence. Les t ches r guli res tant
habituellement planifi es au milieu de la nuit, elles ne seront
jamais ex cut es si la machine est teinte ce moment-l .
La fonction d'anacron est de les ex cuter en prenant en
compte les p riodes o l'ordinateur ne fonctionne pas.
55
Planification des t ches
Planification asynchrone : (commande anacron)
Attention, anacron fera fr quemment ex cuter cette activit en
retard quelques minutes apr s le d marrage de la machine, ce
qui peut en perturber la r activit . C'est pourquoi les t ches du
fichier /etc/anacrontab sont d marr es sous la
commande nice, qui r duit leur priorit d'ex cution et limitera
donc l'impression de lenteur du reste du syst me. Attention, le
format de ce fichier n'est pas le m me que celui
de /etc/crontab
56
Gestion des quotas
Quest ce quun quota ?
Un outil qui permet de ma triser l'utilisation de l'espace disque.
Les quotas consistent fixer une limite d'espace pour (user,group)
Pour la cr ation de ces quotas, on d finit 2 types de limites :
- La limite douce (ou soft limit) :
la quantit maximale d'espace qu'un utilisateur peut occuper sur
le syst me de fichiers.
les utilisateurs pouvent temporairement d passer leur limite douce
- La limite dure (ou hard limit):
.une limite absolue pour l'utilisation de l'espace. L'utilisateur ne peut
Advertisement
pas d passer cette limite. Pass e cette limite,est interdite.
57
Gestion des quotas - Activations des
Quotas
Les Quota sont activ s au d marrage gr ce a la commande quotaon lanc e par le script
/etc/rc.d/rc.sysinit
En tant que super utilisateur et en utilisant l' diteur de texte de votre choix, ajoutez les
options usrquota et/ou grpquota aux syst mes de fichiers n cessitant des quotas :
Dans cette exemple, des quotas pour l'utilisateur et le groupe d'utilisateurs sont
activ s dans le syst me de fichiers /home.
58
Gestion des quotas - Remontage des
syst mes de fichiers
Apr s avoir ajout les options usrquota et grpquota,
remonter chaque syst me de fichiers dont l'entr e fstab a
t modifi e pour prendre en compte la modification :
mount -o remount /home
59
Gestion des quotas - Cr ation de fichiers quota
Cr er le fichier qui contiendra les quotas :
#touch /home/aquota.user
#touch /home/aquota.group
Apr s cr ation de ces fichiers, il faut initialiser la base des quotas en ex cutant la commande
suivante :
quotacheck avug
Les options sont utilis es de la mani re suivante:
a v rifie tous les syst mes de fichiers mont s localement et dot s de quotas
activ s
v affiche des messages de statut (verbose) lors de la v rification du quota
u v rifie les informations relatives au quota de disque utilisateur
g v rifie les informations relatives au quota de disque groupe
60
Gestion des quotas - Attribution des
quotas -User - group-
La derni re tape consiste attribuer les quotas de disque l'aide de la commande
edquota
Syntaxe : edquota
u user : d finit les quotas pour un ou plusieurs utilisateurs
g group : d finit les quotas pour un ou plusieurs groupes
t : d finit les d lais
Exemple :
Disk quotas for user testuser (uid 501):
Filesystem
soft hard
/dev/hda3 440436 0 0 37418 0 0
blocks soft hard inodes
61
Gestion des quotas - Attribution des
quotas -Suite
Fixer un d lai
le d lai fix entre le moment o l'utilisateur atteint la limite soft et celui o on va lui
interdire toute occupation suppl mentaire dans le syst me de fichiers.
Syntaxe : edquota t
Exemple :
edquota t
P riode de gr ce avant d'appliquer les limites souples pour les utilisateurs :
Lunit de temps peut tre : days, hours, minutes, ou seconds
62
Gestion des quotas - Mise en place
Commandes
But : mettre en place des quotas.
1. Pour activer les quotas utilisateur et remontez le syst me de fichiers (/DONNEES) :
Dans /etc/fstab :
LABEL=DONNEES /DONNEES ext3 defaults,usrquota 0 0
puis : # mount -o remount /DONNEES
2. Cr ez et activez les quotas.
quotacheck -c /DONNEES
quotaon /DONNEES
3. Placez une limite globale de 150 Mo lutilisateur Mohamed :
edquota Mohamed, puis inscrivez la valeur 153600 (en octets) en hard et soft, et
sauvegardez le fichier.
63
Gestion des quotas Mise en place des quotas
1 Mise en place
Vous voulez mettre en place les quotas sur la partition /home (par exemple) en
respectant les tapes suivantes :
- Modifiez les options de partition dans /etc/fstab : On rajoute dans les options
usrquota (utilisateur) ou grpquota (groupe), ou les deux.
LABEL=/home /home ext3 defaults,usrquota 1 2
- Remontez le syst me de fichiers : # mount -o remount /home
-
Cr ez les fichiers contenant les informations de quota (base de donn es de
quotas) : # cd /home # touch aquota.user aquota.group
- Mettez jour la base de donn es avec la commande quotacheck :
-
quotacheck -c /home
64
Gestion des quotas Mise en place des quotas
- D marrez (ou arr ter) les quotas. Cette op ration nest pas n cessaire apr s un
red marrage de Linux car la mise en place des quotas est comprise dans les
scripts de d marrage. La commande quotaon d marre les quotas pour le syst me
de fichiers indiqu (-a pour tous). La commande quotaoff stoppe les quotas.
quotaon /home
-
-
ditez les quotas pour les utilisateurs ou les groupes. La commande edquota est
utilis e.
En pratique, si tous les utilisateurs doivent avoir les m mes quotas ou avec
quelques variantes, on cr e un utilisateur lambda dont on recopiera les
propri t s.
-
tablir les quotas pour Mohamed : # edquota Mohamed ou # edquota -u
Mohamed
65
Gestion des quotas Mise en place des quotas
-
Les quotas de Ali sont identiques ceux de Mohamed :
edquota -p Mohamed Ali
-
tablissez le d lai de gr ce. Le d lai accepte les unit s seconds , minutes ,
hours , days , weeks , monthes .
edquota -t
" V rifiez les quotas. Les utilisateurs peuvent v rifier l tat de leurs quotas avec la
commande quota. Ladministrateur peut g n rer un rapport avec repquota. Enfin la
commande warnquota qui peut tre ex cut e via cron peut envoyer un mail aux
utilisateurs pour les pr venir en cas de d passement.
L dition des quotas se fait avec l diteur par d faut du syst me qui est
g n ralement vi (le comportement peut tre modifi via les variables EDITOR et
VISUAL). Les blocs de quotas sont des blocs de 1 Ko.
66
Gestion des quotas Mise en place des quotas
edquota Mohamed
Disk quotas for user Mohamed (uid 502):
Filesystem blocks softhard
inodes
softhard
/dev/hda5 1695256
25000003000000 12345 00
Avec l diteur, on peut modifier les valeurs soft et hard qui correspondent aux
limites douces et dures pour le nombre de blocs et le nombre dinodes. Ci-dessus, il a
t tabli une limite douce environ 2,4 Go (2500000 ko) et dure environ 2,9 Go
(3000000 ko) doccupation du syst me de fichiers pour roger. Il ny a pas de quotas
sur le nombre dinodes (valeur 0).
edquota Mohamed
Le contenu des champs blocks et inodes est dynamique et ne doit pas tre touch ,
ce qui na de toute fa on aucun effet.
67
Gestion des quotas Mise en place des quotas
edquota -t
Filesystem Block grace period Inode grace period
/dev/hda3 7days
7days
repquota /home
* Report for user quotas on device /dev/hda5
Block grace time: 7 days; Inode grace time: 7 days
User Used
soft hard grace
used
soft hard
root
-- 12345 0 0
5 0 0
Mohamed -- 1695256 2500000 3000000 12345 0 0
Une derni re n cessit est dutiliser r guli rement la commande quotacheck pour
maintenir la coh rence des informations de quotas des syst mes de fichiers.
En effet, en cas arr t des quotas ou de probl me (arr t inopin par exemple), il peut
parfois tre n cessaire de v rifier et de r actualiser les informations. # quotacheck -
avug
68