Vous êtes sur la page 1sur 151

Résolution Numérique en électromagnétisme

Faire l'étude des concepts et programmes de bases (commandes) permettant


d'utiliser le système d'exploitation Linux
Objectif pédagogique 1 : l’étudiant doit connaitre après ce cours les concepts
fondamentaux de Linux et UNIX.
Compétences ciblées 2 : L’étudiant doit acquérir les compétences pour réaliser
les tâches de base sur la ligne de commande :
Manipulation des fichiers
Redirection et tubes (pipes) ;
Manipulation des données textuelles
Manipulation des processus et les droits des utilisateurs
...

Dr K. GUEYE
Introduction aux systèmes d’exploitation
Pourquoi un cours sur le système d'exploitation Linux ?

Le système d'exploitation est le premier programme chargé dans un système


Informatique

La connaissance Linux est essentielle dans certaines carrières en Informatique

Linux porte l'empreinte génétique des premiers systèmes d'exploitations


Ce cours ouvre une porte vers les logiciels libres.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Qu'est-ce qu'un système d'exploitation?

Répondre complètement à cette question n'est pas simple. De manière pratique, le système
d'exploitation est le logiciel le plus important de la machine, puisqu'il fournit :

une gestion des ressources de celle-ci : processeurs, mémoires, disques, horloges,


périphériques, communication inter-processus et inter-machines ;
une base pour le développement et l'exécution de programmes d'application.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Qu'est-ce qu'un système d'exploitation?
Pourquoi étudier les systèmes d'exploitation?

Tout programme est concerné : il est important d'appréhender la façon dont fonctionne
un système d'exploitation pour améliorer l'efficacité de ses propres programmes ;

Tout programmeur est susceptible de rencontrer les mêmes problèmes de mise en œuvre
dans son propre domaine : pas la peine de réinventer la roue.

C'est un sujet intéressant en soi, dont l'objectif est la recherche de l'efficacité, nécessitant
une étude théorique approfondie mais dont l'objectif est la fourniture de solutions
réalisables en pratique : c'est une excellente approche du métier d'ingénieur !
Dr. Kéba GUEYE
Introduction aux systèmes d’exploitation
Qu'est-ce qu'un système d'exploitation?
Problématique
Pour que les programmes puissent s'exécuter de façon portable et efficace, il faut
pouvoir gérer simultanément :
 la multiplicité des différentes ressources ;
 la complexité des composants de chacune d'elles, qui requiert la prise en compte de nombreux détails
embêtants, sources de bogues.
Ne sont pas des systèmes d'exploitation :
 l'interprète de commandes ;
 le système de fenêtrage ;
 les utilitaires (cp, chmod, uptime, . . . ) ;
 le compilateur (ni sa bibliothèque) ;
 l'éditeur. . .
Dr. Kéba GUEYE
Introduction aux systèmes d’exploitation
Qu'est-ce qu'un système d'exploitation?
Problématique

En fait, tous ces programmes s'exécutent dans un mode non privilégié, car ils n'ont pas
besoin d'un accès privilégié au matériel. En revanche, le système d'exploitation
fonctionne typiquement en mode privilégié, pour pouvoir accéder a toutes les
fonctionnalités du processeur. Ainsi, le système d'exploitation est protégé par le matériel
contre les erreurs de manipulation (mais il existe des systèmes d'exploitation s'exécutant
sur du matériel non protégé, comme par exemple le DOS sur les anciens IBM PC).

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Qu'est-ce qu'un système d'exploitation?
Fonctionnalités d'un système d'exploitation

Un système d'exploitation a pour but :


 de décharger le programmeur d'une tâche de programmation énorme et fastidieuse, et de
lui permettre de se concentrer sur l'écriture de son application ;
 de protéger le système et ses usagers de fausses manipulations;
 d'offrir une vue simple, uniforme, et cohérente de la machine et de ses ressources.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Qu'est-ce qu'un système d'exploitation?
Fonctionnalités d'un système d'exploitation

Un système d'exploitation a pour but :


 de décharger le programmeur d'une tâche de programmation énorme et fastidieuse, et de
lui permettre de se concentrer sur l'écriture de son application ;
 de protéger le système et ses usagers de fausses manipulations;
 d'offrir une vue simple, uniforme, et cohérente de la machine et de ses ressources.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Structure d'un système informatique moderne

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Structure d'un système informatique moderne

Le matériel : fournit les ressources de calcul


 CPU, Mémoire, Périphériques d'entrées sorties (souris, claviers, écran,disques)
Le système d'exploitation: contrôle et coordonne l'utilisation des ressoureces par les
applications et les utilisateurs
Les applications: offre des solutions pour résoudre les besoins de calcul des utilisateurs
 Bureautique, compilateurs, Navigateurs Web, base de données, jeux vidéos, . . .
Les utilisateurs ! Personnes, d'autres ordinateurs, . . .

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Système d'exploitation (Operating System)
Définition
Un système d'exploitation est un logiciel qui permet aux utilisateurs :
d'utiliser les logiciels installés sur l'ordinateur
d'acceder aux périphériques de manière simple (imprimante, clavier, souris, . . . )
de stocker et traiter les données et les informations brutes.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Système d'exploitation (Operating System)
Les systèmes d'exploitations les plus connus du grand public sont :
Microsoft Windows
Mac OS X
Linux qui fait partie de la famille des OS Unix
Android

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Services d'un système d'exloitation
Les systèmes d'exploitations fournissent un environnement pour l’éxecution des
programmes des utilisateurs
Interface utilisateurs
Environnement d'execution des programmes
Opérations d'entrée-sortie
Manipulation du système de fichier
Support de communication à travers le réseau
Mecanisme de detection d'erreurs.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Découverte du système GNU/Linux
Présentation d’UNIX
UNIX est un système d’exploitation moderne, complet et efficace, disponible sur la
plupart des ordinateurs vendus, du PC au super calculateur Cray. C’est pourtant un
système ancien, puisque son histoire remonte à la fin des années 60. Son architecture
ouverte et sa grande diffusion dans les centres de recherches et les universités lui ont
permis d’évoluer en intégrant de nombreuses améliorations.
Aujourd’hui, UNIX est très utilisé en informatique scientifique, et pour les serveurs
réseaux : la grande majorité des serveurs sur Internet fonctionnent sous UNIX. Par
contre, sa relative complexité d’utilisation l’écarte des applications grand public.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Découverte du système GNU/Linux
Architecture générale du système
UNIX est un système d’exploitation multi-tâche multi-utilisateurs. Le fonctionnement
multi-tâche est assuré par un mécanisme préemptif : le système interrompt
autoritairement la tâche en cours d’exécution pour passer la main à la suivante ; ceci
évite tout risque de bloquage du système à la suite d’une erreur survenant dans un
programme utilisateur.
La cohabitation simultanée de plusieurs utilisateurs est rendue possible par un
mécanisme de droits d’accès s’appliquant à toutes les ressources gérées par le système
(processus, fichiers, périphériques, etc.).

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Découverte du système GNU/Linux
Présentation d’UNIX
Un système d'exploitation Unix est composé de 4 couches :
 Le kernel(noyau) : cœur du système qui gère l'accès au matériel, l'execution des applications sur le processeur
et fournit l'environnement un environnement d'execution des processus à l'utilisateur
 les API : fournissent une interface aux programmeurs pour avoir accès aux fonctionnalités du système
d'exploitation
 Les outils et utilitaires : un ensemble de logiciels spécialisés avec des noms standards permettant de faire les
tâches au quotidien (les commandes)
 Le Shell : permet aux utilisateurs de lancer les utilitaires

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Découverte du système GNU/Linux
Présentation d’UNIX
Un système d'exploitation Unix est composé de 4 couches :

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Découverte du système GNU/Linux
Présentation d’UNIX
Versions du Kernel Linux
La numérotation des versions de Linux suit une logique bien précise : Versions antérieures
à la 2.6

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Découverte du système GNU/Linux
Présentation d’UNIX
Versions du Kernel Linux
La numérotation des versions de Linux suit une logique bien précise : Versions à partir la
version 2.6, jusqu'à la version 3.0.0 ?

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Distributions Linux
Définition
Les distributions rassemblent les composants d'un système dans un ensemble cohérent et
stable dont l'installation, l'utilisation et la maintenance sont facilitées.
Une distribution (GNU/)Linux est un package offrant :
 Le Kernel Linux généralement avec des personnalisations (mineures)
 Un dépot de logiciels (libre ou non) avec un système de gestion de logiciels
 (Package Manager)
 (Eventuellement) Des logiciels spéciques à la distribution (Conguration, . . . )
 ...

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Distributions Linux
Définition
Une distribution (GNU/)Linux est un package offrant :
Plus de 200 distributions classables en trois catégories :
 Distributions généralistes complètes (Fedora, Debian, . . . )
 Distributions spécialisées (E.g Ipcof pour le firewalling)
 Distributions de test ou LiveCD (E.g Knoppix)

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Utilisations communes de Linux
 Linux est utilisé par ses 40 millions d'adeptes pour mettre en place :
 Les serveurs d'Internet (WEB, Routage, FTP, Firewall, DNS, . . . )
 Les serveurs d'impressions et de chiers
 Les serveurs d'applications
 Les supercalculateurs (Clustering)
 Les stations de travail pour calcul scientique (Physique, Astronimie
 Mathématiques,. . . )
 Les stations de travail bureautiques
. . .

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Shell Unix
Un Shell est :
Un programme qui permet aux utilisateurs de lancer d'autres programmes
Une couche logicielle servant d'interface entre les utilisateurs et le système
d'exploitation Unix
Une des innovations majeures d'Unix a été la séparation du système
d'exploitation et du Shell

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Shell Unix
Il existent deux types de Shells :
 Shells en mode texte :
 Entrées sous forme de textes (les commandes)
 Sorties textuelles formatées ou non
 Utilisation orientée administration
 Autres appelations : Terminal, Console, . . .

 Shells graphiques :
 Entrées sous plusieurs formes : texte, souris, touch, . . .
 Sorties aux formats quelconque : fenêtres, . . .
 Utilisations comme ordinateur personnel (bureautique, . . . )
 Autres appelations : GUI, Gestionnaire de Bureau
L'emploi du mot Shell sous Unix, sans autre précision, fait généralement référence aux Shells orientés texte (pour des raisons
historiques. . . )

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Les Shells Linux
 Bourne Shell ou sh
Porte le nom de son créateur Steven Bourne
correspond au programme sh
 C shell ou csh
Shell dont la syntaxe du langage de script est proche du langage C
 GNU Bourne-Again SHell ou bash
Une version GNU du Bourne Shell
Le Shell le plus répendu dans les distributions Linux
. . .
la liste des Shells installés sur station Unix est disponible avec la commande :
> cat /etc/shells
Dr. Kéba GUEYE
Introduction aux systèmes d’exploitation
Emulateurs de Shell ou terminal
Les environnements graphiques de Linux proposent des émulateurs de Shell : Xterm, Konsole,
Gnome-terminal, . . .

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Qu'est ce qu'une commande Unix ?
une commande est un programme réalisant une tâche spécique et pouvant être
exécutée par un utilisateur (au sens large).

Exemple : ls -l /home/sra/
ls est la commande (que faire ?)
-l est une option (comment faire ?)
/home/sra/ est le paramètre transmis à la commande (sur quoi faire ?)

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Qu'est ce qu'une commande Unix ?
Le résultat de l'exécution d'une commande est :
 soit un affichage de texte
 soit une modifiation du système
 soit les deux

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Types de commandes et la commande <type>
Il existe trois types de commandes
 Les commandes internes au Shell (elles sont installées en même temps que le Shell)
 Les commandes externes au Shell : installées par l'utilisateur ou faisant partie de la distribution
 Les alias qui sont des speudos commandes basées sur les autres commandes existantes
La commande type permet de connaitre le type d'une commande

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Commandes de manipulation de fichiers
ls - Lister les noms des fichiers
La commande ls (abréviation de list), lorsqu'on la tape au clavier, demande au
système d'afficher la liste des noms des fichiers que l'on possède (équivalent de dir
sous DOS).

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Commandes de manipulation de fichiers
more - Afficher le contenu d'un fichier
Pour voir le contenu d'un fichier, le plus efficace est d'utiliser la commande more
qui admet en paramètre le nom du fichier concerné - on peut aussi utiliser la
commande cat que nous verrons plus loin.
more /home/sra/nom_du_fichier
cat - Concaténer des fichiers
Théoriquement destinée à concaténer des fichiers, elle est aussi utilisée pour
afficher tout le contenu d'un fichier en une fois - on l'utilise aussi pour créer de
nouveaux fichiers ou des fichiers vides. Commande pouvant être comparée à la
commande type sous DOS. cat /home/sra/nom_du_fichier
Dr. Kéba GUEYE
Introduction aux systèmes d’exploitation
Commandes de manipulation de fichiers
cp - Copier un fichier
La duplication de fichier n'est pas chose anodine pour tout un chacun, cela permet
d'avoir une sauvegarde.
mv - Déplacer et renommer un fichier
Cette commande est similaire au Ren du DOS, permettant de renommer un nom de
fichier ou de le déplacer, Move sous DOS.
rm - Détruire un fichier
ATTENTION - avec les systèmes Linux il n'y a aucun moyen de récupérer un
fichier supprimé. rm nom_du_fichier

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Commandes de manipulation de fichiers
grep - Recherche dans un fichier
Cette commande permet de rechercher toutes les lignes du fichier contenant
l'expression recherchée
Grep mot_recherché chemin où se trouve le fichier
cd - Changement de répertoire
Pour changer de répertoire on disposes de la commande cd.
cd /home/sra

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Commandes de manipulation de fichiers
mkdir - Création de répertoire
Les répertoire sont un moyen très utiles pour classer vos fichiers, pour en créer on
utilise la commande mkdir.
mkdir TP
rmdir - Destruction de répertoire
On peut détruire un répertoire depuis le répertoire père à l'aide la commande
rmdir. Un répertoire non vide ne peut être vidé avec cette commande sans
options, pour cela on utilise les options -r (récurssif) et -f (force).
rmdir TP rmdir /home/sra/TP rm -rf /home/sra/tmp

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Commandes de manipulation de fichiers
pwd - Comment connaître le répertoire courrant
A force de se déplacer dans l'arborescence on fini par ne plus savoir où l'on est, ce
n'est pas que valable pour les débutants. Pour cela on utilise la commande pwd.
pwd

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Autres commandes de base
clear - Efface l'écran
Clear
df -Espace disque df [Entrée]
Sans paramètre optionnel, df affiche l'espace disque disponible sur tous les
systèmes de fichiers montés. Pour avoir l'aide, tapez ceci :
df –help et/ou man df

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Autres commandes de base
gzip - Compression et décompression de fichiers
Différentes distributions incluent des packages portant l'extention : .tar.gz .tgz ou
.gz. Ce sont des fichiers compressés à l'aide l'utilitaire gzip. Pour les décompresser
on doit utiliser l'option -d :
gzip -d fichier.tgz
Pour compresser un fichier on tape la commande gzip suivit du nom du fichier à
compresser :
gzip fichier
On obtient l'aide de gzip comme ceci :
gzip -help
Dr. Kéba GUEYE
Introduction aux systèmes d’exploitation
Autres commandes de base
kill - Tuer un processus
kill pid - pid = n° du processus à tuer.
diff - Comparer deux fichiers
Cette commande compare deux fichiers et affiche les modifications à faire pour le
rendre identique à l'autre.
diff ancien nouveau
diff compta.txt compta2.txt
On obtient l'aide comme ceci : diff -help

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Autres commandes de base
/dev/lpt - Dirige un fichier vers l'imprimante
Cette commande est associée à cat et imprime le fichier vers le port parallèle
désigné.
cat compta.txt > /dev/lpt0

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Autres commandes de base
tar - Création d'archive
Les distributions Linux utilisent le plus souvent les archives tar combinées avec
gzip. On les reconnait à leurs extentions .tar (archive tar), .tar.gz ou .tgz (archive
tar compressée avec gzip. Syntaxe générale :
tar options archives
Lister le contenu de l'archive : tar tvf archives tar tvfz archives
Décompresser : tar xvf archives tar zxvf archives

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Autres commandes de base
tar - Création d'archive
Création d'archive :
tar zcvf archives.tgz fichiers_à_archiver
tar cvf archives
Obtenir l'aide de tar : tar -help
man tar

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Notion d’utilisateurs et de groupes sous GNU/Linux
Qui est utilisateur ?
Le système, dès son installation, avant même la première connexion au système a créé
des users système.
Un utilisateur n'est donc pas uniquement une personne physique, le système a besoin
d'utilisateurs pour sa gestion interne, notamment comme propriétaire des divers
processus.
La commande ps aux | less montre qu'avant toute connexion d'utilisateur humain
(repérée par les lignes login --user), root a lancé init, et la plupart des services, crond,
xinetd, lpd, smbd, ... , avant de lancer les connexions utilisateurs dans les consoles, y
compris éventuellement la sienne !
Dr. Kéba GUEYE
Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Notion d’utilisateurs et de groupes sous GNU/Linux
Les principales commandes

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Cela signifie lui permettre d'être connu du poste local, s'y loguer, avoir un
accès complet sur son rép. personnel.

Mais aussi dans une configuration réseau, de pouvoir se connecter à son


compte par telnet et ftp, et de pouvoir bénéficier de services réseau de partage
distant (sous Linux par NFS et sous Windows 9x par SMB).

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Pour créer l'utilisateur stagex, root passe la commande :
useradd stagex
Ceci crée :
 le répertoire personnel /home/stagex, portant par défaut le nom du compte
 une nouvelle entrée dans les 2 fichiers fondamentaux /etc/passwd et
/etc/group.
 Pour connaître les options de useradd : man useradd
Dr. Kéba GUEYE
Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
 Pour lui attribuer le mot de passe :
passwd stagex
saisir 2 fois stgx
Supprimer le compte d'un utilisateur (non connecté), au hasard .. totox.
userdel [-r] totox
L'option -r supprime aussi le rép. personnel et les fichiers de l'utilisateur
La commande supprime toute trace de l'utilisateur dans le fichier de configuration :
/etc/passwd y compris dans les groupes d'utilisateurs.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Modifier le compte de l'utilisateur toto
usermod [options] totox
Les options sont les mêmes que useradd
usermod -G stagiaire,prof stagex ajoute stagex dans les 2 groupes stagiaire et profs
(qui doivent exister)

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Remarques
 Attention : si root passe la commande passwd il s'apprête à redéfinir son
propre mot de passe !
 Un utilisateur quelconque ne peut pas créer de compte, même s'il a le privilège
de faire partie du groupe root.
 Par contre, il peut modifier lui-même son mot de passe.
 Voir les diverses options avec useradd -h
 Pour une gestion sous interface graphique, utilisez l’outil linuxconf
Dr. Kéba GUEYE
Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Remarques
 Attention ! Le compte créé permet à l'utilisateur d'accéder au système de
fichier Linux (avec des droits que nous verrons). Pour pouvoir se connecter au
réseau SAMBA, à partir d'une station distante Windows9x, il faut créer un
compte Samba avec l'utilitaire smbpasswd.
A noter que linuxconf semble créer automatiquement les comptes Linux et Samba
conjointement.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Les groupes
 Un groupe est, aussi pour Linux, un ensemble d'utilisateurs qui partagent les mêmes
fichiers et répertoires. Nous verrons que les fichiers accordent des droits d'accès
réglables à ces groupes.
 Chaque utilisateur doit faire partie au moins d'un groupe, son groupe primaire. Celui-ci
est défini au moment de la création du compte, et par défaut, l'utilisateur appartient à un
nouveau groupe créé, portant son nom.
 Ainsi, dans /etc/passwd chaque utilisateur possède un groupe par défaut, précisé par
son identifiant gid dans ce fichier.
Dr. Kéba GUEYE
Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Les groupes
 L'appartenance au groupe primaire n'étant pas exclusive, tout utilisateur peut faire partie
de plusieurs autres groupes, appelés ses groupes secondaires. Mais le rôle joué par le
groupe primaire demeure prépondérant, comme nous le verrons dans le système des
permissions des fichiers.
 Pour lister tous les groupes (primaire et secondaires) d'un utilisateur :
groups stagex
 Pour créer un nouveau groupe groupadd stagiaire

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Les groupes
 Supprimer un groupe, au hasard .. encore totox.
groupdel totox
Le groupe est supprimé du fichier /etc/group.
 Pour ajouter un utilisateur à un groupe
Le plus simple est d'éditer le fichier /etc/group et d'ajouter une liste d'utilisateurs (séparés
par des virgules) sur la ligne du groupe (ou utiliser Linuxconf).

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Visite des coulisses
 Tout ce qui concerne la gestion et l'authentification des utilisateurs est inscrit
dans un seul fichier /etc/passwd
 La gestion des groupes est assurée par /etc/group
 Les mots de passe cryptés sont maintenant placés dans /etc/shadow, par
sécurité lisible seulement par root.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Structure de /etc/passwd
Ce fichier comprend 7 champs, séparés par le symbole :
1. nom de connexion
2. ancienne place du mot de passe crypté
3. numéro d'utilisateur uid, sa valeur est le véritable identifiant pour le système
Linux; l'uid de root est 0, le système attribut conventionnellement un uid à partir
de 500 aux comptes créés.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Structure de /etc/passwd
Ce fichier comprend 7 champs, séparés par le symbole :
4. numéro de groupe gid, dans lequel se trouve l'utilisateur par défaut; le gid de
root est 0, des groupes d'utilisateurs au delà de 500
5.nom complet, il peut être suivi d'une liste de renseignements personnels
6. rép. personnel (c'est également le rép. de connexion)
7. shell, interprétateur de commandes (par défaut /bin/bash)

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Structure de /etc/group
Ce fichier comprend 4 champs, séparés par le symbole :
1. nom du groupe
2. x pour remplacer un mot de passe non attribué maintenant
3. numéro de groupe, c-à-d l'identifiant gid
4. la liste des membres du groupe

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Outils de gestion des comptes
Linuxconf
Se connecter comme root et lancer linuxconf en ligne de commande (on pourrait
utiliser linuxconf sous X-KDE)
Section Comptes utilisateurs

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Outils de gestion des comptes
Linuxconf
Section Comptes utilisateurs
Sélectionner un compte et examiner sa définition actuelle sous l'interface de Linuxconf
Comparer avec son entrée dans /etc/passwd

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Outils de gestion des comptes
Linuxconf
 Ajouter un nouveau compte (stagey/stgy) en donnant seulement les nom de
login et nom complet
A la validation, on observe que Linuxconf exécute 2 commandes useradd et chage.
Puis on est averti que le mot de passe a bien été enregistré dans passwd et
smbpasswd

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Outils de gestion des comptes
Linuxconf
 Pour connaitre le rôle de chage, consulter le manuel et le fichier /etc/shadow
Créer maintenant un autre compte (toto) en précisant le groupe primaire (zig),
et des groupes secondaires (stagiaire).
Examiner la syntaxe des 2 lignes de commandes exécutées ( /usr/sbin/useradd et
/usr/bin/chage

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Outils de gestion des comptes
Linuxconf
 Si le rep. de base n'est pas spécifié, par défaut création et attribution de
/home/stagex
 On peut tout de suite placer l'utilisateur dans une liste de groupes (sans virgule)

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Outils de gestion des comptes
Compléments
 La structure d'une ligne de /etc/passwd et de /etc/group
 login:x:uid:gid:commentaires:home:shell
 groupe:x:gid:liste-groupes-secondaires
 Options de la commande useradd (pour détails cf man useradd)
Nous avons jusqu'ici utilisé cette commande avec ses options par défaut.
Dr. Kéba GUEYE
Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Outils de gestion des comptes
Compléments
 La maitrise de cette commande est indispensable pour écrire des scripts de
génération automatique de comptes.
Syntaxe : useradd [options] nom_login
Exemple : useradd toto -u 1200 -p moi -g 520 -G groupes -s /bin/bash

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Outils de gestion des comptes

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Outils de gestion des comptes
 La recopie du répertoire /etc/skel est très important pour l'administrateur, car il
lui permet de configurer de façon uniforme les sessions de travail des
utilisateurs.
C'est ainsi que tous les utilisateurs qui passe en mode graphique KDE hérite du
même bureau.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Outils de gestion des comptes
 La recopie du répertoire /etc/skel est très important pour l'administrateur, car il
lui permet de configurer de façon uniforme les sessions de travail des
utilisateurs.
C'est ainsi que tous les utilisateurs qui passe en mode graphique KDE hérite du
même bureau.
 Pour examiner les valeurs par défaut appliquées par useradd :
commande useradd -D ou éditer /etc/default/useradd
Dr. Kéba GUEYE
Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Outils de gestion des comptes
 GROUP=100 identifiant du groupe primaire
 HOME=/home racine des rép. personnels
 INACTIVE=-1 (nb de jours avant destruction du compte
 EXPIRE= nb de jours avant expiration du mot de passe
 SHELL=/bin/bash shell de connexion attribué au compte
 SKEL=/etc/skel fichiers recopiés par défaut dans chaque rép. personnel
Dr. Kéba GUEYE
Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Outils de gestion des comptes
 La commande passwd
Elle est chargée du cryptage du mot de passe dans /etc/shadow
Syntaxe : passwd [option] nom-login
Options

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Outils de gestion des comptes
 La commande passwd
Options
 --stdin, la commande abandonne son caractère interactif habituel et examine son entrée standard
pour s'en servir comme mot de passe.
Très utile dans un script : echo mot | passwd –stdin (attention tout caractère est significatif, y compris
les " ")

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Outils de gestion des comptes
 La commande passwd
Options
 -d , pour supprimer le mot de passe, l'utilisateur pourra se connecter sans !
 -l , pour verrouiller le compte et empêcher sa connexion.
 -u , pour déverrouiller.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Outils de gestion des comptes
Connaitre l'uid et le gid de l'utilisateur courant
Commande id
uid=0(root) gid=0(root) groups=0(root)

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Outils de gestion des comptes
Pour décrire un utilisateur : chfn
Cette commande permet d'indiquer dans le champ numéro 5 du fichier
/etc/passwd différentes informations sur un utilisateur, son nom complet, son
bureau, ses numeros de téléphone (séparées par des virgules).

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Outils de gestion des comptes
Cryptage des mots de passe
Pour des questions de sécurité, les mots de passe cryptés ne sont stockés dans
/etc/passwd qui doit être accessible en lecture par tous
La commande /usr/sbin/pwconv est chargée de transférer les mots de passes
cryptés, dans /etc/shadow. Pour plus de détails , consulter man pwconv

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des utilisateurs sous GNU/Linux
Gestion des utilisateurs et des groupes sous GNU/Linux
Créer un compte pour un nouvel utilisateur
Outils de gestion des comptes
Cryptage des mots de passe
Pour des questions de sécurité, les mots de passe cryptés ne sont stockés dans
/etc/passwd qui doit être accessible en lecture par tous
La commande /usr/sbin/pwconv est chargée de transférer les mots de passes
cryptés, dans /etc/shadow. Pour plus de détails , consulter man pwconv

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Présentation des principaux répertoires du système
Il n'existe pas de norme d'organisation du système de fichiers, mais un standard est
à peu près suivi par les différentes distributions de Linux.
L'organisation traditionnelle du répertoire racine est décrite dans le tableau
suivante :

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Présentation des principaux répertoires du système

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Présentation des principaux répertoires du système
Le répertoire de base / s'appelle : répertoire racine (root) par analogie avec la
racine d'un arbre représentant le système de fichiers.
Il n'est pas standard d'ajouter des répertoires au niveau de la racine.
Ce système de fichiers peut résider sur différentes partitions, différents supports
physiques ou sur d'autres machines sur le réseau. Ce découpage est complètement
transparent pour les utilisateurs du système de fichiers. Les différentes parties
peuvent être connectées au démarrage du système ou à la demande, en cours
d'utilisation.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Arborescence standard des systèmes d’exploitation UNIX
La plupart des systèmes d’exploitation Unix (GNU/Linux, BSD, MacOS…)
utilisent une arborescence de base standardisée (seul Windows utilise une
arborescence réellement différente)
Vous pouvez la consulter en faisant : man hier (pour hierarchy)

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Le répertoire /etc
Ce répertoire contient les fichiers de configuration du système. On trouve les sous-
répertoires suivants :

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Arborescence standard des systèmes d’exploitation UNIX
Chaque utilisateur possède un répertoire de connexion (home directory) Accessible via la variable
HOME

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Arborescence standard des systèmes d’exploitation UNIX
Chaque utilisateur possède un répertoire de connexion (home directory) Accessible via la variable
HOME

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Le répertoire /etc
Ce répertoire contient les fichiers de configuration du système. On trouve les sous-
répertoires suivants :

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Le répertoire /home
Le répertoire /home contient les répertoires des utilisateurs logés sur cette
machine. Chaque utilisateur possède son propre répertoire, mais il est possible de
créer des structures de groupes de travail en organisant les sous-répertoires.
Le répertoire /usr
Le répertoire /usr contient de nombreux sous-répertoires. On retrouve presque la
même organisation que sous la racine, mais le contenu est destiné aux utilisateurs
plus qu'au système lui-même.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Le répertoire /usr
La structure de /usr est la suivante :

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Le répertoire /usr
Xwindow est l'environnement graphique d'Unix. Il est très flexible et configurable
et possède des fonctionnalités rarement vues dans d'autres environnements.
On retrouve, dans ce répertoire, une hiérarchie de fichiers ressemblant à celle de la
racine, mais dédiée à l'environnement Xwindow.
/usr/local doit contenir les outils installés en dehors du contexte de la distribution.
On retrouve une hiérarchie complète semblable à /usr.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Le répertoire /var
Le répertoire /var contient les données variables du système, c'est-àdire les fichiers
propres à l'installation réalisée sur cette machine.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Le répertoire /var
Le répertoire log contient les fichiers de trace de fonctionnement du système. Une
grande partie du travail d'administration consiste à suivre les enregistrements afin
de détecter les mauvais fonctionnements. Le programme logrotate permet de
conserver un historique des fichiers. Il existe des outils de gestion des fichiers de
trace pour permettre, entre autres, la détection des intrusions sur le système.
Le répertoire spool contient des sous-répertoires de gestion des spoolers
d'impression (lpd), de courriers (mail), de forums (news), etc.
Ces sous répertoires peuvent contenir, momentanément, des fichiers de taille
importante.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Le répertoire /var
Le répertoire log contient les fichiers de trace de fonctionnement du système. Une
grande partie du travail d'administration consiste à suivre les enregistrements afin
de détecter les mauvais fonctionnements. Le programme logrotate permet de
conserver un historique des fichiers. Il existe des outils de gestion des fichiers de
trace pour permettre, entre autres, la détection des intrusions sur le système.
Le répertoire spool contient des sous-répertoires de gestion des spoolers
d'impression (lpd), de courriers (mail), de forums (news), etc.
Ces sous répertoires peuvent contenir, momentanément, des fichiers de taille
importante.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Le système de fichiers sur disque
Organisation des disques
Une machine peut posséder plusieurs disques
Et chaque disque peut être scindé en plusieurs partitions
Utile pour installer plusieurs systèmes d’exploitation ou pour augmenter
l’indépendance entre les données utilisateurs et le système d’exploitation
Chaque partition possède son système de fichiers indépendant.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Le système de fichiers sur disque
Organisation des disques

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Le système de fichiers sur disque
Les partitions dans les systèmes UNIX
Un disque est identifié par le préfixe sd (scsi drive)
Les disques sont numérotés a, b, c…
Les partitions sont numérotées 1, 2, 3…
(vous pouvez voir les disques/partitions en faisant ls /dev)

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Le système de fichiers sur disque
Les partitions dans les systèmes UNIX

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Le système de fichiers sur disque
Le système de fichiers sur disque
3 concepts fondamentaux
 Le bloc : unité de transfert entre le disque et la mémoire (souvent 4096 octets)
 L’inode (index node) : descripteur d’un fichier
 Type de l’inode (fichier ordinaire, répertoire, autres)
 Propriétaire, droits, dates de création/modification/accès
 Taille
 Liste des blocs du contenu du fichier
…
 Donc, dans ce cours : fichier = inode + blocs du fichier
Dr. Kéba GUEYE
Introduction aux systèmes d’exploitation
Gestion des fichiers
Le système de fichiers sur disque
Montage d’une partition
Le système maintient une table des montages qui associe des chemins (points de
montage) et des disques
 / ⇒ sda1
 /home ⇒ sdb1
 /mnt/windows ⇒ sdb2
Lorsqu’un processus accède à un point de montage, il accède à l’inode racine du disque indiqué dans la
table des montages. Par exemple cd /mnt/windows accède à l’inode racine de sdb2

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Le système de fichiers sur disque
Montage d’une partition

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Le système de fichiers sur disque
Lien direct
Le nom d’un inode dans un répertoire s’appelle un lien direct (hard link en anglais,
aussi appelé parfois lien dur, physique ou matériel)
On peut créer plusieurs liens directs vers le même inode
Commande ln chem-cible chem-lien
Aucune différence entre le nom original et le nouveau nom
Facilite l’accès à des fichiers à partir d’emplacements connus
ln /home/sra/apollinaire.txt /home/Toto/pedro.txt

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Le système de fichiers sur disque
Lien direct
Mais faire de multiples liens directs pour faire des raccourcis peut poser problème
 Pour supprimer un fichier, il faut supprimer tous les liens directs vers son
inode, mais les utilisateurs sont distraits et en oublient
 Un lien direct ne peut référencer qu’un inode de la même partition

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Le système de fichiers sur disque
Notion de lien symbolique
Pour faire des raccourcis on utilise aussi des liens symboliques
Comme ln –s chem-cible chem-lien
 Fichier spécial (type lien) dont le contenu est un chemin cible
 Lorsque le système doit ouvrir le fichier, il ouvre la cible à la place de
l’original
ln –s /home/sra/apollinaire.txt /home/Toto/pedro.txt

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Le système de fichiers sur disque
Notion de lien symbolique
Avantages des liens symboliques
 Dès que le fichier cible est détruit, son espace est libéré (ouvrir le lien symbolique engendre alors
une erreur)
 Un lien symbolique peut référencer un fichier quelconque, y compris appartenant à une autre
partition
Principal inconvénient des liens symboliques
 En cas de déplacement du fichier cible, le lien symbolique peut devenir invalide

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Types de fichiers et Permissions d'accès aux fichiers
Types de fichiers
Les différents types de fichiers sous Linux sont :
 les fichiers normaux : ce sont des collections d'octets. Il n'existe pas de différence entre
les fichiers texte et les fichiers binaires.
 les répertoires : ce sont des fichiers contenant les noms des fichiers et leurs numéros
d'inode.
 les liens symboliques : permettent de présenter une image d'un fichier sous un autre
nom ou à un autre endroit sans dupliquer les données.
 les fichiers spéciaux en mode bloc : sont les portes sur les périphériques fonctionnant
par blocs de données (ex : disques).
Dr. Kéba GUEYE
Introduction aux systèmes d’exploitation
Gestion des fichiers
Types de fichiers et Permissions d'accès aux fichiers
Types de fichiers
Les différents types de fichiers sous Linux sont :
 les fichiers spéciaux en mode caractère : sont les portes vers les périphériques
fournissant ou consommant les données octet par octet.
 les tubes nommés "fifo" : permettent à deux processus sans relation de parenté de
s'échanger des données comme par un tube.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Types de fichiers et Permissions d'accès aux fichiers
Droits d’accès
Toute opération sur un fichier est soumise à droits d’accès
 Message d’erreur « Permission non accordée »
3 types d’accès
r : droit de lecture
 Si répertoire, consultation de ses entrées (c.-à-.d, ls autorisé)
 Sinon, consultation du contenu du fichier

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Types de fichiers et Permissions d'accès aux fichiers
Droits d’accès
Toute opération sur un fichier est soumise à droits d’accès
 Message d’erreur « Permission non accordée »
3 types d’accès
w : droit d’écriture
 Si répertoire, droit de création, de renommage et de suppression d’une entrée dans le répertoire
 Sinon, droit de modification du contenu du fichier
x :
 si répertoire, droit de traverser (c.-à-.d., cd autorisé)
 sinon, droit d’exécution
Dr. Kéba GUEYE
Introduction aux systèmes d’exploitation
Gestion des fichiers
Types de fichiers et Permissions d'accès aux fichiers
Droits d’accès
Linux permet de spécifier les droits d'action sur un fichier, que peuvent exercer les
utilisateurs des 3 catégories, ou plutôt les permissions que leurs accordent les fichiers et les
répertoires
3 catégories d’utilisateurs :
 Propriétaire (u)
 Groupe propriétaire (g)
 Tous les autres (o)
Chaque catégorie possède ses types d’accès r w x
Dr. Kéba GUEYE
Introduction aux systèmes d’exploitation
Gestion des fichiers
Types de fichiers et Permissions d'accès aux fichiers
Droits d’accès
De façon générale, ces permissions sont consultables complètement par la commande : ls -l
Rappel : ll est un alias plus court, pour la commande ls –l

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Types de fichiers et Permissions d'accès aux fichiers
Droits d’accès
De façon générale, ces permissions sont consultables complètement par la commande : ls -l
Rappel : ll est un alias plus court, pour la commande ls –l

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Types de fichiers et Permissions d'accès aux fichiers
Droits d’accès

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Types de fichiers et Permissions d'accès aux fichiers
Droits d’accès – modification
 Modification sur un fichier existant
chmod droit fichier : change mode
 Droits à !appliquer! au fichier
Catégories : u, g, o ou a (= all c.-à-.d., ugo)
Opérations : Ajout (+), retrait (-), affectation (=)

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Types de fichiers et Permissions d'accès aux fichiers
Droits d’accès – modification

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Types de fichiers et Permissions d'accès aux fichiers
Droits d’accès – modification

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gestion des fichiers
Types de fichiers et Permissions d'accès aux fichiers
Droits d’accès – modification
Bien que les permissions du répertoire aient été modifiées, les permissions des
fichiers contenus dans ce répertoire n'ont pas changé.
Avec l'option –R, les permissions sont propagées aux fichiers se trouvant dans le
répertoire.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gérer les archives compressées
Qu’est-ce qu’une archive compressée et à quoi cela peut-il bien servir ?
Si le terme de compression ne vous évoque absolument rien, imaginez une grande
marmite pleine de soupe.
Vous lui faites subir toute une série de processus, vous la déshydratez... et vous
obtenez une boîte de bouillons cubes que vous pouvez transporter assez aisément.
Autre image, qui illustre davantage le terme d’archivage, pensez à votre dernier
déménagement. Toute la vaisselle, toutes les casseroles, tous les bibelots sur les
étagères se sont retrouvés bien empaquetés et ficelés dans des cartons.
Il suffisait alors d’appeler les copains pour faire quelques allers-retours entre
l’appartement et le camion.
Dr. Kéba GUEYE
Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
 Les archives compressées sont omniprésentes dans le quotidien informatique et elles sont utilisées
à des fins très variées.
À titre d’exemple, lorsque vous souhaitez envoyer vos photos de vacances par courrier
électronique, il sera bien plus commode d’envoyer une archive plutôt que d’ajouter chaque photo
individuellement en pièce jointe.
 Étant donné que, de nos jours, la taille moyenne des photos – c’est-à-dire leur poids en mégaoctets
– est assez importante, vous utiliserez plutôt un service de transfert de fichiers en ligne et, dans
certains cas, la confection préalable d’une archive sera obligatoire.
 Une archive compressée représente également le format idéal pour effectuer une sauvegarde de vos
données.
 Enfin, l’utilisation de fichiers compressés pour le transfert sur Internet vous fait économiser de la
bande passante.
Dr. Kéba GUEYE
Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
Si vous avez l’habitude de Windows, vous avez certainement déjà croisé des fichiers .zip et
.rar sur votre disque.
Ces types de fichiers ne sont pas inconnus à Linux, mais les deux formats d’archives
compressées les plus largement répandus sous ce système sont les fichiers.tar.gz et .tar.bz2.
Derrière ces extensions, quelque peu énigmatiques pour un néophyte, se cachent en réalité
trois programmes, trois petits outils. tar rassemble plusieurs fichiers et répertoires en une
archive, gzip et bzip2 se chargent de la compression.
Ces formats sont très bien gérés par les différents systèmes d’exploitation. Linux sait gérer
les archives au format .zip et .rar grâce aux outils unzip et unrar. Inversement, lorsque vous
travaillez sous Windows, vous trouverez des outils libres pour traiter les archives au
format.tar.gz et .tar.bz2.
Dr. Kéba GUEYE
Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
Compresser et décompresser un fichier
Compresser et décompresser un fichier avec gzip
gzip (GNU Zip) constitue l’outil de compression standard sous Linux. Il fait une
chose et une seule : gérer la compression de fichiers simples. Il ne sait pas
constituer des archives, c’est tar qui s’en charge. Cherchons dans notre système un
fichier au hasard, sur lequel nous pourrions nous entraîner :

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
Compresser et décompresser un fichier
Compresser et décompresser un fichier avec gzip
L’affichage détaillé nous montre qu’il s’agit d’un fichier texte de détaille : 15 kilo-
octets. Essayons de le compacter :
gzip remplace le fichier d’origine par une version plus compacte, comportant
l’extension defichier supplémentaire .gz :

Dans cet exemple, la compression est assez conséquente : le fichier résultant est environ trois fois plus petit que l’original.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
Compresser et décompresser un fichier
Compresser et décompresser un fichier avec gzip
La compression varie selon un certain nombre de facteurs. gzip n’aura pas
beaucoup d’effet sur des formats de fichiers comportant une compression initiale,
comme le MP3 ou le JPEG. En revanche, il fonctionnera très bien avec les fichiers
au format texte simple ou les images Bitmap non compressées.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
Compresser et décompresser un fichier
Compresser et décompresser un fichier avec gzip
Pour décompresser un fichier .gz, vous avez deux possibilités :

Ou alors, ce qui revient exactement au même :

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
Compresser et décompresser un fichier
Compresser et décompresser un fichier avec bzip2
L’outil bzip2 est un outil de compression au même titre que gzip, au détail près
qu’il utilise un algorithme un peu plus performant.
L’outil bzip2 ne fait pas partie de notre installation minimale.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
Compresser et décompresser un fichier
Compresser et décompresser un fichier avec bzip2
Reprenons l’exemple précédent, avec le fichier services :

Il en résulte un fichier compressé portant l’extension de fichier supplémentaire


.bz2. Regardons ce fichier de plus près :

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
Compresser et décompresser un fichier
Compresser et décompresser un fichier avec bzip2
Pour décompresser un fichier compacté à l’aide de bzip2, nous avons également le
choix entredeux commandes, qui ont exactement le même effet :

Ou

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
Manipuler les archives avec tar
Créer une archive avec tar
gzip et bzip2 ne gèrent que la compression d’un seul fichier fourni en argument.
Pour créer une archive, nous aurons recours à la commande tar. Là aussi, un
exemple pratique nous aidera à comprendre le fonctionnement de l’outil en
question.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
Manipuler les archives avec tar
Créer une archive avec tar
Pour commencer, il nous faut un répertoire contenant quelques fichiers.
Je crée donc, au hasard, un répertoire ~/config et j’y place tous les fichiers *.conf
que je trouve dans l’arborescence de /etc en faisant fi des avertissements relatifs
aux droits d’accès.
Vous pourrez vous en passer.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
Manipuler les archives avec tar
Créer une archive avec tar

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
Manipuler les archives avec tar
Créer une archive avec tar
Nous allons rassembler tous ces fichiers contenus dans ~/config pour en constituer
une archive avec la commande tar :

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
Manipuler les archives avec tar
Créer une archive avec tar
Le nom du programme (tape archiver) révèle son utilisation initiale : tar a servi en
premier lieu à la gestion d’archives sur bande magnétique. Voici une petite
explication de l’exemple que nous venons de voir :
 tar reçoit l’ordre de créer (create) une archive avec l’option -c ;
 la commande nous dit ce qui se passe en coulisse avec l’option-v ;
 le premier argument (config.tar) sera interprété comme le nom de l’archive
grâce à l’option-f (file).
Dr. Kéba GUEYE
Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
Manipuler les archives avec tar
Créer une archive avec tar
Voici un exemple plus général pour vous familiariser avec la syntaxe de tar pour la
création d’une archive. Nous créons trois fichiers fichier1, fichier2 et fichier3 et
les rassemblons dans un fichier archive.tar :

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
Manipuler les archives avec tar
Extraire les fichiers d’une archive
Avant de « déballer » notre archive, nous allons la déplacer dans un répertoire
nouvellement créé. En effet, étant donné que les fichiers d’origine sont toujours en
place, une extraction dans le même répertoire ne changerait rien et écraserait tous
les fichiers existants.
Dans l’autre sens, c’est donc
l’option-x (extract) qui procède
au dépaquetage de l’archive.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
Manipuler les archives avec tar
Combiner l’archivage et la compression
Essayons de créer une archive compressée en reprenant l’exemple du début. Nous pouvons très bien :
 créer l’archive avectar ;
 compresser l’archive avec gzip ou bzip2.
Voici ce que cela donnerait en pratique :

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
Manipuler les archives avec tar
Combiner l’archivage et la compression
Et avec bzip2 :

Cependant, il est possible de faire encore plus simple. tar comporte une série d’options qui
servent à créer une archive et la compresser à la volée.

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
Manipuler les archives avec tar
Combiner l’archivage et la compression
Effacez les archives compressées de l’exercice précédent et gardez seulement le répertoire
~/config et son contenu.
Maintenant, créez une archive compressée avec les options suivantes :

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
Manipuler les archives avec tar
Combiner l’archivage et la compression
Si vous souhaitez créer une archive compressée avec bzip2, il suffira de remplacer l’option
-zpar -j

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
Manipuler les archives avec tar
Combiner l’archivage et la compression
Notez la différence de taille entre les deux archives :

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
Manipuler les archives avec tar
Extraire une archive compressée
Inversement, l’extraction d’une archive compressée peut également s’effectuer d’une traite
:• pour une archive .tar.gz :

• et pour une archive .tar.bz2 :

Dr. Kéba GUEYE


Introduction aux systèmes d’exploitation
Gérer les archives compressées
Les différents formats d’archivage
Manipuler les archives avec tar
Extraire une archive compressée
Remarque
Les options de tar sont souvent utilisées sans le tiret initial. Vous pouvez donc
écrire de la même façon tar -xvjf ou tar xvjf, cela n’a aucune incidence sur le
fonctionnement de la commande.

Dr. Kéba GUEYE

Vous aimerez peut-être aussi