0% ont trouvé ce document utile (0 vote)
33 vues37 pages

Introduction au Système d'Exploitation

Le document présente un cours sur les systèmes d'exploitation, spécifiquement Linux, structuré en cinq chapitres abordant des sujets tels que les principes généraux, les commandes de base, l'architecture Linux, la gestion des utilisateurs et l'utilisation à distance. Il inclut des méthodes d'évaluation par exposés et contrôle continu, ainsi que des informations sur la manipulation des fichiers et les droits d'accès. L'objectif est de fournir une compréhension approfondie des opérations nécessaires pour faire fonctionner un programme informatique sur un ordinateur.

Transféré par

pregadufren
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
33 vues37 pages

Introduction au Système d'Exploitation

Le document présente un cours sur les systèmes d'exploitation, spécifiquement Linux, structuré en cinq chapitres abordant des sujets tels que les principes généraux, les commandes de base, l'architecture Linux, la gestion des utilisateurs et l'utilisation à distance. Il inclut des méthodes d'évaluation par exposés et contrôle continu, ainsi que des informations sur la manipulation des fichiers et les droits d'accès. L'objectif est de fournir une compréhension approfondie des opérations nécessaires pour faire fonctionner un programme informatique sur un ordinateur.

Transféré par

pregadufren
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

INTRODUCTION AU

SYSTÈME D’EXPLOITATION
Par:
Cédric YAMBANGOYE
Ingénieur DevOps

Année Universitaire 2024 - 2025

By Cédric YAMBANGOYE 1
INTRODUCTION AU SYSTÈME D’EXPLOITATION

• Volume horaire: 35 H
Répartis sur cinq (5) chapitres

• Méthode d’évaluation:
- Exposés;
- Contrôle continu.

By Cédric YAMBANGOYE 2
PLAN DU COURS
Chapitre 1: Généralités et principes

Chapitre 2: Commandes basiques sous Linux

Chapitre 3: Architecture Linux et du système de fichier

Chapitre 4: Gestion des utilisateurs

Chapitre 5: Utilisation à distance et gestion des paquets

By Cédric YAMBANGOYE 3
INTRODUCTION

Pour qu’un ordinateur soit capable de faire fonctionner un


programme informatique (appelé parfois application ou logiciel),
la machine doit être en mesure d’effectuer un certain nombre
d’opérations préparatoires afin d’assurer les échanges entre le
processeur, la mémoire, et les périphériques.

By Cédric YAMBANGOYE 4
Chapitre 1: Généralités et principes
Définitions
- Système d’exploitation:
Le système d’exploitation est chargé d’assurer la liaison entre les ressources
matérielles, l’utilisateur et les applications.
- Processus:
C’est un programme en cours d’exécution

- Mémoire:
C’est un dispositif électronique servant à enregistrer des données et d’en
faire la restitution.

By Cédric YAMBANGOYE 5
Chapitre 1: Généralités et principes
Les Fichiers
 Nommage des fichiers, les jockers
• Un nom de fichier peut être composé de n’importe quel caractère
alphanumérique et de la plupart des caractères spéciaux.
• Certains caractères spéciaux nécessitent d’être « échappés » quand on les
utilise dans un nom de fichier en ligne de commande.
• Pour échapper un caractère, on le précède d’un « \ ». Par exemple « \$ ».
• Pour échapper le caractère « \ », on l’écrit simplement deux fois : « \\ »

By Cédric YAMBANGOYE 6
Chapitre 1: Généralités et principes
Les Fichiers
 Nommage des fichiers, les jockers

Les caractères interdits ou à éviter sont :


• « / » : Interdit, sert à séparer les noms de répertoire dans un chemin
• « \ » : Nécessite d’être « échappé », et peut poser des problèmes de
compatibilité avec d’autres systèmes d’exploitation comme Windows. A éviter.
• « - » : Peut être utilisé, mais à éviter au début d’un nom de fichier. Le terminal
interprète le « - » comme un paramètre pour une commande. Cela entrainerait
donc une erreur de syntaxe avec un fichier nommé ainsi.

By Cédric YAMBANGOYE 7
Chapitre 1: Généralités et principes
Les Fichiers
 Nommage des fichiers, les jockers
• De façon générale, il est fortement recommandé de n’utiliser que les
caractères alphanumériques (avec ou sans accents), le tiret « - », le souligné « _
», le point « . » et éventuellement l’espace (toutefois déconseillé).
• Le chemin d’accès d’un fichier peut être relatif ou absolu.
• Un chemin relatif se détermine à partir du répertoire courant, en utilisant les
noms spéciaux « . » et « .. »

By Cédric YAMBANGOYE 8
Chapitre 1: Généralités et principes
Les Fichiers
 Nommage des fichiers, les jockers
• Les caractères « ? » et « * » sont appelés des jokers.
• « ? » permet de remplacer un et un seul caractère (n’importe lequel) dans un
nom de fichier
• « * » permet de remplacer un nombre quelconque de caractères, même si il n’y
en a pas
• Exception : Le caractère « . » ne peut pas être remplacé par un joker s’il est au
début d’un nom de fichier.
• Conséquence directe : une chaine avec joker porte soit sur les fichiers non
cachés, soit sur les fichiers cachés, mais pas les deux en même temps.
By Cédric YAMBANGOYE 9
Chapitre 1: Généralités et principes
Les Fichiers
 Droits des fichiers et répertoires
• Chaque fichier ou répertoire possède des droits sur trois niveaux :
- Le propriétaire
- Le groupe (pas forcément un de ceux du propriétaire)
- Les autres
• Chacun de ces trois niveaux peut posséder trois droits :
- r : Droit de lecture
- w : Droit d’écriture
- x : Droit d’exécution
By Cédric YAMBANGOYE 10
Chapitre 1: Généralités et principes
Les Utilisateurs
• Toute commande est exécutée par un utilisateur
• L’utilisateur avec les droits les plus puissant est l’utilisateur nommé « root »
• Compte « root » à utiliser avec prudence : Il peut faire « ce qu’il veut » !
• Utilisateurs réunis par groupes
• Un utilisateur n’accède qu’aux fichiers dont lui ou son groupe est propriétaire
et/ou a les droits nécessaires. Exception : « root », encore une fois.

By Cédric YAMBANGOYE 11
Chapitre 2: Commandes basiques sous Linux
Syntaxe
 Syntaxe générale d’une commande
• Une commande s’appelle directement par son nom
• On peut spécifier un ou plusieurs paramètres à une commande.
• Les paramètres peuvent être soit directement une valeur (par exemple, un nom de fichier), soit un
nom de paramètre précédé d’un « - » et suivi de la valeur correspondante. Nom_commande
[option(s)] [paramètre(s)]

- Nom_commande :
c’est la règle que vous souhaitez exécuter.
- Options :
modifie le fonctionnement de la commande. Pour
l’invoquer, utilisez des tirets (-) ou des doubles tirets (-).
- Paramètres :
spécifie toute information nécessaire à la commande.
N’oubliez pas que toutes les commandes Linux sont sensibles à la casse.
• Par exemple : ls -h /home/myself By Cédric YAMBANGOYE 12
Chapitre 2: Commandes basiques sous Linux
Syntaxe
 Documentation intégrée
• Les systèmes Linux disposent généralement d’une documentation intégrée.
• Celle-ci est accessible via les commandes « man » et « whatis » et permet
d’obtenir la documentation détaillée de la commande spécifiée en paramètre.
• La documentation d’une commande indique sa syntaxe générale, ainsi que le
détail des paramètres possibles.
• Dans la syntaxe générale, si un paramètre est indiqué entre [ ], alors ce
paramètre est facultatif.

By Cédric YAMBANGOYE 13
Chapitre 2: Commandes basiques sous Linux
Syntaxe
 Documentation intégrée
« man » Toutes les commandes de linux disposent d’un manuel intégré. Pour le
consulter, il vous suffit d’utiliser la commande « man ».
• Syntaxe : man [x] commande / man commande
• Paramètres :
- x : Facultatif – Précise le n° de la page du manuel
- commande : Commande dont vous souhaitez consulter le manuel

By Cédric YAMBANGOYE 14
Chapitre 2: Commandes basiques sous Linux
Syntaxe
 Documentation intégrée
« whatis » permet d’avoir un descriptif des différentes pages de manuels pour la
commande donnée. Cela permet d’identifier la page pour « man » contenant
l’information recherchée.
• Syntaxe : whatis commande
• Paramètres :
- commande : nom de la commande sur laquelle porte la demande

By Cédric YAMBANGOYE 15
Quel est le résultat de la commande:
man man

By Cédric YAMBANGOYE 16
Chapitre 2: Commandes basiques sous Linux
Opération sur les fichiers
 Manipulation des fichiers
• « pwd » Indique le répertoire courant
- Syntaxe : pwd
• « cd » Permet de changer de répertoire.
- Syntaxe : cd nom
Rappel : Comme sous Windows et Mac, nous retrouvons deux répertoires
spéciaux dans tous les répertoires :
- « . » : Ce répertoire désigne le répertoire courant
- « .. » : Ce répertoire désigne le répertoire parent

By Cédric YAMBANGOYE 17
Chapitre 2: Commandes basiques sous Linux
Opération sur les fichiers
 Manipulation des fichiers
• « ls » liste le contenu d’un répertoire
- Syntaxe : ls [options] [fichier]
- Options :
C : Affiche la liste en colonnes , triée verticalement
R : Affiche récursivement le contenu des sous-répertoires
a : Affiche tous les fichiers même cachés
l : Affiche le type, les droits d’accès, le nom du répertoire, le groupe, la taille et
l’horodatage
r : Inverse l’ordre de tri
t : Tri par date et non par ordre alphabétique
h : Ajoute une lettre pour l’unité de taille
By Cédric YAMBANGOYE 18
Chapitre 2: Commandes basiques sous Linux
Opération sur les fichiers
 Manipulation des fichiers
« mkdir » Crée un répertoire
• Syntaxe : mkdir [options] repertoire
• options :
-p : Crée les répertoires parents si nécessaire
Exemple : mkdir -p a/b/c => Crée a et b en plus de c si nécessaire.
• repertoire : Nom du répertoire à créer

By Cédric YAMBANGOYE 19
Chapitre 2: Commandes basiques sous Linux
Opération sur les fichiers
 Manipulation des fichiers
« mv » Gère le déplacement de fichier
• Syntaxe : mv [options] source destination

« rm » Gère la suppression de fichiers


• Syntaxe : rm [options] fichier
• options :
-f : Efface automatiquement les fichiers sans demander de confirmation.
-r : Efface récursivement tous les fichiers, y compris les fichiers des sous-
répertoires et les sous-répertoires eux-mêmes.

By Cédric YAMBANGOYE 20
Chapitre 2: Commandes basiques sous Linux
Opération sur les fichiers
 Manipulation des fichiers
• « rmdir » Gère la suppression de répertoires
• Syntaxe : rmdir [options] répertoire
• options :
-p : Efface également le répertoire parent si celui-ci devient vide après suppression du
répertoire spécifié.
Par exemple, rmdir -p a/b/c est équivalent à rmdir a/b/c; rmdir a/b; rmdir a.

« more » Permet d’afficher le contenu d’un fichier avec défilement


• Syntaxe : more [options] fichier
• options : Pour les options de more, référez-vous à l’aide de Linux (man). Aucune option
particulière n’est nécessaire pour un usage de base.

By Cédric YAMBANGOYE 21
Chapitre 2: Commandes basiques sous Linux
Opération sur les fichiers
 Gestion des droits
• « chmod » Permet de modifier les permissions sur des fichiers/répertoires
• Syntaxe : chmod [options] mode fichier/répertoire
• options :
-R : Applique la modification de façon récursive
mode : Peut être spécifié soit en décimal, soit sous la forme suivante : x[+/-/=]y

• « chown » Permet de modifier le propriétaire et le groupe d’un fichier/répertoire


• Syntaxe : chown [options] propriétaire[:groupe] fichier/répertoire
• options :
-R : Applique la modification de façon récursive

By Cédric YAMBANGOYE 22
Chapitre 2: Commandes basiques sous Linux
Opération sur les fichiers
 Communication entre commandes et filtrage
Sous linux, une commande affiche généralement ses informations directement dans le
terminal et obtient les informations dont elle a besoin du clavier. Ces canaux de
communication peuvent être modifiés, et même transmis entre plusieurs commandes.
On en distingue 3 : entrée standard, sortie standard et sortie d’erreur.

• Entrée standard (stdin) : On appelle entrée standard le moyen par lequel des données sont
envoyées à une commande. Par défaut, il s’agit du clavier.

• Sortie standard (stdout, canal de sortie n°1) : On appelle sortie standard le moyen par lequel
sont délivrées les informations envoyées par une commande. Par défaut, c’est le terminal.

• Sortie d’erreur (stderr, canal de sortie n°2) : On appelle sortie d’erreur le moyen par lequel
sont délivrés les messages d’erreur d’une commande.

By Cédric YAMBANGOYE 23
Chapitre 2: Commandes basiques sous Linux
Opération sur les fichiers
 Communication entre commandes et filtrage
« head » Permet d’afficher les premières lignes d’un fichier ou de l’entrée standard
• Syntaxe de base : head [options] [fichier]
• options : • -n x : x = nombre de lignes à afficher. 10 si -n non précisé
• fichier : Le fichier à traiter. Si non-précisé, l’entrée standard est utilisée

« tail » Permet d’afficher les dernières lignes d’un fichier ou de l’entrée standard
• Syntaxe de base : tail [options] [fichier]
• options : -n x : x = nombre de lignes à afficher. 10 si -n non précisé
• fichier : Le fichier à traiter. Si non-précisé, l’entrée standard est utilisée
By Cédric YAMBANGOYE 24
Chapitre 2: Commandes basiques sous Linux
Opération sur les fichiers
 Communication entre commandes et filtrage
« cut » Permet de découper des lignes de texte selon un séparateur donné
• Syntaxe de base : cut [options] [fichier]
• fichier : Si spécifié, utilise les lignes du fichier, sinon, les lignes de l’entrée standard
• options : -dx : définit le délimiteur « x » entre chaque élément de la ligne de texte.
Par exemple : « -d: » spécifie le symbole « : » comme délimiteur

-fx : Indique le champ « x » à afficher. « -f2 » indique le 2nd champ.


On peut indiquer plusieurs champs séparés par des virgules :
« -f2,5 » affiche le 2e et le 5e champ.

Note : si une ligne ne contient pas le délimiteur spécifié par « -d », elle sera quand même affichée.
-s : Permet de ne pas afficher les lignes ne contenant pas le délimiteur spécifié par « -d »

By Cédric YAMBANGOYE 25
Chapitre 2: Commandes basiques sous Linux
Opération sur les fichiers
 Communication entre commandes et filtrage
Interprétez le résultat rendu par la commande suivante:

more /var/log/[Link] | tail -n 30

By Cédric YAMBANGOYE 26
Chapitre 3: Architecture Linux et système de fichier
Architecture
 Noyau, démarrage et processus
Linux est en premier lieu un noyau (= kernel), avant d’être un système
d’exploitation.
• Le noyau gère les communications avec le matériel : CPU, RAM, disques de
stockage, composants multimédias (son, image, etc.), réseau, systèmes d’entrées
(Clavier, souris, etc.), et bien d’autres encore.
• Dans le cas où le noyau ne sait pas dialoguer avec un matériel spécifique, on
installera un pilote qui apportera au système les éléments nécessaires au dialogue
avec le périphérique concerné.

By Cédric YAMBANGOYE 27
Chapitre 3: Architecture Linux et système de fichier
Architecture
 Noyau, démarrage et processus
• L’ensemble du système d’exploitation (OS) est structuré sur un schéma modulaire en étoile, dont le centre est le noyau.

• Conséquence directe : le noyau est le premier élément chargé au démarrage du système. Sans lui, rien ne fonctionne.

• L’architecture modulaire de Linux permet à de nombreux éléments de « planter » sans impact fatal sur l’exécution de l’OS. Au
pire, ce dernier détruit le processus concerné, puis le recharge.

• L’architecture modulaire de l’OS permet également d’installer et de mettre à jour de nombreux paquets sans avoir besoin de
redémarrer le système.

• Par contre, le noyau doit être extrêmement fiable ! Si celui-ci vient à planter, c’est toute la machine qui plante. C’est ce qu’on
appelle un « Kernel Panic ».

• La seule solution pour sortir d’un Kernel Panic est de redémarrer physiquement la machine.

By Cédric YAMBANGOYE 28
Chapitre 3: Architecture Linux et système de fichier
Architecture
 Noyau, démarrage et processus
• La séquence de démarrage d’un système Linux est la suivante :
1. Le chargeur d’amorçage (généralement « GRUB2 ») est lancé par le BIOS
(ou l’UEFI) de la machine
2. Le chargeur d’amorçage charge ensuite le noyau, qui monte le système
de fichier racine (« / »).
3. Le noyau démarre alors le premier processus de l’OS : « init », dont le
rôle est de charger tous les éléments de l’OS, et le second processus (sur les
systèmes assez récents) : « kthread », qui chargera les différents modules du
noyau.

By Cédric YAMBANGOYE 29
Chapitre 3: Architecture Linux et système de fichier
Architecture
 Noyau, démarrage et processus
• Sous Linux, chaque programme lancé est appelé un processus.
• Chaque processus est identifié par un PID : « Processus IDentifier »
• Un processus comporte également deux autres informations : l’UID de l’utilisateur qui l’a lancé, et le PID de son
processus parent (PPID)
• Init porte toujours le PID 1, puisque c’est le premier à être chargé. Le n°2 sera kthread. Ce sont les deux seuls
processus dont le PPID est 0.

« ps » Affiche la liste des processus lancés dans l’invite de commande en cours


• Syntaxe de base : ps [options]
• Options en syntaxe :
• -a : Affiche les processus de tous les utilisateurs fonctionnant dans un terminal
• -ax : Affiche l'intégralité des processus du système.
• -u : Affiche en plus le nom de l’utilisateur du processus et diverses informations
• -H : Trie les processus de façon hiérarchique. Permet de visualiser facilement qui a lancé qui
dans les processus.
By Cédric YAMBANGOYE 30
Chapitre 3: Architecture Linux et système de fichier
Architecture
 Arborescence générale de Linux
• Ensemble du système représenté sous forme d’une arborescence de fichiers.
• Pas de lettre de lecteur comme Windows, même si plusieurs partitions peuvent être utilisées.
• Les partitions, comme les lecteurs externes (USB, optique, etc.) sont « montés » dans des
répertoires de l’arborescence.
• La racine du système est « / »

• Principaux répertoires (Descriptions simplifiées) :


/ → Racine du système
/bin/ → Contient les commandes de base. Modifications déconseillées. (bin = binaire,
dans le sens « programme compilé »)
/boot/ → Contient les fichiers nécessaires au démarrage (généralement GRUB2).
Modifications déconseillées.

By Cédric YAMBANGOYE 31
Chapitre 3: Architecture Linux et système de fichier
Architecture
 Arborescence générale de Linux
/dev/ → Représente le matériel de la machine et permet à Linux de le manipuler.
NE SURTOUT PAS TOUCHER ! (=Device files)
/etc/ → La plupart des fichiers de configuration du système et des logiciels installés. A moins
d’être sûr de ce que vous faites, évitez de modifier les fichiers situés dans ce répertoire. Une
erreur de configuration pourrait planter en partie ou en totalité le système.

/home/ → Contient les données des utilisateurs. Ce répertoire est généralement monté sur
une partition spécifique. Pas forcément utilisé dans des usages spécifiques, ou sous un
autre nom (serveur web géré par certaines interfaces d’administration, par exemple)
/lib/, /lib32/, /lib64/ → Contient les librairies (aussi appelées bibliothèques, équivalent des
DLL de Windows)
/lost+found/ → Equivalent du répertoire found.000 de Windows : Contient les fichiers
récupérés suite à des corrections du système de fichier

By Cédric YAMBANGOYE 32
Chapitre 3: Architecture Linux et système de fichier
Architecture
 Arborescence générale de Linux
/media/ → Répertoire dans lequel sont montés « automatiquement » les lecteurs (medias) supplémentaires (sauf
config. spécifique), tels que disques durs et partitions autres que celles utilisées spécifiquement par le système, ainsi
que les lecteurs externes.
/mnt/ → Idem /media/. Dépend des distributions. (mnt = mounted filesystems)
/opt/ → Contient généralement les logiciels commerciaux ou non-inclus avec le système (opt = optional softwares)
/proc/ → Contient les informations sur l'état du système et les différents processus en fonction. Modifications
déconseillées
/root/ → Répertoire de l’utilisateur « root », le seul à ne pas être dans /home/
/sbin/ → Contient les commandes (binaires) d’administration système (vérification et réparation des disques, mise
en place du réseau, etc.)
/tmp/ → Contient les fichiers temporaires du système
/usr/ → Contient généralement les logiciels fournis avec le système et utilisés par les utilisateurs (users)
/var/ -> fait référence à des données variables, contrairement aux binaires qui sont globalement statiques)
Note : En fonction des distributions de linux, certains répertoires peuvent être absents, et d’autres peuvent figurer
en plus.

By Cédric YAMBANGOYE 33
Chapitre 3: Architecture Linux et système de fichier
Système de fichier
 Les démons
• Démons = Services sous Microsoft Windows
• Lancés généralement par « init » au démarrage de la machine. Peut parfois être lancé sur un événement précis.
• Fonctionnent en arrière-plan
• Pas besoin de session utilisateur ouverte
• Contrairement à Windows où il faut souvent redémarrer le PC en cas de modification d’un service, sous Linux, il suffit de
redémarrer le démon

• 1 ère méthode de contrôle des démons : Par script init.d


Syntaxe : /etc/init.d/nom_du_service commande

• 2 ème méthode de contrôle des démons : Commande service


Syntaxe : service nom_du_service commande

• 3 ème méthode de contrôle des démons : Commande systemctl (du gestionnaire « systemd »)
Syntaxe : systemctl commande nom_du_service

By Cédric YAMBANGOYE 34
Chapitre 3: Architecture Linux et système de fichier
Système de fichier
 Les démons
• Tous les démons ne sont pas forcément gérables par toutes les méthodes !
• Les méthodes ne sont pas forcément toutes disponibles selon les distributions
• Certains démons nécessitent d’être arrêtés avant de modifier leur fichier de
config, car ils l’enregistrent lors de leur arrêt !

IMPORTANT : Pensez à redémarrer un démon si vous changez sa configuration


pour qu’il prenne en compte les modifications !!!

By Cédric YAMBANGOYE 35
Chapitre 3: Architecture Linux et système de fichier
Système de fichier
 Visualiser les informations systèmes
« uname » Permet d’afficher les informations du noyau et de l’architecture matérielle
• Syntaxe de base : uname [options]
• options (liste partielle) :
-a : Affiche toutes les options. Equivalent à « uname –snrvmpio »
-s : Affiche le nom du noyau (Kernel) de l’OS.
-n : Affiche le nom d’hôte réseau.
-r : Affiche la révision du noyau (Kernel release). Cette information vous permet
notamment de savoir si vous fonctionnez en 32 ou en 64 bits (en général, se
termine respectivement par « - 32 » et « -64 »)
-v : Affiche la version du noyau
-m : Affiche le nom de l’architecture de la machine (par exemple, « i686 » pour
des machines 32bits compatibles avec les architectures des Pentium 3, 4, et
autres processeurs plus récents)
By Cédric YAMBANGOYE 36
Chapitre 3: Architecture Linux et système de fichier
Système de fichier
 Visualiser les informations systèmes
« df » Affiche la liste des partitions, l’espace occupé/disponible et les inodes
• Syntaxe de base : df [options]
• options (liste partielle) :
-h : Affiche l’espace disponible avec différentes unités (k pour kilo-octets,
M pour Mega-octet, G pour Giga-octet, etc.) plutôt qu’en octets
-i : Affiche le nombre d’inodes total/utilisés/restant sur chaque partition.
Un inode est l’identifiant unique de chaque fichier et répertoire d’une
partition. Le nombre d’inode est limité par partition. Pour
comparaison, dans une partition NTFS, l’équivalent de l’ensemble des
inodes est la MFT.

By Cédric YAMBANGOYE 37

Vous aimerez peut-être aussi