systeme d'exploitation unix linux
TRANSCRIPT
-
8/19/2019 systeme d'exploitation Unix Linux
1/27
-
8/19/2019 systeme d'exploitation Unix Linux
2/27
Chapitre : Introduction au système
d’exploitation Unix Linux
HistoireEn 1965 les laboratoires Bell Labs lancent un projet
avec General Electric et le MIT (Massachussets Institute ofTechnology) pour concevoir un système d'exploitation, sonnom : Multics. Malheureusement pour eux les chosesn'avancent pas très vite et Bells Labs finit par jeter l'éponge.
C'est alors que deux chercheurs de ces laboratoires,Dennis Ritchie et Ken Thompson, décident deconcevoir eux-mêmes un système qui conviendrait auxbesoins de leur entreprise.C'est un de leur collègue, Brian Kernighan, qui lui trouve
son nom : il y avait Multics, il y aura désormais Unix.
-
8/19/2019 systeme d'exploitation Unix Linux
3/27
Chapitre : Introduction au système
d’exploitation Unix Linux
Ken Thompson Dennis Ritchie Brian Kernighan
Remarque : Ce sont ces mêmes chercheurs qui ont inventé un peu
plus tard le langage C! Ils en ont profité pour réécrire presque toutleur Unix du langage machine (assembleur) vers le C.
-
8/19/2019 systeme d'exploitation Unix Linux
4/27
Chapitre : Introduction au système
d’exploitation Unix Linux
1985 : Le système Minix
Depuis 1985 des milliers d'étudiants ont appris laprogrammation système grâce à Minix.
1991 :Linus Torvalds, étudiant finlandais, présenta la
première version de son système d'exploitation Linux.Linus …UnixLinux
-
8/19/2019 systeme d'exploitation Unix Linux
5/27
Chapitre : Introduction au système
d’exploitation Unix Linux
Linus Torvalds réecrit certaines parties du systèmeMinix afin de lui ajouter des fonctionnalités et de lerendre plus efficace. Les sources de son travail sontdiffusées sur Internet. C’est ainsi que la première Version de Linux est née: Version 0.1 août 1991.
-
8/19/2019 systeme d'exploitation Unix Linux
6/27
Chapitre : Introduction au système
d’exploitation Unix Linux
Caractéristique d’Unix
Multi-Utilisateurs
Multi-tâches
Multi plate-formes: (portable écrit en C)
Interactif
Un système de fichiers hiérarchisé
Un mécanisme de protection
Distribué gratuitement: basé sur le principe dulogiciel libre et selon le terme de la licence GPL.
Fiable, robuste, puissant et efficace.
-
8/19/2019 systeme d'exploitation Unix Linux
7/27
Chapitre : Introduction au système
d’exploitation Unix Linux
Architecture générale du système
Unix est constitué principalement de trois couches :
Couche « physique » : périphériques + BIOS ; Couche « système » : Noyau et Processus ;
Couche « Interface » : Shell;
La communication entre ces couches est réglementée
par le noyau (Kernel).
-
8/19/2019 systeme d'exploitation Unix Linux
8/27
Chapitre : Introduction au système
d’exploitation Unix Linux
Architecture du système
NOYAU
SHELL(s)
Éditeurvi, ed,
emacs
Assembleur
Linker
Compilateur
C
fortran
pascal
Génie logiciel lex, yacc, make, sccs
Outils
d’administration
Outil de
communication
mail
write
kermit
-
8/19/2019 systeme d'exploitation Unix Linux
9/27
Chapitre : Introduction au système
d’exploitation Unix Linux
L’utilisateur communique avec le noyau par l'intermédiaired'un SHELL.
Les shells sont aussi des langages de commandes et deprogrammation.
Les principaux SHELLS et leurs exécutables sont :
Bourne Shell ===> /bin/sh
C Shell ===> /bin/cshKorn Shell ===> /bin/ksh
Bash ===> /bin/bush
-
8/19/2019 systeme d'exploitation Unix Linux
10/27
Chapitre : Introduction au système
d’exploitation Unix Linux
Le Noyau UNIX (kernel)
Le noyau est le programme qui assure la gestion de lamémoire, le partage du processeur entre les différentestâches à exécuter et les entrées/sorties de bas niveau. Il
est lancé au démarrage du système (le boot) ets’exécute jusqu’à son arrêt.
Le noyau est constitué d’un ensemble de procédures et defonctions écrites pour l’essentiel en langage C.
La taille d’un noyau Unix est aux alentours de 10 millions delignes de programmes sources.
-
8/19/2019 systeme d'exploitation Unix Linux
11/27
Chapitre : Introduction au système
d’exploitation Unix Linux
Les
tâches
du
noyauQuelques tâches gérées par Le noyau : L'initialisation du système.
La gestion de mémoire.
La gestion des fichiers.
La gestion des processus. …etc.
-
8/19/2019 systeme d'exploitation Unix Linux
12/27
Chapitre : Introduction au système
d’exploitation Unix Linux
Initialisation du système
Lors du lancement du système, deux processus sontcréés « swapper » et « init »:
« Swapper » est un processus système qui n’exécuteque des fonctions et procédures et qui gère enparticulier le va et vient des programmes entre lesmémoires principales et secondaires.
« Init » a pour rôle de créer un processus pour chacundes terminaux des systèmes à partir desquels unutilisateur peut ouvrir une session.
-
8/19/2019 systeme d'exploitation Unix Linux
13/27
Chapitre : Introduction au système
d’exploitation Unix Linux
Système de Gestion de Fichiers(SGF)
Les SGF sont structurés hiérarchiquement etregroupent les fichiers dans les répertoires. Il existe
un répertoire racine (/) qui contient tous les fichiers etles dossiers.
Les noms des fichiers et des répertoires peuvent êtretrès longs ( jusqu’à 256 caractères par nom )
Exemple: ext2, ext3.
-
8/19/2019 systeme d'exploitation Unix Linux
14/27
Chapitre : Introduction au système
d’exploitation Unix Linux
Rq: les systèmes des fichiers Unix sont ditsmono-tête ce qui signifie qu’ils n’ont qu’un
point de départ, le répertoire racine, alorsque les systèmes de Microsoft sont multi-têtes puisqu’ils ont un point de départ par
lecteur.
-
8/19/2019 systeme d'exploitation Unix Linux
15/27
Chapitre : Introduction au système
d’exploitation Unix Linux
/
bin etcdev libhome rootusr …
csh ls
fd0 lp
passwd
User2User1
La hiérarchie des répertoires
Linux définit un système de fichiers hiérarchique avec uncertain nombre de répertoires standards
-
8/19/2019 systeme d'exploitation Unix Linux
16/27
Chapitre : Introduction au système
d’exploitation Unix Linux
Hiérarchie standard du système de fichiers:
/: répertoire racine
/boot: répertoire contenant le noyau de linux.
/dev: répertoire contenant les fichiers spéciaux permettent
d’accéder aux périphériques. /sbin: répertoire contenant les commandes systèmes réservées à
l’administrateur.
/bin: ce répertoire contient les commandes systèmes générales
/lib: contient les bibliothèques partagées
/etc: Répertoire contenant tous les fichiers de configuration dusystème.
/tmp: répertoire permettant de stocker les données temporaires.
-
8/19/2019 systeme d'exploitation Unix Linux
17/27
Chapitre : Introduction au système
d’exploitation Unix Linux
/usr: programmes et utilitaires des utilisateurs et contient denombreux sous-répertoire:
/usr/bin: contient l’exécutable des utilitaires
exemple : (gcc -->compilateur, ls --> liste les fichiers et lesrépertoires ,…etc)
/usr/sbin: les fichiers développés en C , sources des programmes desystème.
/var: Répertoire contenant les répertoires personnels des utilisateurs.
/root: ce répertoire contient le répertoire personnel del’administrateur.
/mnt : réservé au montage des systèmes de fichiers non permanents(Cd-ROM , disquette ..etc.)
/home : contient les répertoires des utilisateurs
-
8/19/2019 systeme d'exploitation Unix Linux
18/27
Chapitre : Introduction au système
d’exploitation Unix Linux
Remarque:Pour accéder à un fichier l’utilisateur donne le
chemin d’accès , ce dernier peut être relatif ouabsolu:
Absolu en partant toujours de la racine de l’arbre. Ex: /home/etudiant1/cours/chap1.htm
Relatif en partant du répertoire courant
./cours/chap1.htm
-
8/19/2019 systeme d'exploitation Unix Linux
19/27
Chapitre : Introduction au système
d’exploitation Unix Linux
Les SGFs d’Unix utilisent les structures de donnéesappelées « inodes » pour définir les fichiers.
Un inode contient toutes les informations d’un fichier, à
savoir :Son propriétaire et son groupe
Ses droits d’accès (r/w/x)
Ses dates de création, modification, accès.
Les blocs qu’il utilise. D’autres informations utilisées pour le SGF.
-
8/19/2019 systeme d'exploitation Unix Linux
20/27
Chapitre : Introduction au système
d’exploitation Unix Linux
Ces inodes sont stockés dans une table du système de
fichier ce qui permet d’accéder très rapidement àtoutes ces informations et de retrouver également trèssimplement ces données.
-
8/19/2019 systeme d'exploitation Unix Linux
21/27
Chapitre : Introduction au système
d’exploitation Unix Linux
Mode d’exécution d’un processus
Tout processus possède deux modes d ’exécution
mode noyau
exécution privilégiée
aucune restriction
accès à toutes les instructions sur tous les périphériques
mode utilisateur
exécution normale
interruptible à tout moment
doit faire un appel système pour accéder aux ressourcesmachine
-
8/19/2019 systeme d'exploitation Unix Linux
22/27
Chapitre : Introduction au système
d’exploitation Unix Linux
Les Utilisateurs d’Unix
Unix est multi-utilisateurs
➔ nécessité d'avoir un nom particulier aux yeux du système("login") ainsi qu'un mot de passe pour la sécurité
2 types d'utilisateurs l'utilisateur "root" : super utilisateur -> possède tous les
droits sur la machine
les autres utilisateurs (possèdent des droits restreints)
-
8/19/2019 systeme d'exploitation Unix Linux
23/27
Chapitre : Introduction au système
d’exploitation Unix Linux
Chaque utilisateur est caractérisé par :
un nom ("login") et un numéro d'utilisateur ("UID")
un groupe et un numéro de groupe ("GID") (Un groupe
est un ensemble d ’utilisateurs partageant des ressourceset des privilèges)
un mot de passe ("passwd")
un type de shell (= intérpréteur de commandes)
un répertoire utilisateur qui lui appartient ("homedirectory")
(Rq : toutes ces informations sont stockées dans le fichier/etc/passwd)
-
8/19/2019 systeme d'exploitation Unix Linux
24/27
Chapitre : Introduction au système
d’exploitation Unix Linux
Mot de passe
le mot de passe est personnel : ne pas le divulguer
éviter les mots de passe triviaux (e.g. votre nom…) utiliser des lettres (majuscules et/ou minuscules) et des
chiffres (éventuellement des caractères spéciaux)
doit faire 8 lettres au minimum
-
8/19/2019 systeme d'exploitation Unix Linux
25/27
-
8/19/2019 systeme d'exploitation Unix Linux
26/27
Chapitre : Introduction au système
d’exploitation Unix Linux
Le rôle de l’administrateur
Créer, modifier ou supprimer un utilisateur
Gérer les fichiers et les disques
Surveiller l ’espace disque
Organiser les sauvegardes
Ajouter les périphériques
Améliorer les performances du système
Installer de nouveaux produits
Veiller à la sécurité du système
Paramétrer le démarrage et l ’arrêt dusystème
-
8/19/2019 systeme d'exploitation Unix Linux
27/27
Chapitre : Introduction au système
d’exploitation Unix Linux
Comment être super utilisateur (root)
Connexion en tant qu ’utilisateur root Login: root
password:******
#
Prise des droits de root $ su
password:******
# exit
$