Vous êtes sur la page 1sur 25

Systèmes de gestion de fichiers

Ziadi Imen
Définition

• Le Système de Gestion de Fichiers (SGF) joue un rôle central dans un SE


car il doit gérer la plupart des informations des utilisateurs et du système lui-
même.

• Le fichier étant l’unité logique de base d’un SGF.

• La conservation des fichiers et la réalisation des fonctions d’accès


impliquent la prise en charge par le SGF de :

- la gestion du support physique : masquer à l’utilisateur les détails de


l’organisation physique de ses fichiers
- la sécurité des fichiers: la garantie de leur intégrité en cas d’incident ou
de malveillance.
- la protection des fichiers: droits d’accès …
• Un système de fichiers (File System ou FS) définit aussi l’organisation des
données sur un support de stockage.
• /bin :contient les commandes de base (sous Unix, presque toutes les
commandes sont "externes", et non intégrées au shell comme sous DOS).
• /boot :contient les informations nécessaires au démarrage de la machine.
• /dev :contient les fichiers spéciaux correspondant aux périphériques.
• /etc :la plupart des fichiers de configuration.
• /home :contient les répertoires personnels des utilisateurs.
• /lib :contient les principales bibliothèques partagées (équivalent des DLL de
Windows).
• /mnt :les répertoires utilisés pour monter temporairement un système de
fichiers (disquette, CD-ROM...).
• /opt :c'est la qu'on installe les logiciels commerciaux.
• /proc :un répertoire dont les fichiers contiennent des infos sur l'état du
système et des processus en cours d'exécution.
• /root :le répertoire de l'administrateur système.
• /sbin :les commandes de base nécessaires à l'administration système
(vérification et réparation des disques, mise en place du réseau...).
• /tmp :les fichiers temporaires.
• /usr :les logiciels installés avec le système.
• /var :des données fréquemment réécrites.
• /sys: permet à l’administrateur de l’ordinateur d’activer et de désactiver des
fonctions du noyau. Ce répertoire fournit également des informations sur le
système.
• Sous linux, un fichier Unix est une suite finie d’octets

• Un fichier est matérialisé par une inode et des blocs du disque.

• C’est l’inode qui définit les fichiers avec un ensemble d’informations (taille,
dates, localisation…).
Types de fichiers

• Les fichiers ordinaires: fichiers de données, exécutables, ..


• Les répertoires: conteneurs de fichiers
• Les liens: pointeurs vers des fichiers
• Les fichiers spéciaux: périphériques, mémoire, manipulés que par
l’intermédiaire du système.
Les chemins

Les chemins permettent de définir un emplacement au sein du système de


fichiers.

Un chemin absolu ou complet :

- démarre de la racine, donc commence par un /


- décrit tous les répertoires à traverser pour accéder à l’endroit voulu
- ne contient pas de . ni de ..
Exp: /usr/local/bin

Chemin relatif

- décrit un chemin relatif à une position donnée dans l’arborescence


Exp: /usr/local/../bin
Quelques commandes

pwd: (print working directory) permet d'afficher le nom du répertoire courant


sur la sortie standard.
• LS: permet de lister le contenu d’un répertoire
• ls [OPTION][repertoire1, repertoire2, …]
1- Le premier caractère représente le type de fichier (- : ordinaire, d : répertoire, l : lien
symbolique...) les autres, par blocs de trois, les droits pour l’utilisateur (rw-), le groupe (r--)
et tous (r--)
2- Un compteur de liens
3- Le propriétaire du fichier
4- Le groupe auquel appartient le fichier
5- La taille du fichier en octets
6- La date de dernière modification
7- Le nom du fichier

ls -l -r -t /home est identique à ls -lrt /home


Caractères de substitutions
$ ls
afic afic2 bfic bfic2 cfic cfic2 dfic dfic2 afic1 afic3 bfic1 bfic3
cfic1 cfic3 dfic1 dfic3

Donner les résultats des commandes suivantes:


ls a*
ls a???
ls b??*
ls *b[12]
ls [a-c]?*[12]
ls *[!3]
• CD: (change directory) permet de se déplacer dans les répertoires.
• cd [repertoire]
Exp:

cd /home/utilisateur/dossier (chemin absolu)

cd Desktop (chemin relatif)

cd ~/tmp (permet de se déplacer dans le répertoire tmp du dossier personnel)

cd
la commande cd utilisée seule ramène au répertoire par défaut de l'utilisateur (ou du root).

cd .. (permet de remonter d’un niveau dans l’arborescence)

cd ./mondossier (permet d’accéder au dossier mondossier du répertoire courant)

cd ../mondossier (permet d’accéder au répertoire mondossier du répertoire parent)

cd ~user1 (permet d’accéder au répertoire par défaut de l’utilisateur user1)


• mkdir : (make directory) permet de créer un ou plusieurs répertoires, ou une
arborescence complète.
mkdir repertoire1 [repertoire2 …]

Exp

mkdir rep1 rep2 rep3


Création des 3 répertoires dans le dossier courant

• Par défaut la commande ne crée pas d’arborescence. Si on passe comme arguments


rep1/rep2 et que rep1 n’existe pas, la commande retourne une erreur. Dans ce cas, utilisez le
paramètre -p.

mkdir -p chemin/repertoire

mkdir –p documents/photos/photo1
Création des dossiers documents et photos s’ils n’existent pas

mkdir –p rep/{rep1,rep2}
Création du répertoire rep et des sous répertoires rep1 et rep2
• rmdir : (remove directory)
supprime un ou plusieurs répertoires. Elle ne peut pas supprimer une arborescence. Si
des fichiers sont encore présents dans le répertoire, la commande retourne une
erreur. Le répertoire ne doit donc contenir ni fichiers ni répertoires et ceci même si les
sous-répertoires sont eux-mêmes vides.

rmdir repertoire ou bien rmdir chemin/repertoire

Exp

$rmdir documents/photos
Rm: (remove) supprime un ou plusieurs fichiers ou répertoires, et éventuellement une arborescence
complète
rm [parametre] rep/fich [rep2/fich2 …]

Exp

$rm f1 f2
Supprime deux fichiers f1 et f2

$ rm -rf /home/public/depots
Supprimer une arborescence de manière forcée
• Touch
Crée un fichier avec une taille nulle

La création de fichiers vides n’est pas le principal usage de touch. Si on relance la


même commande sur le fichier, la date de modification change.

touch fichier [fichier2 fichier3 …]

Exp

$touch /home/dossier/fich1 /home/dossier/fich2 (/home/dossier doit exister)


• Cat (cooncatenate): permet de concaténer des fichiers ainsi que d'afficher leur
contenu sur la sortie standard
• cat fichier [fichier2 …]
Exp

cat fichier.txt
Visualiser un fichier

cat fichier1.txt fichier2.txt


Visualiser deux fichiers concaténés

cat f1.txt f2.txt > f3.txt


Créer le fichier f3.txt contenant la concaténation des deux autres fichiers

cat > f.txt


Créer le fichier f.txt contenant le texte saisi au clavier (ctrl+d : fin saisie)
• More: permet d’afficher le contenu d’un fichier page par page
• more fichier [fichier2 …]

Exp
more f1.txt f2.txt
Cp: (copy) copie un ou plusieurs fichiers vers un autre fichier ou vers un répertoire.
Cp fichier-source fichier destination

Exp
cp fic1 fic2 ... ficn Destination

Attention: la copie d’un fichier dans un autre fichier, qui existe déjà, écrase ce dernier.
Il est possible de donner des chemins absolus ou relatifs (dossiers existant)
• Mv: (move) permet de déplacer et/ou renommer un fichier
Exp

$mv /homef1 /home/f2


Renommer f1 du dossier home en f2

mv dossier /home/util/Bureau
Déplacer dossier du répertoire courant vers le répertoire /home/utilBureau

mv f1.txt f2.txt f3.txt /home/util/Bureau/


Déplacer les 3 fichiers vers le répertoire bureau
• Droits d’accès

Utilisateur u(user)
Groupe g(group)
Autres o(others)
Tous a(all)
Modification des droits
• Lors de sa création, un fichier ou un répertoire dispose de droits par défaut. La commande
chmod (change mode) pour modifier les droits sur un fichier ou un répertoire.

• Il existe deux méthodes pour modifier ces droits : par la forme symbolique et par la base
8.

Forme symbolique
Pour ajouter des droits, on utilise le caractère +, pour en retirer le caractère -, et pour ne pas
tenir compte des paramètres précédents le caractère =.

Exp

$ chmod u=rwx,g=x,o=rw fic1

$ chmod o-r fic2


Forme octale

Le r vaut 4. • Le w vaut 2. • Le x vaut 1.

Exp:

$ chmod 755 fic1


$ chmod 644 fic2

Vous aimerez peut-être aussi