Vous êtes sur la page 1sur 14

Gestion des fichiers Linux administration avancée

1. Structure du système de fichier


Le système de fichiers structure les données sur le(s) disque(s). C’est une arborescence qui suit les conventions Unix et se présente comme suit :

L’arborescence typique d’un système Lunix est comme suit :

Abderrazak GHANMI
Gestion des fichiers Linux administration avancée

 / est la racine (à peu près comme C:\ sous Windows)


 Le caractère / séparer les répertoires (= \ sous Windows)
 Les majuscules et minuscules importent (case sensitivity)

A. Quelques répertoires importants


. est le répertoire actuel
.. est le répertoire parent
/bin  programmes utilisateur essentiels (nécessaire au démarrage du système)
/boot  fichiers nécessaires au chargement de linux(bootloader, init, noyau)
/dev fichiers spéciaux offrant l’accès au périphériques
/etc configuration du système et des services
/home  contient les répertoires principaux des utilisateurs
/lib  bibliothèques partagés essentielles (nécessaire au démarrage du système)
/mnt contient les points de montages temporaires
/opt contient les applications tierces
/root répertoire principal de l’utilisateur root
/sbin exécutables systèmes essentiels (nécessaires au démarrage du système)
/tmp contient des fichiers temporaires : il est vidé à chaque démarrage
/var  contient diverses données (en particulier les « logs »)
/usr arborescence contenant la plupart des fichiers des applications

Abderrazak GHANMI
Gestion des fichiers Linux administration avancée

Tableau 1: Tableau récapitulatif des dossiers de linux

Dossier Rôle

/ La racine, root
/bin Les commandes
/boot l'amorçage LILO, GRUB
/dev Les périphériques, "devices"
/etc La configuration
/home Les répertoires de base des utilisateurs

/lib Les bibliothèques de routines, le module du


kernel, "library"
/var Les journaux systèmes
/mnt Les volumes montés
/root le répertoire du super utilisateur
/sbin Les fichiers systèmes binaires
/tmp Le répertoire temporaire
/usr les applications
/usr/doc La documentation
/usr/man le manuel de l'utilisateur
B. Chemins relatifs et chemins absolus
L'arborescence de Linux ou celle de tout autres systèmes Unix commencent toujours par la racine
("root dirctory"). Les premiers répertoires justes en dessous de la racine sont répartis par
fonctionnalités. Selon les distributions et/ou l'installation de LINUX, les fichiers de l'arborescence ne
sont pas les même et ne sont pas enregistrés au même endroit.

Le chemin absolu d'un fichier commence toujours par un slash (/) qui identifie la racine. Les chemins
relatifs font référence au répertoire courant ou répertoire de travail.

Exemples :
$ cd /home/user1/classale chemin absolu : accéder au dossier classale en partant de la racine /

$ cd classale chemin relatif : accéder au dossier classale depuis le dossier courant

Abderrazak GHANMI
Gestion des fichiers Linux administration avancée
C. Types de fichiers sous linux

D. Catégorie des fichiers


La commande ls –l affiche un tel résultat :

drwxr-x--- 2 user1 classale 5021 nov 30 11:31 cours1


Argument Description
d Type de fichier
rwxr-x--- autorisations
2 Nombre de lien
user1 Propriétaire
classale Nom du groupe
5021 Taille du fichier
nov 30 11:31 Date de la dernière
cours1 modification
Nom du fichier

Abderrazak GHANMI
Gestion des fichiers Linux administration avancée
E. Type des fichiers

drwxr-x--- 2 user1 classale 5021 nov 30 11:31 cours1

Argument Description

d dossier

- Fichier ordinaire

l Les liens

p Les canaux de communication FIFO des


pipes

c Les périphériques caractère : Les


périphériques caractères comme la souris,
le clavier, le port série, le port parallèle
gère un caractère transmis à la fois.
b Les périphériques bloc : Les périphériques
blocs comme les disques durs, les
lecteurs de CDROM gère une certaine
quantité d'octet à la fois, par groupe de
bloc.
s Les sockets

Abderrazak GHANMI
Gestion des fichiers Linux administration avancée
F. Droits d’accès

drwxr-x--- 2 user1 classale 5021 nov 30 11:31


cours1
Droit Signification Fichier Répertoire

r Read Le fichier est Le répertoire peut être


lisible consulté ls répertoire
w Write Le fichier est La création, modification ou
modifiable suppression des fichiers ou
répertoires dans ce
répertoire est possible.
x Execute Le fichier peut Le déplacement dans le
être exécuté répertoire est possible

G. Représentation symbolique
Cet ensemble de trois droits sur trois entités se représente généralement de la façon suivante :
On écrit côte à côte les droits r, w puis x respectivement pour le propriétaire u, le groupe g et
les autres utilisateurs o. Les codes u, g et o u comme user, g comme group et o comme others
sont utilisés par les commandes Linux qui permettent d’attribuer les droits et l’appartenance
des fichiers. Lorsqu’un drapeau est attribué à une entité, on écrit ce drapeau r, w ou x, et
lorsqu’il n’est pas attribué, on écrit un ‘-’.
L’exemple suivant signifie que le propriétaire peut lire, écrire et exécuter le fichier, mais que
les utilisateurs du groupe attribué au fichier ne peuvent que le lire et l’exécuter, et enfin que
les autres utilisateurs ne peuvent que lire le fichier.

Abderrazak GHANMI
Gestion des fichiers Linux administration avancée
H. Représentation octale
Les valeurs octales correspondent au tableau suivant de telle sorte que les valeurs possibles
pour un fichier ou un dossier sont :
7 rwx
6 rw-
5 r-x
4 r--
3 -wx
2 -w-
1 –x

Symbole Octal Binaire

r 4 100

w 2 010

x 1 001
I. umask
Les permissions standards sont :
 666 pour les fichiers
 777 pour les dossiers
umask est un masque de création de fichier qu’il faut soustraire des permissions standards
pour obtenir les droits de tout nouveau fichier ou dossier créé par l’utilisateur.
Exercice :
Si 0022 est la valeur umask par défaut :

$ umask
0022

Abderrazak GHANMI
Gestion des fichiers Linux administration avancée
Alors les fichiers nouvellement créés auront des droits :

et les dossiers auront des droits :

II. chmod
chmod est la commande qui permet de changer les permissions des fichiers et des dossiers.
Voici sa syntaxe :
$ chmod [option] permission fichier
Exemples :
Où les permissions peuvent être notées en octal :

$ chmod 777 fichier

Ou en mode symbolique selon la syntaxe en utilisant :

 Les catégories d’utilisateur : u, g, o et a all


 Des opérateurs d’ajout/suppression : =, + et -
 Des droits : r, w et/ou x
$ chmod a+rwx fichier

Abderrazak GHANMI
Gestion des fichiers Linux administration avancée
III. Récursivité
Pour assurer la récursivité, on peut appliquer les permissions à un dossier et toute son
arborescence avec l’option -R :
$ chmod -R g+rwx ./user/classale

2. Les I-nodes des fichiers


Un fichier possède plusieurs informations, telles que le nom, le contenu et d’autres
informations comme les permissions et les dates des dernières modifications.
Ces informations sont sauvegardées dans l’INODE du fichier nœud d’index avec d’autres
données. Un i-node est une structure de quelques dizaines qui contient généralement les
champs suivants :
Le type du fichier ordinaire, spécial, répertoire,
 Les droits d’accès.
 UID : le propriétaire du fichier.
 GID : le groupe auquel il appartient le propriétaire.
 La date de dernière modification, la date du dernier accès, la date de création.
 La taille du fichier en octets.
 Le nombre de liens : un lien d'un fichier est un autre nom de ce fichier,
 Les éléments d'identification du propriétaire et de son groupe,
 L’adresse physique d'implantation sur disque.
Remarques :
 Tout fichier possède son unique i-node.
 L'i-node contient la totalité des informations sur le fichier, sauf le nom.
 Les i-nodes sont tous de même taille.

Abderrazak GHANMI
Gestion des fichiers Linux administration avancée

3. Commandes Shell de manipulations de fichiers


Une commande, dans le sens plus général, est un fichier exécutable. La commande pwd print
working directory Lorsqu'un utilisateur se connecte à une station Unix, il est placé dans un
répertoire personnel, en général situé dans le répertoire /home.
I. La commande pwd
Affiche le chemin d'accès au répertoire courant

II. La commande cd change directory


Cette commande permet de changer le répertoire courant. Sans argument cd permet de se
déplacer vers le répertoire de connexion. cd [chemin]
Exemples :
cd ~ et cd ramènent dans le répertoire de connexion.
cd . : ne change pas le répertoire courant.
cd ..: permet de se déplacer vers le répertoire parent.
cd /: il permet de se déplacer vers la racine.
Les méta caractères permettent donc de spécifier facilement des ensembles de fichiers, sans
avoir à rentrer tous leurs noms. Voici les plus utilisés :
* remplacé par n’importe quelle suite de caractères.
? remplacé par un seul caractère quelconque.
[ ] remplacé par l’un des caractères mentionnés entre les crochets.
On peut spécifier un intervalle avec -: [a-z] spécifie donc l’ensemble des lettres minuscules.
Exemples :
ls *.[a-z].*
fic.txt
ls [bd]*
base données
III. La commande cat
La commande cat affiche les fichiers l’un après l’autre sur la sortie standard écran. Si aucun
argument n’est spécifié, lit sur l’entrée standard clavier jusqu’à rencontrer un caractère fin de
fichier CTRL^D.
Exemple :
cat fich.txt : cette commande permet d’afficher sur l’écran le contenu du fichier fich.txt
cat fich1 fich2: cette commande permet d’afficher sur écran le contenu des deux fichiers fich1
et fich2 Concaténer deux fichiers.

Abderrazak GHANMI
Gestion des fichiers Linux administration avancée
IV. La commande more
La commande more [fichier...]
Permet d’afficher le contenu d’un fichier page à page.

1Liste de quelques commandes utilisés avec les répertoires

Abderrazak GHANMI
Gestion des fichiers Linux administration avancée

2Liste de quelques commandes utilisés avec les fichiers

V. Commande touch
La commande touch créer des fichiers vides
Créer les fichiers f1.txt et f2.txt sous votre répertoire de travail en utilisant la commande
Suivante :
touch f1.txt f2.txt
Donner la commande qui permet de vérifier que les fichiers sont créés. Comment on peut
vérifier que les fichiers sont vides ?
VI. La commande file type de fichier
Il est possible sous linux de connaître aussi le type de fichier sur lequel on travaille. Tous les
fichiers ont un entête permettant de déterminer leur type répertoire, exécutable, texte ASCII,
programme C, document....
La commande file permet de visualiser le type du fichier en question.
file nom_de_fichier

Abderrazak GHANMI
Gestion des fichiers Linux administration avancée
VII. La commande ln Link
Cette commande permet de créer des liens sur des fichiers.
Les liens sont des fichiers spéciaux permettant d'associer plusieurs noms liens à un seul et
même fichier.
Ce dispositif permet d'avoir plusieurs instances d’un même fichier en plusieurs endroits de
l’arborescence sans nécessiter de copie, ce qui permet notamment d'assurer un maximum de
cohérence et d’économiser de l'espace disque. On distingue deux types de liens :
VIII. Les liens symboliques
Représentant des pointeurs virtuels raccourcis vers des fichiers réels.
En cas de suppression du lien symbolique le fichier pointé n'est pas supprimé. Les liens
symboliques sont créés à l'aide de la commande ln -s selon la syntaxe suivante :
ln -s nom_du_fichier_reel nom_du_lien_symbolique
ln –s fichier1 /home/user1/fic1.txt
ls –i fichier1 /home/user1/fic1.txt
6341 fichier1 4230 /home/usr/
ls -l /home/user1/fic1.txt
4230 lrwxrwxrwx 1 ............. /home/user1/fic1.txtfichier1
Si on supprime le fichier de nom fichier1:
rm fichier1
Puis on fait ls -i fichier1 /home/usr/lien on aura: fichier1 not found
/home/usr1/lien
Si on fait cat /home/usr/lien on aura: cat : il n y a pas un fichier ou un répertoire de ce type
IX. Les liens physiques ou liens durs
Représentent un nom alternatif pour un fichier c’est la création de deux ou plusieurs noms
vers une inode unique au moyen de la commande ln. Ainsi, lorsqu’un fichier possède deux
liens physiques, la suppression de l'un ou l'autre de ces liens n'entraîne pas la suppression du
fichier. Plus exactement, tant qu'il subsiste au minimum un lien physique, le fichier n'est pas
effacé mais lorsque l'ensemble des liens physiques d'un même fichier est supprimé, le fichier
est aussi supprimé. Il faut noter toutefois qu'il n'est possible de créer des liens physiques qu'au
sein d'un seul et même système de fichiers. Les liens physiques sont créés à l'aide de la
commande ln selon la syntaxe suivante :
ln nomdu_fichier_reel nom_du_lien_physique
Lors de la création d’un lien physique il n'y a ni copie du fichier, ni création d'un nouvel i-node,
mais simplement augmentation du compteur de référence du fichier dans un répertoire

Abderrazak GHANMI
Gestion des fichiers Linux administration avancée

$ ls -li fichier1
6341 -rw-rw-r--1 ............. fichier1
$ ln fichier1 /home/user1/liendur
$ ls –li fichier1 /home/user1/ liendur
6341 -rw-rw-r--2 ............. fichier1
6341 -rw-rw-r--2 ............. /titi/ liendur

Les deux fichiers partent vers le même numéro d’index numéro d’inode, ce qui veut dire qu’il
y a un seul espace disque associé aux deux noms

Application :
Exercice 1
Dans votre répertoire courant, créez un répertoire courant mes_droits, par défaut ce
répertoire est à 775 (rwxr-xr-x), quelles sont les commandes (en notation symbolique et en
base 8) pour lui donner les droits suivant (on suppose qu'après chaque commande on remet
le répertoire à 775 :
Propriétaire Groupe Les autres

Droit Droit Droit Droit Droit Droit Droit Droit Droit


en en en en en en
D’accès D’accès D’accès
lecture écriture lecture écriture lecture écriture

Commande1 Oui Oui Oui Oui Non Oui Non Non oui

Commande 2 Oui Non Oui Oui Non Non Non Non oui

Commande 3 Non Oui Non Non Non Oui Oui Non

Exercice 2 :
Tapez la commande umask, de manière à ce que les fichiers lors de leur création aient par
défaut les droits 640 (rw-r-----),
Faites la même manipulation avec umask pour que les répertoires aient 750 (rwxr-x---).

Abderrazak GHANMI

Vous aimerez peut-être aussi