Vous êtes sur la page 1sur 30

Système d’exploitation

Linux
Introduction

❖Définition d’un système


d’exploitation
➢ un système d'exploitation
(souvent appelé OS =
Operating System) est un
ensemble de programmes
qui dirige l'utilisation des
ressources d'un ordinateur
par des logiciels applicatifs
Introduction

❖Fonctions d’un système d’exploitation


➢ Gestion des processus
➢ Gestion de la mémoire
➢ Gestion des entrées sorties
➢ Gestion des périphériques
➢ Gestion des fichiers
➢…
Des Systèmes d’exploitation avant Linux

CP/M (depuis 1974), Digital Research


UNIX (depuis 1969), par AT&T
MS-DOS (depuis 1981), Microsoft
Minix (depuis 1983), Pr Andy Tannenbaum
MacOS (depuis 1984), Apple
Windows (depuis 1991), Microsoft
Qu’est ce que Linux
 Linux est un système d’exploitation
 Linux est un clone d’Unix, écris en 1991 à partir de rien par Linus
Torvalds assisté par une équipe à travers internet
 Linux est :
 Libre (open source)
 multi-tâches
 multi-utilisateurs
 multi-postes
 La majorité des serveurs du monde utilisent une variante d’Unix ou
de Linux.
 Les téléphones Android et Kindle tournent aussi sous Linux
Brève historique de Linux

 En 1985 Fondation du logiciel libre (FSF) fondée par Richard Stallman. En


collaboration avec d’autres programmeurs, crée les outils nécessaires
pour créer un système d’exploitation compatible UNIX.
 1985 Le professeur Andy Tannenbaum crée le système d'exploitation
appelé Minix de type UNIX basé sur System V Unix pour les ordinateurs
IBM PC & PC / AT.
 1989 Richard Stallman publie les logiciels GPL et GNU mais ne dispose
pas d'un noyau libre.
 1991 S'appuyant sur les concepts de Minix, Linus Torvalds (étudiant
finlandais) développe Linux avec l'aide d'autres utilisateurs sur le Web.
Qu’est ce que Linux

Système
d’exploitation
GNU / LINUX

 Linux est un  Les utilitaires GNU:


noyau O / S écrit un ensemble de
par Linus Torvalds petits programmes
et d’autres écrits par Richard
Stallman et
d’autres.
Architecture GNU/Linux
Les distributions Linux
 Une distribution Linux est un ensemble cohérent de logiciels rassemblant
un système d'exploitation composé d'un noyau Linux et d'applications, la
plupart étant des logiciels libres
Structure du système GNU/Linux
Ouverture/Fermeture d’une session utilisateur

 Travailler sous Linux implique une connexion au système:


 Soit en interface graphique
 Soit en ligne de commande
 Login:
 Identification de l’utilisateur: login + mot-de-passe
 droits accordés par le super-utilisateur (root)
 Logout:
 NE PAS ETEINDRE une machine “brusquement”
 Bouton « logout » ou « éteindre » en interface graphique
 commande “logout” dans la console
Ouverture/Fermeture d’une session utilisateur
Ouverture/Fermeture d’une session utilisateur
Initiation au Shell
 Une fois connecté, le système nous connaît,
ouvre une session à notre nom et attend nos instructions via un
programme spécial:
 Le Shell = interpréteur de commandes
 interface utilisateur “de base” (interlocuteur avec le syst.)
 interprétation ligne à ligne
 plusieurs shells: sh, csh, tcsh, bash, ksh, zsh, ...
 configurable: fichiers d’environnement (commençant par un “.”)
 “.login”
 “.logout”
 “.bashrc”
 langage de programmation

 shell par défaut : bash


Initiation au Shell

Format des commandes:

cde [-option(s)] [argument(s)]


Initiation au Shell
 Exemples:
 date
 whoami
affiche le nom de l’utilisateur connecté
 echo
affiche un message (echo "bonjour !")
 ls
liste le contenu
d’un répertoire
 man <cde>
manuel en ligne
Le système de fichier
Arborescence d'un système linux
 Linux stocke les données:
 de façon hiérarchique
 structure arborescente
 TOUT est fichier
Le système de fichier
Arborescence d'un systeme linux
 /bin Fichiers exécutables nécessaires à l’initialisation
 /boot Noyau et fichiers nécessaires au démarrage
 /dev Fichiers spéciaux décrivant les périphériques du
système
 /etc Fichiers de configuration du système
 /home Répertoires personnels des utilisateurs
 /lib Librairies système et modules
 /mnt Points de montage des systèmes de fichiers non
permanents (CD-ROM, disquettes... )
Le système de fichier
Arborescence d'un systeme linux

 /proc Système de fichiers virtuel décrivant le fonctionnement


du système (uti-lisation des ressources, état des processus... )
 /root Répertoire personnel de l’administrateur du système
(super utilisateur)
 /sbin Fichiers exécutables réservés à l’administration du
système
 /tmp Fichiers temporaires
 /usr Programmes, librairies et fichiers accessibles en lecture
seule
 /var Données variables liées à la machine (spool, traces... )
Le système de fichier
Les types de fichier
 Les fichiers normaux (ordinaires): ce sont des collections
d’octets.
 Les répertoires: ce sont des fichiers contenant les noms des
fichiers et leurs numéros d’inode. Un répertoire contient
toujours deux sous répertoires spéciaux ’.’ et ’..’ qui
correspondent respectivement au répertoire courant et au
répertoire père
 Les fichiers spéciaux en mode caractère: ce sont les portes
vers les périphériques fournissant ou consommant les
données octet par octet (ex: lecteur de bande). L’accès à
un périphérique en mode caractère ne peut se faire que
séquentiellement.
Le système de fichier
Les types de fichier
 Les fichiers spéciaux en mode bloc: ce sont les portes sur
les périphériques fonctionnant par blocs de données (ex :
disques). L ’accès à un périphérique en mode bloc peut se
faire aléatoirement
 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. Un lien symbolique “pointe” vers un
autre fichier, appelé fichier cible.
 Les tubes nommés "FIFO": permettent à deux processus
sans relation de parenté de s’échanger des données
comme par un tube. L ’écriture et la lecture dans un tube
sont nécessairement séquentielles.
Le système de fichier
Les commandes de manipulation de fichier

 Visualiser le contenu d'un fichier écran par écran


 more nom_fichier
 Visualiser le contenu d'un fichier intégralement
 cat nom_fichier
 Créer un fichier
 touch nom_fichier
 cat > nom_fichier
 Copier un fichier
 cp fichier destination
 Supprimer un fichier
 rm nom_fichier
 renommer un fichier
 mv ancien_nom nouveau_nom
 Déplacer un fichier
 mv fichier1 [fichir2] destination
Le système de fichier
Les commandes de manipulation de répertoire
 Lister le contenu d'un répertoire
 ls
 Créer un répertoire
 mkdir nom_repertoire
 Supprimer un répertoire vide
 rmdir nom_repertoire
 Supprimer un répertoire et tout son contenu
 rm –R repertoire
 Renommer un répertoire
 mv ancien_nom nouveau_nom
 Copier un répertoire et son contenu de façon récursive
 cp -R nom_repertoire destination
 Déplacer un répertoire ou plusieurs
 mv rep1 [rep2 rep3 ...] destination
Le système de fichier
Les droits d’accès
 L’accès aux fichiers est réglementé (sauf: tous les droits
pour root)
 3 types d’utilisateurs:
 propriétaire (user)
 personnes du mm groupe (group)
 les autres (others)
 3 types de permissions
Lecture = Read (R) afficher le contenu afficher le contenu
Ecriture = Write (W) modifier créer/supp fichiers
Exécution = eXecution (X) exécuter traverser

fichier répertoire
Le système de fichier
Les propriétés d’un fichier
 Affichage des caractéristiques: ls -l
groupe

-rw-r--r-- 1 dupont staff 58K 16 Jul 09:19 tp1.tex


nb liens propriétaire taille date nom

group
type

-rw-r--r--
user
others
Le système de fichier
Les propriétés d’un fichier: commentaire sur le type

 Le type du fichier est donné par le premier caractère du


résultat de la commande ls -l
 Ainsi on a:
 ‘-‘ pour un fichier normal
 ‘d’ pour un répertoire
 ‘l’ pour lien
 ‘p’ pour un FIFO
 ‘b’ pour un fichier spécial en mode bloc
 ‘c’ pour un fichier spécial en mode caractère
 's' pour un socket
Le système de fichier
Manipulation des droits d’accès
 Changer les permissions: chmod
chmod <classe op perm, …>|nnn <fic>

 classes:
chaque permission = 1 valeur:
u : user
g : group r 4
o : others w 2
a : all x 1
 opérateurs: rien 0
= : affectation
- : suppr. définition des permissions (par
+ : ajout
addition) pour chaque classe
 permissions:
r : lecture
exemples:
w : écriture chmod u=rwx,g=rx,o=r tp1.tex
x : exécution chmod a+x script.sh
chmod 755 script.sh
Les méta caractères
 Caractères spéciaux:

! ^ * ? [] \ ; & < > | >>

 L'astérisque ou étoile: *
 interprété comme toute suite de caractères alphanumériques
 utiliser avec précaution (commande rm par ex...)

 Le point d’interrogation: ?
 remplace 1 seul caractère alphanumérique
Les méta caractères
 Le point-virgule: ;
 Séparateur de commandes
 Les crochets: []
 Remplace un caractère choisi parmi ceux énumérés entre les crochets
 L’anti-slash: \
 Inhibe la signification du méta-caractère qui suit

 Interprétation des chaînes de caractères


 Texte entre '' (simples quotes): le texte n’est pas interprété mais considéré
comme un mot
 Texte entre "" (doubles quotes): seuls sont interprétés les métacaractères $, \
et `
 Texte entre `` (anti quotes): considéré comme une commande à interpréter,
et c’est le résultat qui sera utilisé.
Les méta caractères
 Exemples:
 echo *
Tous les fichiers sauf ceux dont le nom commence par un point
 echo *c
Tous les fichiers dont le nom se termine par un ‘c’
 echo .*
Tous les fichiers dont le nom commence par un point
 echo [0-9]*
Tous les fichiers dont le nom commence par un chiffre

Vous aimerez peut-être aussi