Vous êtes sur la page 1sur 14

Linux : Gestion des fichiers

Principes de Bases
L'arborescence unique

 Sous Linux, pas d'unités logiques (C:, D:, …) comme sous Windows
 Une seule et unique arborescence
 La racine de l'arborescence est désignée par le symbole /
 Tous les volumes de données sont "montés" sur cette arborescence
Déplacement dans l'arborescence
Répertoire Courant

 Le répertoire courant désigne le dossier dans lequel l'utilisateur est positionné au moment ou il
saisit une commande.
 Comment connaître le répertoire courant ?
 En observant l'invite de commande. Exemples :

root@debian:/etc#  Utilisateur root, Machine debian, Répertoire courant /etc


Le # indique que nous sommes connectés en super-administrateur.
mmi@debian:/datas$  Utilisateur mmi, Machine debian, Répertoire courant /data
Le $ indique que nous sommes connectés en simple utilisateur.
mmi@debian:~$  Utilisateur mmi, Machine debian, Répertoire courant /home/mmi
Le symbole ~ désigne le répertoire personnel de l'utilisateur connecté (ici mmi)
root@debian:~#  Utilisateur root, Machine debian, Répertoire courant /root
Le symbole ~ désigne le répertoire personnel de l'utilisateur connecté (ici root).
REMARQUE : /root ne désigne pas la racine, mais bien le répertoire personnel de l'utilisateur root
 En utilisant la commande pwd
Cette commande (sans aucun argument) renvoi le chemin du répertoire courant en absolu
Déplacement dans l'arborescence
Relatif ou Absolu

 Le déplacement dans l'arborescence (ou changement de répertoire) se fait à l'aide de la commande cd .


 Deux modes de déplacements :

 En absolu (Par rapport à la racine) . Exemples :


 cd /etc positionnera l'utilisateur dans le dossier etc de la racine /

 cd /var/log positionnera l'utilisateur dans le sous-dossier log du répertoire var de la racine /

 cd / positionnera l'utilisateur à la racine de l'arborescence

 En Relatif (Par rapport au répertoire courant) . Exemples :


 cd .. Se déplace dans le répertoire directement supérieur au répertoire courant

 cd ../.. Se déplace de deux niveaux supérieurs au répertoire courant

 cd test Se déplacerait dans le sous-dossier test du répertoire courant

 cd ../test Se déplacerait dans un dossier test situé au même niveau que le répertoire courant

 Astuce : cd (sans argument) positionne l'utilisateur dans son dossier personnel.


/root si l'utilisateur est root, /home/mmi si l'utilisateur est mmi
Manipulations des Dossiers
Commandes

Commande Fonction Syntaxe Exemple

cd Changer de répertoire courant cd [CHEMIN/]DOSSIER cd /etc


Se déplace dans le dossier /etc
mkdir Créer un répertoire mkdir [CHEMIN/]DOSSIER mkdir /mmi
Créer un dossier mmi dans la racine
rmdir Supprime un répertoire vide rmdir [CHEMIN/]DOSSIER rmdir /mmi
Supprime lr dossier /mmi si celui-ci est vide
rm –Rf Supprime un répertoire et tout son rm –Rf [CHEMIN/]DOSSIER rm –Rf /mmi
contenu Supprime le dossier /mmi et tout son contenu
mv Déplace ou renomme un répertoire mv SOURCE DESTINATION mv /mmi /mmi2
si le chemin de la source est le renomme le dossier /mmi en /mmi2
même que celui de destination, le
dossier sera simplement renommé mv /mmi /data
déplace le dossier /mmi dans le dossier /data.
Si le dossier /data n'existe pas, renomme le
dossier /mmi en /data.
cp -R Copier un répertoire et son contenu cp –R SOURCE DESTINATION cp /mmi /mmi2
Fait une copie de /mmi en /mmi2 avec tout son
contenu (fichiers et sous-dossiers)
ATTENTION si le dossier /mmi2 existe déjà, le
répertoire mmi sera créé DANS /mmi2
ls Liste le contenu d'un répertoire ls [CHEMIN/]DOSSIER ls /mmi
Liste le contenu du dossier /mmi
Manipulations des fichiers
Commandes
Commande Fonction Syntaxe Exemple
touch Créer un fichier vide touch [CHEMIN/]FICHIER touch /mmi/test
Créer un fichier nommé test dans le dossier /mmi

nano Editer un fichier texte nano [CHEMIN/]FICHIER nano /mmi/test


Edite le fichier test du dossier /mmi
Si le fichier n'existe pas il sera créé.
less Visualise le contenu d'un fichier texte Less [CHEMIN/]FICHIER less /mmi/test
Affiche le contenu du fichier test
(Q pour sortir)
rm Supprime un fichier rm [CHEMIN/]FICHIER rm /mmi/test
Supprime le fichier test du dossier /mmi

rm /mmi/*
Supprime TOUS les fichiers du dossier /mmi
mv Déplace ou renomme un fichier mv SOURCE DESTINATION mv test test2
si le chemin de la source est le même renomme le fichier test en test2
que celui de destination, le fichier sera
simplement renommé mv test /root
déplace le fichier test du répertoire courant dans le
dossier /root

mv test /root/test2
déplace le fichier test du répertoire courant dans le
dossier /root et le renomme test2

cp Copier un fichier cp SOURCE DESTINATION cp test test2


Fait une copie de test en test2
Les Droits d'accès

 Permettent de répondre aux questions :

 Qui peut accéder à un répertoire ?


 Qui peut lire (lister) le contenu d'un dossier ?
 Qui peut lire les fichiers ?
 Qui peut Créer, Modifier ou Supprimer les fichiers , les dossiers ?
 Qui peut exécuter un programme (un script) ?
Les Droits d'accès
Principes de base

 3 types d'accès :
 R : Droit en Lecture – Permet de lire le contenu d'un fichier
 W : Droit en Ecriture – Permet de Modifier (ou supprimer) un fichier
 X : Droit en eXécution – Permet d'exécuter un programme (ou un script)

 Codage en Numérique :
 R (Read) = 4
 W (Write) = 2
 X (Execute) = 1
Les Droits d'accès
Principes de base

 3 types de personnes (ou population) :

 Le propriétaire (owner ou UID) – Par défaut, l'utilisateur qui a créé le fichier


 Un groupe (group ou GID) – Par défaut, le groupe du propriétaire
 Le reste du monde (other) – Tous les autres utilisateurs du système.
Les Droits d'accès
Principes de base

 Comment voir les droits d'accès :


 La commande ls avec l'option –l : ls -l

 Exemple : ls –l /mmi ,
liste le contenu du dossier /mmi avec les droits d'accès :

-rwxr-x--- mmi users … test


Le – indique qu'il s'agit d'un fichier (d indiquerait un dossier)
rwx indique que le propriétaire du fichier (mmi) à tous les droits
r-x indique que le groupe users ne peut que lire le fichier
(il peut aussi l'exécuter s'il s'agit d'un script ou d'un binaire)
--- indique que les autres utilisateurs (autre que mmi et les
membres du groupe users) n'ont aucun droits d'accès au fichier.
Les Droits d'accès
Principes de base

Droit Fichiers Dossiers


R Le fichier peut être lu Le contenu du dossier
peut être listé (ls)
W Le contenu du fichier Dans le dossier, on
peut être modifié. peut Supprimer, créer
ou modifier un fichier
X Le fichier peut-être On peut rentrer dans
exécuté si c'est un ce dossier.
script (ou un binaire)
Les Droits d'accès
Les commandes

 Comment changer les droits d'accès :


 2 actions à réaliser = 2 commandes à connaître

 Changer les noms du propriétaire, du groupe : chown


 Changer les valeurs des permissions : chmod
Les Droits d'accès
chmod

 Changer la valeur des permissions .


 Utiliser les valeurs numériques en fonction du besoin :
 R=4, W=2,X=1 ce qui permet de réaliser les combinaisons suivantes :
RWX (Tous les droits) = 4+2+1 = 7
R-X (Lecture, Exécution) = 4+0+1 = 5
R– (Lecture Seule) = 4+0+0 = 4
--- (Aucun Droit) = 0+0+0 = 0
 Les permissions sont à attribuer à 3 types de population ,
donc 3 valeurs à donner .

 Syntaxe : chmod ABC FICHIER , ou A indique les permissions du propriétaire


B indique les permissions du groupe
C indique les permissions des autres
 Exemple : chmod 754 test

Donne tous les droits (7) au propriétaire du fichier;


Donne Lecture et Exécution (5) au Groupe
Donne Lecture Seule aux autres utilisateurs
 Option –R , l'option R (Récursive) permet de donner les droits à un dossier et à l'ensemble de son contenu
Exemple : chmod –R 750 /mmi donne les permissions indiquées au dossier mmi, mais aussi à tout son contenu.
Les Droits d'accès
chown

 Changer de propriétaire et/ou de groupe


 Syntaxe : chown user.group FICHIER ou user est le nom du propriétaire
group est le nom du groupe.
 Exemples :
 chown mmi.users test
désigne l'utilisateur mmi comme propriétaire du fichier test
désigne comme groupe, le groupe users
Les permissions attribuées à chacun seront celles données avec chmod.
 chown mmi test , ne change que le nom du propriétaire
 chown .users test , ne change que le nom du groupe
 chown –R mmi.users demo
change les valeurs pour le demo et tout son contenu.