Vous êtes sur la page 1sur 6

-1-

Travaux pratiques
UNIX


Zied BOUYAHYA-Groupe II1



LE SYSTEME DE GESTION DES FICHIERS


Premire partie : La gestion du disque

Rappel du cours :

Comme tous les priphriques, sous Linux, le disque est reprsent par un fichier spcial de
type bloc.
Le S.E. Linux attribue une nomenclature aux fichiers spciaux reprsentant les disques et ce
suivant le type du contrleur (connecteur la carte mre) et linterface sur laquelle il est
connect.
Les disques relis des contrleurs IDE sont dsigns par hd[a-z]
hda dsigne le 1
er
disque maitre
hdb dsigne le 1
er
disque esclave
hdc dsigne le 2
me
disque maitre
etc.
Les lecteurs CDROM, DVD et graveurs sont considrs comme des disques IDE et, par
consquent, ont la mme nomenclature.

Les disques relis des connecteurs SCsI, USB, firewire sont dsigns par sdX. X=[a-z]
X dsigne lordre de dtection du disque

Listez les informations relatives aux disques connects en utilisant les commandes hdparm et
sdparm. (Vrifiez les options des commandes)

I. Partitionnement du disque

Une table de partitions contient les caractristiques des partitions : taille en nombre de
secteurs, position par rapport la partition principale, type de la partition, S.E. rsidant,
Nom de volume etc.

1) Les types des partitions

Il existe 3 types de partitions : primaire, tendue et logique
Un disque peut contenir au max 4 partitions primaires (dont une seule doit tre active)
Si on veut plus de partitions alors :
On cre 3 partitions primaires et on laisse une partition tendue. Celle-ci pourra son tour
tre partitionne en plusieurs lecteurs logiques (disques logiques)
Les partitions sont numrotes de 1 15 tel que :
-2-
De 1 4 on rfre une partition primaire ou tendue
De 5 15 on rfre une partition logique

Exemples :
hda2 dsigne la 1
re
partition primaire du 1
er
disque maitre IDE
sdb5 dsigne 1
re
partition logique du 2
me
disque SCSI

2) La commande fdisk
a. Syntaxe
f di sk [ - opt i ons] pr i phr i que

b. Description
La commande f di sk ( cf di sk) est un programme dirig par le menu qui permet
de manipuler les partitions sur le priphrique spcifi en argument. (on indique le
chemin /dev/[h|s]d[a-z]

Comment raliser les tches suivantes laide de fdisk ?
Cration dune partition
Suppression dune partition
Changement du type de la partition
Tapez fdisk priphrique

3) Manipulation des swaps
a. La commande mkswap
Cette commande permet de crer une zone de swap linux sur un priphrique ou
dans un fichier (taille sup. 40kB)
Exemple : mkswap / dev/ hda4
b. La commande swapon
Cette commande permet dactiver une zone de swap
c. La commande swapof f
Cette commande dsactive la pagination sur toutes les entres de / et c/ f st ab

II. Formatage dun systme de fichiers

Le formatage dun S.F. consiste crer une organisation logique (arborescence) avant de
placer les donnes.
Cas de Linux : Les systmes de fichiers rpandus sont : ext2, ext3, reiserfs, xfs, VFAT, iso
9600, ext4, HPFS etc
La commande mkfs permet de crer un systme de fichiers
Syntaxe : mkf s t t ype_f s [ - opt i ons] pr i phr i que
ou mkf s . t ype_f s pr i phr i que
On peut convertir un S.F ext2 en ext3 avec tune2fs j ou inversement avec mkfs O
On peut galement avoir les informations sur un priphrique en utilisant la commande
dumpe2fs -h

III. Montage dun systme de fichiers
a. Montage Manuel
Syntaxe gnrale:
mount -t <type_fs > -o options /dev/rep-spcial /mnt/rep-montage
Si cette description est prsente dans le fichier /etc/fstab, la commande peut tre
-3-
simplifie
mount /dev/rep-spcial ou mount /mnt/rep-montage

Testez les options de montage suivantes :
default, sync/async, exec/noexec, atime, user/nouser, ro/rw,
dev/nodev, noload, usrquota/grpquota

Exercice :
On veut raliser le schma de partitionnement suivant : (la taille du disque est limite
2GO)

Device Boot Start End Id System
/dev/sda1 * 1 512 b NTFS (VFAT)
/dev/sd2 513 2000 5 Extended
/dev/sda5 513 1750 83 Linux
/dev/sda6 1751 2000 82 Swap


1. Identifiez les diffrentes partitions :
Disque partitionn
Types : (primaire, tendue, logique)
Tailles
Identificateurs
2. Utilisez lutilitaire fdisk/cfdisk pour crer les partitions considres.
3. Formater les diffrentes partitions pour avoir un S.F
/dev/sda1 contient un S.F Vfat
/dev/sda5 contient un S.F ext2
4. Changez le S.F de /dev/sda5 en ext3
5. Initialisez et activez la zone de swap
6. Montez les diffrents systmes de fichiers. Pour cela
a. Crez un rpertoire /TPSF qui servira de point de montage
b. Montez le S.F ext3 sur ce rpertoire
c. Dmontez-le
d. Ajouter ce quil faut dans /etc/fstab pour assurer un montage automatique du
S.F.
e. Donnez la commande pour monter automatiquement le S.F sur /TPFS














-4-

IV. Gestion des quotas
Il s'agit de limiter l'espace disque et/ou le nombre de fichiers allous aux utilisateurs ou
aux groupes, sur un systme de fichiers dsign (une partition).
Il existe deux types de limite :
o Limite soft : il s'agit d'une tolrance, cette limite peut tre franchie (pendant 7
jours par dfaut)
o Limite hard : franchie par un utilisateur ou un groupe, celui-ci ne peut plus
crire sur le disque, tant qu'elle est dpasse
1. Vrifier d'abord que le paquetage est bien install : rpm -q quota
2. Activer la prise en charge des quotas pour un systme de fichiers, en ajoutant sur la
ligne adquate de /etc/fstab, le mot-cl usrquota dans la liste des options
On suppose dans la suite que la partition /dev/hda6 est affect au rpertoire /home.
Pour activer la surveillance des rpertoires personnels, on doit effectuer cette
dclaration dans le fichier /etc/fstab, en ajoutant l'option usrquota (et/ou groupquota)
sur la ligne qui configure le montage de /home :
/ dev/ hda6 / home ext 2 def aul t s, usrquota 1 2
3. Initialiser les tables de quotas
# quot acheck / dev/ hda6
On peut vrifier que le fichier quota.user a t cr dans /home. Il renferme la table des
quotas.
Et gnrer un rapport de surveillance par repquota -a
4. Attribuer des limites aux utilisateurs " surveiller" La commande edquota fait passer
en mode dition dans vi
# edquot a - u t ot o
Quotas for user toto:
/ dev/ hda6 : bl ocks i n use: 148, l i mi t s ( sof t = 0 , har d = 0)
i nodes i n use: 37, l i mi t s ( sof t = 0 , har d = 0)
Il suffit de modifier les valeurs des limites soft et hard.
2. La ligne de commande suivante est souvent adopte pour attribuer les mmes quotas
un ensemble dutilisateurs (au lieu de faire edquota u individuellement) :
# edquot a - p t ot o `awk - F: ' $3 >500 {pr i nt $1}' / et c/ passwd `
Les commandes utiles

quotaon/quotaoff partition|-a : active/dsactive les quotas sur la|toutes partition(s)
repquota a : affiche un rapport complet par utilisateur et par groupe
quota -v toto tat des quotas pour l'utilisateur toto
quotacheck <partition> Met jour les tables de quotas. Lanc chaque dmarrage du
systme
-5-
edquota -u toto Edition sous vi des limites
edquota -p toto liste Impose les quotas de toto aux membres de la liste
edquota -t Edition sous vi de la dure de la "grace"

Exercice
1. Vrifier que vous disposez d'une partition ddie /home
2. Mettre en uvre la vrification des quotas sur cette partition
3. Crer un utilisateur standard toto (avec les options par dfaut)
4. Quelle est la taille de son rpertoire personnel ?
5. Configurez et activez les quotas sur cette partition
6. Surveiller toto en lui fixant des limites d'espace disque 100 Ko et 300 Ko
7. Que vous indique alors le rapport fourni par repquota ?
8. toto n'en tenant pas compte, recopie dans son rpertoire perso la doc d'apache
/usr/share/doc/apache/
Que se passe t-il ? Conclusions ?
9. toto fait le mnage dans son rpertoire personnel. Peut-il de nouveau en disposer ?
10. Si root dsactive la surveillance par quotaoff -a, que peut faire toto ?
11. Comparez les commandes repquota -a et du -h /home/toto. Suffit-il de ractiver par
quotaon -a ? Testez !
12. Crer quelques nouveaux utilisateurs et leur imposer les mmes quotas qu' toto
2
me
partie Gestion des utilisateurs et des droits daccs

Ajouter un utilisateur : user add
Modifier un utilisateur user mod
Supprimer un utilisateur user del
Ajouter un groupe gr oupadd
Modifier un groupe gr oupmod
Supprimer un groupe gr oupdel
Changer lutilisateur dun fichier : chown
Changer le groupe dun fichier chgr p


1. Crez un nouvel utilisateur user_ii2h_tp avec le rpertoire personnel correspondant.
2. Modifiez le champ comment de lutilisateur cre pour devenir excellent_etudiant
3. Visualisez la ligne correspondante la liste des informations dans le fichier adquat
4. Fixez la date dexpiration du mot de passe de cet utilisateur 3 jours.
5. Crez un groupe nomm ii2H_tp.
6. Modifiez le groupe de user_ii2h_tp par ii2H_tp
7. Crez un nouveau groupe nomm ii2H_ENSI ayant comme identifiant 2011
8. Visualisez les informations relatives ce groupe dans le fichier adquat
9. Ajouter le groupe ii2H_ENSI la liste des groupes secondaires de lutilisateur
user_ii2h_tp
10. (vrifiez le rsultat avec la commande id)
11. Crez un nouveau fichier file_test et modifiez son appartenance pour le groupe
ii2H_ENSI
12. Modifiez le nom de connexion de lutilisateur cre new_ user, puis modifiez son mot
de passe
-6-
13. Attribuez lidentifiant 2012 cet utilisateur
14. Revrifiez les informations sur new_user dans le fichier appropri.
15. Supprimez lutilisateur cre et son rpertoire personnel
16. Supprimez le groupe cre

Remarque : pour faire ces oprations vous devez vous connecter en tant que super root
$ sudo su


3
me
partie Manipulation des fichiers

Exercice 1
Dans votre rpertoire personnel crez 2 rpertoires nomms respectivement rep_tp1 et rep_tp2
et 8 fichiers f_1, f_2, f_3, f_4, f_5, f_6, f_7, f_8.
Dplacez les fichiers f_1 f_5 dans rep_tp1 et les autres fichiers dans rep_tp2
Attribuez les droits daccs suivants aux fichiers (mthode symbolique) :

f_1 640
f_2 600
f_3 544
f_4 740
f_5 644
f_6 430
f_7 664
f_8 334
rep_tp1 640
rep_tp2 330

Peut-on dplacer le fichier f_7 dans le rpertoire rep_tp1 ? Sinon comment pourrait-on le
faire ?
Peut-on afficher le contenu du rpertoire rep_tp2 ? Pourquoi ?
Quels sont les droits par dfaut ?
Modifiez les droits par dfaut pour crer des fichiers avec les droits 444.
Crez un nouveau rpertoire rep_tp3 sous /home et deux fichiers f_9 et f_10
Visualisez les droits daccs de tous les fichiers et rpertoires de votre rpertoire (/home)
Etudiez la faisabilit des commandes suivantes
ls rep_tp3
cp f_9 rep_tp3
mv f_10 rep_tp3
cat rep_tp3/f_9
cat >>rep_tp3/f_9
rm rep_tp3/f_9