Vous êtes sur la page 1sur 40

ISI

IN S T I TUT

SUPERIEUR
INFORMATIQUE
‫الـمعهـد العـالـي لإلعـالمــيـة‬

Support de Cours
Préparation à la certification Linux

Auditoire
M1 SSICE
Cours
Dr. Lobna HSAIRI ELAOUD
Dr. Olfa ARBI HAMDI

Année Universitaire : 2014-2015


Cours de Programmation
© L.HSAIRI Orientée Objet
& O.ARBI 0
Plan du Cours
Préparation à la certification LPIC-1
Partie 1 : LPI 101
Chapitre 1 : 101 : Architecture et matériel
Chapitre 2 : 102 : Installation de Linux et gestion des packages
Chapitre 3 : 103 : Les commandes GNU et Unix
Chapitre 4 : 104 : Périphériques, système de fichiers, arborescence.

Partie 2 : LPI 102


Chapitre 1 : 105 : Shell, scripts, programmation et compilation
Chapitre 2 : 106 : Environnements graphiques et de bureau
Chapitre 3 : 107 : Tâches administratives
Chapitre 4: 108 : Services essentiels du système
Chapitre 5: 109 : Les bases du réseau
Chapitre 6: 110 : La sécurité © L.HSAIRI & O.ARBI 1
Chapitre 1 :
Sujet 101. Architecture système

 101.1
Déterminer et configurer les paramètres du matériel
(Weight 2)

 101.2 Démarrage du système (Weight 3)

 101.3
Modification des niveaux d'exécution et arrêt ou
redémarrage du système (Weight 3)

2
© L.HSAIRI & O.ARBI
101.1 Déterminer et configurer les paramètres du matériel

 Description :
Les candidats doivent être capables de déterminer et de configurer le matériel et
les périphériques sous GNU/Linux.

 Termes, fichiers et utilitaires utilisés :


 /sys
 /proc
 /dev
 modprobe
 lsmod
 lspci
 lsusb
3
© L.HSAIRI & O.ARBI
Structure des répertoires

4
© L.HSAIRI & O.ARBI
Structure des répertoires
Répertoire Description
/bin Contient les commandes Unix essentielles et l'ensemble des applications
nécessaires au bon fonctionnement du système d'exploitation
/usr/bin Autres programmes, en général tous ceux que l'on utilise au quotidien (usr ne veut
pas dire user, voir plus bas)
/sbin Les commandes indispensables d'administration (à utiliser en tant que root)
/boot contient les fichiers nécessaires au démarrage ainsi que des fichiers de
configuration desboot loader comme grub ou lilo .
/dev contient des fichiers spéciaux appelés file device qui se référent aux périphériques
du système.
/etc Le répertoire qui contient les fichiers de configuration du système et notament
ceux nécessaire a l'affichage graphique tel que X11 et xorg.conf
/home Les répertoires personnels des utilisateurs c'est la que vous stocker vos
documents, ce repertoire peut être mit sur autre partition
/lib contient les librairies nécessaire à l’amorçage du sytème et à l’exécution de
commandes.

5
© L.HSAIRI & O.ARBI
Structure des répertoires
Répertoire Description
/mnt Le répertoire utilisé pour montrer les fichiers de périphériques, tels que le lecteurs
de CD/DVD, les lecteurs de disquettes, la mémoire RAM, clés USB, …
/opt C'est là qu'on installe certains paquetages des logiciels optionnels (par
exempleOpenOffice.org, Mozilla, …)
/proc donne des informations sur le système et le noyau ainsi que sur les processus
système en cours d'exécution
/sys permet à l’administrateur de l’ordinateur d’activer et de désactiver des fonctions du
noyau. Ce répertoire fournit également des informations sur le système.
/root Le répertoire personnel de l'administrateur du système (root)
/tmp Répertoire où sont stocké les fichiers temporaires
/usr Unix System Ressources: Le répertoire où l'on installe les logiciels, les sources du
noyau, les manuels de système, …
/srv Dans ce répertoire se trouvent les fichiers qui sont mis à disposition par différent
serveurs fonctionnant sur un système donné (par exemple: serveur www, ftp)
/var Ce répertoire contient entre autre le mail, les files d'attente des imprimantes et les
logs de linux
6
© L.HSAIRI & O.ARBI
Les partitions
 Pour installer un système Linux : créer une ouplusieurs partitions en
libérant de l'espace disponible pour installer le nouveau système
d'exploitation, permettant de conserver Windows ou non. Cette étape
est appelée le partitionnement.

 le disque dur est composé de partitions qui peuvent être des partitions
primaires ou des partitions étendues.

 Une partition étendue contient en réalité une ou plusieurs partitions


logiques.

7
© L.HSAIRI & O.ARBI
Les partitions

LE 1er secteur du disque contient :


 le MBR ( master boot record), celui ci est nécessaire au système pour démarrer.
 La table de partitions qui contient une cartographie des différentes partitions
(localisation, nombre, taille..).
 Un bootloader (lilo, grub pour Linux) qui permet au système de savoir sur quel
système d'exploitation démarrer 8
© L.HSAIRI & O.ARBI
les partitions
 Les disques IDE, ATA et PATA sont nommés /dev/hda /dev/hdb … tandis que
les disques SCSI, SAS, SSD, SATA et USB se nomment /dev/sda /dev/sdb

 un disque dur ne peut contenir au maximum que 4 partitions primaires. Cas


particulier : une des 4 partitions primaires d’un disque peut éventuellement
avoir le type étendue et donc contenir des partitions logiques.

 la numérotation des partitions logiques commencent obligatoirement à 5.

 il ne peut y avoir qu’une seule partition étendue par disque.

 La partition étendue peut contenir jusqu’à 60 partitions logiques

 Linux limite le nombre de partitions à 15 par disque SCSI : 3 partitions primaires


utilisables et 12 partitions logiques dans la partition étendue, et à 63 partitions
par disque IDE : 3 partitions primaires et 60 partitions logiques.

9
© L.HSAIRI & O.ARBI
les partitions

 Linux nomme un disque ide par


l'abréviation : hd

 Linux nomme un disque scsi ou


sata par l'abréviation : sd

 Le 1er disque dur physique porte la


lettre a Le second porte la lettre b et
ainsi de suite ( c, d , e , f etc…)

 Les partitions elles, sont nommées par


des chiffres : la 1ère porte le nombre
1 la seconde 2 etc

10
© L.HSAIRI & O.ARBI
les partitions

 Le premier secteur est le MBR, Master Boot Record, ou zone d’amorce.


D’une taille de 512 octets

 Il contient dans ses 444 premiers octets une routine (un programme)
d’amorçage destiné soit à démarrer le système d’exploitation sur la partition
active, soit un chargeur de démarrage (bootloader), puis 4 octets d’une
signature optionnelle (Windows), 2 octets nuls, et les 64 octets suivants
contiennent la table des quatre partitions primaires. Le tout finit par une
signature 0xAA55 sur deux octets.

11
© L.HSAIRI & O.ARBI
Commandes…..
 modprobe : commande qui permet de charger et décharger intelligemment un
module du Noyau Linux
 lsmod : commande qui affiche des informations sur les modules Imprimante
du noyau chargés en mémoire.
 lsusb : commande qui affiche les périphériques de type USB

Appareil
électronique
(caméra) de
la marque
Chicony

Multiplexeur
de USB

12
© L.HSAIRI & O.ARBI
Commandes…..
 lspci : commande qui affiche des informations très détaillées sur
les périphériques du bus PCI d'un ordinateur. Il est basé sur la bibliothèque
logicielle libpci.

(La première colonne montre l'emplacement du périphérique sur le bus PCI, la seconde
fournit le type, le constructeur et le modèle de périphérique.)

 Le Peripheral Component Interconnect (PCI) est un standard de bus local (interne)


permettant de connecter des cartes d'extension sur la carte mère d'un ordinateur.
 L'un des intérêts du bus PCI est que deux cartes PCI peuvent dialoguer entre elles sans
passer par le processeur.
13
© L.HSAIRI & O.ARBI
Fichiers…..
 /proc/ioports : fichier qui contient la liste des ports E/S
DMA (Direct Access Memory) :
contrôleur permettant le transfert
direct de données entre un
périphérique et la RAM sans
intervention du microprocesseur
rtc (real time clock) : horloge de
l’ordinateur alimentée par une
batterie

PIC : Un microcontrôleur PIC est


une unité de traitement et
d’exécution de l'information à
laquelle on a ajouté des
périphériques internes permettant de
réaliser des montages sans
nécessiter l’ajout de composants
annexes..
La première colonne indique la plage d'adresses de port d'E/S réservées au
périphérique spécifié dans la seconde colonne.
© L.HSAIRI & O.ARBI
14
Fichiers…..
 /proc/interrupts : fichier qui contient toutes les interruptions de tous les
périphériques

La première colonne fait référence au numéro de l'IRQ (requête d'interruption (IRQ, de


l'anglais « Interrupt Request ») ). Chaque unité centrale du système a sa propre colonne
et son propre nombre d'interruptions par IRQ. La colonne suivante indique le type
d'interruption et la dernière colonne© L.HSAIRI
contient le nom du périphérique situé à cette IRQ.
& O.ARBI
15
Fichiers…..
 /proc/dma : fichier qui contient la liste des canaux DMA (Direct Memory Acess)
en cours d’utilisation.

 $ cat /proc/dma
2: floppy
3: parport0
4: cascade

Les canaux DMA sont numérotés de 0 à 8. On peut voir dans le cas de l'exemple
que le canal 2 est réservé par le lecteur disquette et le canal 3 par le premier
port parallèle. Le canal 4 est particulié et est toujours réservé par "cascade".

16
© L.HSAIRI & O.ARBI
Fichiers…..
 /proc

Pseudo-système de fichiers d’informations sur le système :


– Partitions : /proc/partitions
– Processeur : /proc/cpuinfo
– Arguments passés au noyau Linux lors du boot: /proc/cmdline
– Les quantités de mémoires (physique et swap) libres et utilisées :
/proc/meminfo
– Informations sur la pile TCP/IP : /proc/net

USER
Noyau Space

/proc : c’est un pseudo Système de fichiers


17
© L.HSAIRI & O.ARBI
Fichiers…..
 Sysfs ou /sys

 Sysfs est un système de fichiers virtuel introduit par le noyau Linux 2.6.
 Sysfs permet d'exporter depuis l'espace noyau vers l'espace utilisateur des
informations sur les périphériques du système et leurs pilotes.
 /sys/class/ : montre les périphériques regroupés en classes,
 /sys/block/ : contient les périphériques de type bloc.
 /sys/bus/ : la manière dont chaque périphérique appartient aux différents bus.
 ...

18
© L.HSAIRI & O.ARBI
USB (Universal Serial Bus)
 Apparu en 1990,
 Conçu par un consortium réunissant différents constructeurs
 Objectif : Interconnecter en série de nombreux périphériques (caméras vidéo,
systèmes audio, modems haute vitesse, disques , imprimantes, ...).
 Le standard présent sur tous les PC.
 L'USB est plug and play
 Connexions / déconnexions à chaud.
 Peut alimenter la plupart des périphériques qui lui sont raccordés.

19
© L.HSAIRI & O.ARBI
USB : Contrôleurs
 UHCI : Universal Host Controller Interface
 OHCI : Open Host Controller Interface
 EHCI : Enhenced Host Controller Interface

20
© L.HSAIRI & O.ARBI
101.2 Démarrage du système

 Description : Les candidats doivent être capable de comprendre


les phases d'amorçage d'un système Linux.

 Termes, fichiers et utilitaires utilisés :


 var/log/messages
 dmesg
 BIOS
 bootloader
 kernel
 init

21
© L.HSAIRI & O.ARBI
101.2 Démarrage du système

22
© L.HSAIRI & O.ARBI
101.2 Démarrage du système

 Juste après avoir démarré, initialisé le matériel et monté la


partition racine en lecture seule, le noyau démarre le
processus /sbin/init.
 init est l'ancêtre de tous les autres processus du système
(cela est visible avec la commande pstree).
 Les programmes exécutés par init au démarrage sont
décrits dans le fichier /etc/inittab. Ils sont fonctions du
runlevel par défaut.
 Le fichier /etc/inittab décrit également les actions à
entreprendre lorsque certains évènements surgissent :
- perte de tension sur l'onduleur ;
- retour de tension sur l'onduleur ;
- séquence de touches « Ctrl-Alt-Del ».

23
© L.HSAIRI & O.ARBI
BIOS (Basic Input Output System)

 Interface logicielle entre le matériel et le logiciel à un niveau très basique.


 Il fournit l’ensemble des instructions de base utilisées par le système
d’exploitation.
 Il fournit le niveau d’interface le plus bas aux pilotes et périphériques.
 Présent sur une mémoire EEPROM (Electrical Erasable Programmable
Read Only Memory)
 Déclenche quand l’ordinateur est électriquement allumé, .
 Le BIOS lit et exécute le premier secteur physique du média de démarrage. Il
s’agit généralement des 512 premiers octets du premier disque dur (le MBR).

24
© L.HSAIRI & O.ARBI
Chargeur de démarrage

 Le BIOS active le MBR


 Le chargeur est décomposé en deux parties.
 Le chargeur initial : charge la seconde phase, basée sur un fichier de
configuration.
 La seconde phase fournit une interface pour lancer un système d’exploitation
parmi un choix donné.
 Passer des paramètres au noyau Linux et au processus init.

25
© L.HSAIRI & O.ARBI
GRUB : Grand Unified Bootloader

 Support de plusieurs systèmes de fichiers


 Support du démarrage depuis un réseau
 Mode menu et le mode ligne de commandes « un shell »
 Protéger l'accès à GRUB à l'aide d'un mot de passe crypté.
 Rôle :
 Charger le noyau en mémoire et l'exécute
 Charger le ramdisk initrd.img en mémoire

26
© L.HSAIRI & O.ARBI
/etc/grub.conf ou /boot/grub/menu.lst
timeout=10
default=0
title Red Hat
root (hd0,0)
kernel /vmlinuz-2.6.12-15 ro root=LABEL=/
initrd /initrd-2.6.12-15.img
title Windows XP
rootnoverify (hd0,1)
chainloader +1

27
© L.HSAIRI & O.ARBI
kernel

 /var/log/dmesg et dmesg : le tampon des messages du noyau


 Le matériel est détecté et initialisé.
 initrd est chargé, les modules présents éventuellement chargés.
 Le noyau monte le système de fichiers racine en lecture seule.
 Le premier processus est lancé : init.

28
© L.HSAIRI & O.ARBI
init

 init est le premier démarré et dernier stoppé au sein du système, PID 1


 init est le père de tous les autres processus qui seront créés par l'appel
system fork()
 init lit le fichier /etc/inittab pour savoir :
 quel est le fichier à exécuter pour continuer le chargement du système
 quel est le runlevel (niveau d'exécution) par défault
 comment lancer les services pour un runlevel donné

29
© L.HSAIRI & O.ARBI
Le premier script

 Après le chargement du noyau, le script correspondant à sysinit dans fichier


inittab est chargé :
 Sous Red Hat : si::sysinit:/etc/rc.d/rc.sysinit
 Sous Debian : si::sysinit:/etc/init.d/rcS
 Rôle :
 Configuration des paramètres du noyau présents dans /etc/sysctl.conf
 Mise en place des fichiers périphériques (/dev via udev ).
 Configuration de l’horloge du système.
 Chargement des tables de caractères du clavier.
 Activation des partitions d’échange SWAP.
 Définition du nom d’hôte.
 Contrôle et montage du système de fichiers racine (en lecture écriture
cette fois).
 Contrôle et montage des autres systèmes de fichiers.
30
© L.HSAIRI & O.ARBI
101.3 Modification des niveaux d'exécution et arrêt ou
redémarrage du système
 Description : Modification des niveaux d'exécution et arrêt ou
redémarrage du système

 Termes, fichiers et utilitaires utilisés :


 /etc/inittab
 shutdown
 init
 /etc/init.d
 telinit

31
© L.HSAIRI & O.ARBI
Niveaux d'exécution
 Un niveau d’exécution, ou runlevel, est un état dans lequel se trouve
Unix/Linux. Cet état est contrôlé par init.
(Le processus init est le père de tous les processus. Il a toujours le PID 1. Sa
configuration est présente dans le fichier /etc/inittab : C’est un fichier central du système
d’exploitation)
Le programme init n’est pas toujours le même d’une distribution à une autre. Sur la plupart
des distributions professionnelles et/ou majeures (Mandriva, Red Hat/Fedora, openSUSE,
Debian, etc.) le principe est globalement le même : init de type System V (basé sur la
notion de niveaux d’exécution).
 Chaque état dispose de sa propre configuration (soit par inittab, soit par
des scripts appelés initscripts).
 Un niveau d’exécution peut par exemple être utilisé pour lancer Unix en
mono-utilisateur, en multi-utilisateurs, avec ou sans réseau, avec ou
sans mode graphique.
 Tous les niveaux sont personnalisables par l’administrateur.
32
© L.HSAIRI & O.ARBI
Niveaux d'exécution
 Ces niveaux sont généralement définis par convention sur les distributions Red
Hat/Fedora, Mandriva, openSUSE et associées :

Le niveau d’exécution par défaut est positionné dans /etc/inittab sur la ligne initdefault.
id:5:initdefault: 33
© L.HSAIRI & O.ARBI
Niveaux d’exécution System V
Le script rc
 Le script /etc/init.d/rc prend comme paramètre le niveau d’exécution
par défaut selon la ligne initdefault de /etc/inittab ou celui spécifié lors
de l’appel manuel des commandes init ou telinit. Le script rc initialise le
niveau d’exécution voulu et est responsable du démarrage et de l’arrêt
des services associés quand le niveau d’exécution change.

 Les services sont analysés à chaque niveau d’exécution. Lors du


passage d’un niveau à un autre, et quel que soit l’ordre (du 2 au 5, du 5
au 3, etc.) le script rc compare les services qui doivent être arrêtés ou
démarrés entre l’ancien et le nouveau niveau. Si un service est commun
aux deux niveaux, il est maintenu. Si un nouveau service doit être lancé
dans le nouveau niveau, il le lance. Si un service doit être arrêté car il
est absent du nouveau niveau, il l’arrête.
34
© L.HSAIRI & O.ARBI
Services dans init.d

 Le niveau d’exécution définit les services à démarrer pour ce niveau.


C’est le script rc qui charge les services.

 Les services sont contrôlés (démarrage, arrêt, relance, status, etc.) à


l’aide de scripts présents dans /etc/init.d.
# cd /etc/init.d
# ls –l

35
© L.HSAIRI & O.ARBI
Services dans init.d

 Pour chaque niveau d’exécution n, il existe un répertoire rcn.d qui


contient des liens symboliques (raccourcis) vers les services présents
dans /etc/init.d à lancer ou arrêter. Ce répertoire peut être à différents
endroits selon la distribution :

 Red Hat : /etc/rc.d/rcn.d


 openSUSE : /etc/init.d/rcn.d
 Debian : /etc/rcn.d

36
© L.HSAIRI & O.ARBI
Services dans init.d

 Le préfixe du nom de chaque lien définit son ordre de lancement ou son


ordre d’arrêt. Le nom est sous la forme suivante :
[SK]nnservice
• S : start.
• K : kill (stop).
• nn : ordre numérique de démarrage ou d’arrêt. (00=premier,99=dernier).
• service : nom du service.

 Par exemple le lien S10network indique que le service network,


responsable de la mise en place du réseau, sera démarré en ordre 10,
après les S01, S05, etc. mais avant les S11, S15, S20, etc.

37
© L.HSAIRI & O.ARBI
runlevel, init, telinit

 runlevel :Afficher le niveau d'exécution précédent et actuel.


# runlevel
35
 Init ou telinit : Changer le niveau d'exécution
$ ls -l /sbin/telinit
lrwxrwxrwx 1 root root 4 jan 8 16:41 /sbin/telinit -> init
# init 3
# init 1

38
© L.HSAIRI & O.ARBI
Arrêt
 shutdown.

39
© L.HSAIRI & O.ARBI

Vous aimerez peut-être aussi