0% ont trouvé ce document utile (0 vote)
5 vues101 pages

Introduction To Linux Operating System

Le document présente un module sur les systèmes d'exploitation embarqués, en se concentrant sur Linux. Il couvre la structure générale des systèmes d'exploitation, la configuration et l'embarquement du noyau Linux, ainsi que le développement d'applications pour systèmes embarqués. Le cours inclut également des travaux pratiques utilisant des microcontrôleurs comme RPi 4 et ESP32.

Transféré par

oumayma.nioua
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)
5 vues101 pages

Introduction To Linux Operating System

Le document présente un module sur les systèmes d'exploitation embarqués, en se concentrant sur Linux. Il couvre la structure générale des systèmes d'exploitation, la configuration et l'embarquement du noyau Linux, ainsi que le développement d'applications pour systèmes embarqués. Le cours inclut également des travaux pratiques utilisant des microcontrôleurs comme RPi 4 et ESP32.

Transféré par

oumayma.nioua
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

ON BOARD COMPUTING AND AUTOMOTIVE MECHATRONICS ENGINEERING

UNIVERSITY SEASON 2022-2023

INTELLIGENT AND CYBER-SECURITY BASED


ON-BOARD COMPUTING
ENSA KENITRA

Pr ABDERRAHIM BAJIT

INTRODUCTION TO EMBEDDED OPERATING SYSTEM

AGENDA
 INTRODUCTION
 I. STRUCTURE GÉNÉRALE DES SYSTÈMES
D’EXPLOITATION (ETUDE DE CAS LINUX) ;
 II. CONFIGURATION DU NOYAU LINUX;
 III. EMBARQUEMENT DU NOYAU LINUX;
 IV. DÉVELOPPEMENT D’APPLICATIONS POUR
SYSTÈMES EMBARQUÉS;
 CONCLUSION
Pr. Abderrahim BAJIT
Associate Professor Researcher in Automotive and Avionic Embedded Systems
Professor of Intelligent Sensor Networks, Embedded Computing and embeded IoT.
Department of Electrical –GESE- & Automotive Mechatronics Engineering –GMA-
National School of Applied Sciences ENSA, Ibn Tofail University UIT, Kénitra Morocco.
Pr. ABDERRAHIM BAJIT 1 INTRODUCTIONTOLINUXOPERATINGSYSTEM
ON BOARD COMPUTING AND AUTOMOTIVE MECHATRONICS ENGINEERING
UNIVERSITY SEASON 2022-2023

Pr. Abderrahim BAJIT


Associate Professor Researcher in Automotive and Avionic Embedded Systems
Professor of Intelligent Sensor Networks, Embedded Computing and embeded IoT.
Department of Electrical –GESE- & Automotive Mechatronics Engineering –GMA-
National School of Applied Sciences ENSA, Ibn Tofail University UIT, Kénitra Morocco.

INTRODUCTION TO EMBEDDED OPERATING SYSTEMS

PRESENTATION DU MODULE
 ELEMENT 1. EMBARQUEMENT D’UN SYSTÈME D’EXPLOITATION
 Structure générale des systèmes d’exploitation (Etude de cas Linux) ;
 Mise en place et Manipulation d'un système Linux embarqué;
 Travaux pratiques (Réalisation de trois 3 plateformes pratiques en INFORMATIQUE
EMBARQUÉE développés en langages Python et C sur les micro contrôleurs basés
OS de type RPi 4 et non basés OS de type ESP32).

 ELEMENT 2. INFORMATIQUE, INTELLIGENCE & SÉCURITÉ EMBARQUÉES


 Informatique, Intelligence & Sécurité Embarquées;
 Développement d’applications pour systèmes embarqués;
 Travaux pratiques (Réalisation de trois 3 plateformes pratiques en INFORMATIQUE
EMBARQUÉE INTELLIGENTE ET SÉCURISÉE développés en langages Python et C sur
les micro contrôleurs basés OS de type RPi 4 et non basés OS de type ESP32).

Pr. ABDERRAHIM BAJIT 3 INTRODUCTIONTOLINUXOPERATINGSYSTEM


AGENDA
INTRODUCTION -LINUX SYSTEM- Introduction

I. Démarrage du système: BOOTING THE SYSTEM


Le processus de démarrage du système Linux
1. DÉMARRAGE DU SYSTÈME BOOTING THE SYSTEM Fichier de configuration du Boot Linux;
Niveaux d’Exécution RL; & Services de contrôles rcS, rc des RL.

II. Noyau Linux et ses Modules chargeables


2. NOYAU ET MODULES KERNEL Composantes statique/Dynamique du Noyau Linux
Emplacement des composantes Statiques/Dynamiques;
Gestion des Modules du Noyau

3. CONFIGURATION DU HARDWARE HW III. Configuration du Matériel HW


Configuration du Hardware
Hardware de type USB
Hardware de type PCI

IV. Configuration du Matériel HW


4. GESTION DES SUPPORTS DE STOCKAGE LVM Configuration du Hardware
Hardware de type USB/PCI

IV. Gestion de Software SW


5. GESTION DE SOFTWARE SW Types de Software: Source, Exécutables,
Installation de Software Sources/Exécutables

IV. Configuration Réseau –NETWORKING-


6. CONFIGURATION RÉSEAU NETWORKING Interface Statique/Dynamique;
Configuration du Serveur et du Client DHCP

Conclusion
CONCLUSION
Pr. ABDERRAHIM BAJIT 2 INTRODUCTIONTOLINUXOPERATINGSYSTEM
ON BOARD COMPUTING AND AUTOMOTIVE MECHATRONICS ENGINEERING
UNIVERSITY SEASON 2022-2023

Pr. Abderrahim BAJIT


Associate Professor Researcher in Automotive and Avionic Embedded Systems
Professor of Intelligent Sensor Networks, Embedded Computing and embeded IoT.
Department of Electrical –GESE- & Automotive Mechatronics Engineering –GMA-
National School of Applied Sciences ENSA, Ibn Tofail University UIT, Kénitra Morocco.

INTRODUCTION TO EMBEDDED OPERATING SYSTEMS


ELEMENT 1. EMBARQUEMENT D’UN SYSTÈME D’EXPLOITATION
 COURS 1-1. STRUCTURE GENERALE DU SYSTEME D’EXPLOITATION LINUX
 Introduction -LINUX SYSTEM-;
 TP-1.1.1. Démarrage du système -SYSTEM BOOT;
 TP-1.1.2. Noyau et Modules -KERNEL;
 TP-1.1.3. Configuration du Hardware -HW;
 TP-1.1.4. Gestion des supports de Stockage -LVM;
 TP-1.1.5. Gestion de Software -SW;
 TP-1.1.6. Configuration Réseau -NETWORKING;
 Conclusion.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

INTRODUCTION DU SYSTÈME D’EXPLOITATION LINUX


 Linux a été lancé pour la première fois dans un monde sans méfiance au cours de l'été 1991 par l’informaticien
finlandais Linus Torvalds;

 A l’origine, Linux était accessible sous forme de code source à ceux qui possédaient l'expertise nécessaire pour le
construire et l'installer;

 La plupart des utilisateurs de Linux étaient des développeurs par nécessité et ont exploité la croissance de l'internet
au début des années 1990 comme moyen de créer des communautés en ligne et de faire avancer le développement;

 Ces communautés ont contribué à la création des premières distributions de logiciels Linux, contenant tous les
composants logiciels nécessaires à l'installation et à l'utilisation d'un système Linux sans que les utilisateurs aient
besoin d'être des experts techniques.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

INTRODUCTION DU SYSTÈME D’EXPLOITATION LINUX


 Au cours de la décennie suivante, Linux est devenu le système d'exploitation de type Unix tel qu'aujourd'hui. Linux
équipe désormais une gamme quasi infinie d'appareils différents (Calculateur, Routeur, Récepteurs de télévision
numérique, téléphones portables, Cinéma, Sites Web de renom tels que Google.

 Linux doit une grande partie de son succès au travail des projets qui l'ont précédé de Richard Stallman et de la Free
Software Foundation (FSF). au cours de la décennie qui a précédé l'arrivée de Linux sur la scène, bon nombre des
outils nécessaires à la construction et à l'utilisation d'un système Linux n'existeraient pas.

 La FSF a produit le compilateur GNU C (GCC) et de nombreux autres outils et utilitaires nécessaires pour construire
vos propres systèmes Linux embarqués à partir de zéro, ou du moins à partir de collections préconstruites de ces
outils qui sont fournis par des vendeurs tiers.

 Les logiciels maintenus par la Free Software Foundation constituent une collection connue sous le nom de GNU, pour
"GNU's Not UNIX". Ce nom provient de l'objectif déclaré de la FSF de produire un système libre de type Unix.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

INTRODUCTION DU SYSTÈME D’EXPLOITATION LINUX


 Les systèmes embarqués fonctionnant sous Linux sont au cœur de ce module, ces systèmes sont encore plus
omniprésents que leurs homologues des stations de travail et des serveurs, principalement en raison du volume
considérable d'appareils et de gadgets grand public dont le fonctionnement repose sur Linux.

 L'espace embarqué ne cesse de croître avec le temps. Il comprend des exemples évidents, tels que les téléphones
cellulaires, appareils de divertissement numérique à domicile, les guichets automatiques bancaires, les imprimantes,
les voitures, les feux de signalisation, les équipements médicaux, les équipements de diagnostic technique, et bien
d'autres encore. En fait, tout ce qui est équipé d'un microprocesseur et qui n'est pas considéré comme un
"ordinateur", mais qui remplit une fonction informatique, est une forme de système embarqué.

 A partir de ce support de cours, vous allez avoir une idée de base de la raison pour laquelle on voudrait faire
fonctionner un système embarqué avec Linux. Que ce soit en raison de sa flexibilité, de sa robustesse, de son prix, de
la communauté qui le développe ou du grand nombre de fournisseurs qui le supportent, il existe de nombreuses
raisons de choisir de construire un système embarqué avec Linux et de nombreuses façons de mener à bien cette
tâche.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

DEFINITION DU SYSTÈME D’EXPLOITATION LINUX


Les termes "Linux", "Linux embarqué" et "Linux en temps réel" sont souvent utilisés sans grande référence à ce qui est
réellement désigné par cette terminologie.

Parfois, les désignations peuvent signifier quelque chose de très précis, alors que d'autres fois, il s'agit d'une large
gamme ou d'une catégorie d'applications.

Dans cette section on va apprendre l'utilisation de ces termes peut signifier dans une variété de situations différentes, en
commençant par les nombreuses significations de "Linux".

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

QU’EST QU’UN SYSTÈME D’EXPLOITATION LINUX


 Linux désigne uniquement un noyau de système d'exploitation écrit à l'origine par Linus Torvalds. Le noyau Linux
fournit toute une série d'installations de base nécessaires au bon fonctionnement de tout système basé sur Linux.

 Les logiciels d'application s'appuient sur des caractéristiques spécifiques du noyau Linux, telles que sa gestion des
périphériques matériels et sa fourniture d'une variété d'abstractions fondamentales, telles que la gestion de la
mémoire, des processus, du CPU, des fichiers, etc. Le noyau Linux est généralement démarré par un chargeur de
démarrage, mais une fois qu'il fonctionne, il n'est jamais arrêté.

 Actuellement, le terme "Linux" est souvent utilisé de manière interchangeable en référence au noyau Linux lui-
même, à un système Linux ou à une distribution logicielle complète préconstruite (ou source) basée sur le noyau
Linux et les logiciels associés.

 Par exemple, si on dit "Linux fournit un réseau TCP/IP", on parle de l'implémentation de la pile TCP/IP dans le
noyau Linux lui-même, ou des utilitaires TCP/IP fournis par une distribution Linux utilisant le noyau Linux, ou de
tous ces éléments ? Linux, ou tout cela à la fois ?

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

QU’EST QU’UN SYSTÈME D’EXPLOITATION LINUX


 La généralisation de l'utilisation du terme a conduit à une plus grande distinction entre les utilisations du terme
"Linux". Par exemple, Richard Stallman et la Free Software Foundation préfixent souvent "GNU/" (comme dans
"GNU/Linux") afin de faire référence à un système complet utilisant un noyau Linux et une grande variété de logiciels
GNU. Il est théoriquement possible de construire un système complet basé sur Linux sans logiciel GNU, et la plupart
des systèmes Linux pratiques utilisent une variété de logiciels GNU et non-GNU. Malgré la confusion, la tendance est
à la généralisation du terme en tant que référence à un système ou à une distribution complète, exécutant à la fois
des logiciels GNU et non GNU sur un noyau Linux. Souvent le terme Linux s’agit du système complet, et non du noyau.

 Un système Linux peut être construit sur mesure ou être basé sur une distribution déjà disponible. Malgré
l'augmentation de la disponibilité des distributions Linux destinées à l'utilisation embarquée dans les appareils Linux
embarqués le développement d’applications embarquées peut très bien sur un son propre construit à partir de zéro.

 À l'inverse, lorsqu'un utilise Linux version Desktop, cela signifie qu’on a installé l'une des différentes distributions,
telles que Red Hat Enterprise Linux (RHEL), SuSE Linux Enterprise Server (SLES), Ubuntu Linux ou Debian GNU/Linux.
Le système Linux de l'utilisateur final est tout autant un système Linux, mais hormis le noyau, leurs systèmes ont des
objectifs différents, construits à partir de progiciels différents et exécute des applications différentes.
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM
COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

QU’EST QU’UN SYSTÈME D’EXPLOITATION LINUX


 Le terme Linux fait généralement référence à une distribution Linux qui varie en termes d'objectif, de taille et de prix,
mais l’objectif est commun: fournir à l'utilisateur un ensemble de fichiers et une procédure d'installation pour que
le noyau et divers logiciels soient installés sur un certain type de matériel pour un certain but.

 Dans l'espace embarqué, une variété de distributions Linux embarquées sont disponibles, telles que celles de
MontaVista, Wind River, Timesys, Denx, … Ces distributions Linux embarquées spécialisées ne sont généralement
pas destinées à une utilisation générique de bureau, de station de travail ou de serveur comme leurs homologues
"grand public". Elles n'incluent généralement pas les fonctionnalités indésirables à une utilisation embarquée.

 Ainsi, au lieu de parler du "noyau Linux", du "système Linux" et de la "distribution Linux", nous nous référerons
uniquement au "noyau", au "système" et à la "distribution", respectivement. Dans chacune de ces circonstances, le
terme "Linux" est sous-entendu. Nous utiliserons le terme "Linux", le cas échéant, pour désigner le large éventail de
logiciels et de ressources entourant le noyau.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

QU'EST-CE QUE LINUX EMBARQUÉ ?


 Linux embarqué fait généralement référence à un système complet ou à une distribution destinée aux appareils
embarqués pour des applications embarquées.

 Le même code source du noyau Linux est destiné à être construit pour la gamme la plus large possible d'appareils, de
stations de travail et de serveurs, bien qu'il soit évidemment possible de configurer une variété de caractéristiques
optionnelles en fonction de l'utilisation prévue du noyau.

 Par exemple, il est peu probable que votre appareil embarqué dispose de 128 processeurs et de terra bytes de
mémoire, et il est donc possible de configurer la prise en charge de certaines fonctions que l'on ne trouve
généralement que sur des systèmes Linux plus importants. Le chapitre 5 couvre le noyau de manière beaucoup plus
détaillée, y compris l'endroit où obtenir le code source, les préoccupations liées à l'embarqué et la manière de le
construire soi-même.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

QU'EST-CE QUE LINUX EMBARQUÉ ?


 En informatique embarquée, on rencontre généralement des systèmes Linux embarqués - des appareils qui utilisent
le noyau Linux et une variété d'autres logiciels - et des distributions Linux embarquées - un ensemble pré packagé
d'applications adaptées aux systèmes embarqués et d'outils de développement pour construire un système complet.

 C'est pour ces derniers que vous payez lorsque vous vous adressez à un fournisseur de Linux embarqué. Ils
fournissent des outils de développement tels que des compilateurs croisés, des débogueurs, des logiciels de gestion
de projet, des créateurs d'images de démarrage, etc.

 Un nombre croissant de fournisseurs ont choisi d'intégrer une grande partie de ces fonctionnalités dans des modules
d'extension personnalisés pour leurs propres versions de l'IDE graphique Eclipse, développé par la communauté;

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

QU'EST-CE QUE LINUX EMBARQUÉ ?


 L'utilisation d'un fournisseur dépend entièrement de l’utilisateur. En fait, une grande partie de ce module vise à
montrer les moyens de créer nos propres outils et des distributions Linux sur mesure. Cela aide à la fois ceux qui
veulent utiliser les outils fournis par les fournisseurs et ceux qui ne le veulent pas. Si vous souhaitez faire cavalier seul,
vous pouvez choisir d'acheter un fournisseur de Linux embarqué afin de réduire le délai de mise sur le marché de
votre produit (et d'avoir quelqu'un sur qui crier si les choses ne se déroulent pas comme prévu).

 Ce document traite exclusivement des systèmes Linux embarqués dont le système Linux est le système hôte utilisé
pour développer le système Linux embarqué en tant que "système hôte", ou "hôte" en abrégé. La cible, qui sera le
système Linux embarqué, sera appelée "système cible" ou "cible". Les distributions fournissant des cadres de
développement seront appelées "distributions de développement" ou quelque chose de similaire.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

QU'EST-CE QUE LINUX TEMPS RÉEL (REAL-TIME LINUX) ?


 Au départ, "Real-Time Linux" désignait uniquement le projet RTLinux lancé en 1996 par Michael Barabanov sous la
supervision de Victor Yodaiken. L'objectif initial du projet était de fournir un mécanisme permettant d'obtenir des
temps de réponse déterministes dans un environnement Linux. Par la suite, le projet a été élargi pour prendre en
charge bien plus que les applications initialement prévues, et il prend aujourd'hui en charge une variété d'utilisations
non intégrées, telles que les systèmes de négociation en temps réel des marchés boursiers et d'autres applications
"d'entreprise". RTLinux a été vendu à Wind River au début de l'année 2007.

 Aujourd'hui, il existe plusieurs autres grands projets en temps réel pour Linux, dont un qui vise à ajouter le support en
temps réel au noyau Linux officiel. Vous en apprendrez beaucoup plus sur ces projets dans les derniers chapitres de
ce livre (à partir du chapitre 12), y compris sur certains des concepts innovants et des idées de développement sur
lesquels on travaille. Bien entendu, lorsque vous lirez ce livre, une grande partie de cette technologie sera peut-être
encore plus courante qu'elle ne l'est aujourd'hui, en particulier lorsque les capacités en temps réel seront disponibles
dans tous les systèmes Linux installés d'ici à Tombouctou.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

LA VIE RÉELLE ET LES SYSTÈMES LINUX EMBARQUÉS


 Quels types de systèmes embarqués sont construits avec Linux ? Pourquoi les gens choisissent-ils Linux ? Quels sont
les problèmes spécifiques à l'utilisation de Linux dans les systèmes embarqués ? Combien de personnes utilisent
réellement Linux dans leurs systèmes embarqués ? Comment l'utilisent-ils ? Toutes ces questions et bien d'autres
viennent à l'esprit lorsqu'on réfléchit à l'utilisation de Linux dans un système embarqué. Trouver des réponses
satisfaisantes aux questions fondamentales est une partie importante de la construction du système. Il ne s'agit pas
d'une simple déclaration générale. Ces réponses vous aideront à convaincre la direction, à commercialiser votre
produit et, surtout, à évaluer si vos attentes initiales ont été satisfaites.
 SIZE;
 TIME CONSTRAINTS;
 NETWORKABILITY;
 USER INTERACTION.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

LA VIE RÉELLE ET LES SYSTÈMES LINUX EMBARQUÉS: SIZE


 La taille d'un système Linux embarqué est déterminée par un certain nombre de facteurs différents tels que la taille
physique qui peut être assez grande ou assez petite (Montres-bracelets Linux/IBM). La taille physique d'un système
embarqué est un élément important pour les développeurs Linux embarqués pour déterminer ses capacités
matérielles et la taille de ses composants (la vitesse du processeur, la taille de RAM et de stockage permanent).
 En termes de taille, nous utiliserons trois grandes catégories de systèmes : petits, moyens et grands:
• Les petits systèmes sont caractérisés par un processeur de faible puissance avec un minimum de 4 Mo de ROM
(NOR/NAND Flash VS ROM) et entre 8 et 16 Mo de RAM.
• Les moyens systèmes sont caractérisés par un processeur de puissance moyenne avec +32 Mo de ROM (NORflash
/NAND Flash) et 64-128 Mo de RAM. La plupart des appareils construits avec Linux appartiennent à cette catégorie, y
compris divers PDA (tablettes, …), des lecteurs MP3, des systèmes de divertissement et des appareils réseau.
• Les grands systèmes se caractérisent par une ou plusieurs unités centrales puissantes combinées à de grandes
quantités de mémoire vive et de stockage permanent. Ces systèmes sont généralement utilisés dans des
environnements qui requièrent de grandes quantités de calculs (Les grands commutateurs de télécommunications et
les simulateurs de vol, les systèmes de recherche gouvernementaux, les projets de défense et … En règle générale, ces
systèmes ne sont pas limités par les coûts ou les ressources. Leurs exigences de conception sont principalement basées
sur la fonctionnalité, tandis que le coût, la taille et la complexité restent des questions secondaires.
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM
COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

LA VIE RÉELLE ET LES SYSTÈMES LINUX EMBARQUÉS: CONTRAINTES TEMPORELLES


 Il existe deux types de contraintes temporelles pour les systèmes embarqués : les contraintes strictes et les
contraintes légères:
• Les contraintes temporelles strictes exigent que le système réagisse dans un délai prédéfini, faute de quoi des
événements catastrophiques se produisent (Exemple d’industrie intelligente). Il s'agit d'un système à temps réel dur.
S'il ne répond pas ça va engendrer un grand risque.
• Les contraintes temporelles légères varient considérablement en termes d'exigences, mais elles s'appliquent
généralement à des systèmes pour lesquels une réponse rapide n'est pas nécessairement essentielle. Si un guichet
automatique prend 10 secondes de plus pour effectuer une transaction, ce n'est généralement pas un problème. Le
temps supplémentaire peut donner l'impression que le système est lent, mais il n'affectera pas le résultat final.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

LA VIE RÉELLE ET LES SYSTÈMES LINUX EMBARQUÉS: CAPACITÉ DE MISE EN RÉSEAU


 La capacité de mise en réseau définit si un système peut être connecté à un réseau. De nos jours, on peut s'attendre
à ce que tout soit accessible via le réseau, même le réfrigérateur, le grille-pain et la machine à café (en effet, un
nombre inquiétant de machines à café peuvent désormais télécharger de nouvelles recettes de café en ligne). Cela
impose des exigences particulières aux systèmes construits.

 L'un des facteurs qui poussent les gens à choisir Linux comme système d'exploitation embarqué est sa capacité
éprouvée de mise en réseau. La baisse des prix et la normalisation des composants de réseau accélèrent cette
tendance. La plupart des appareils Linux disposent d'une forme ou d'une autre de capacité réseau, qu'elle soit câblée
ou sans fil. Les tablettes Internet Nokia N770, N800 et N810 sont d'excellents exemples d'appareils Linux intégrés,
dotés d'un réseau sans fil 802.11g et bien plus encore, tandis que le projet One Laptop Per Child (OLPC) utilise Linux
et construit des réseaux maillés WiFi auto-assemblés et autogérés utilisant 802.11n à la volée.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

LA VIE RÉELLE ET LES SYSTÈMES LINUX EMBARQUÉS: INTERACTION AVEC L'UTILISATEUR


 Le degré d'interaction avec l'utilisateur varie considérablement d'un système à l'autre. Certains systèmes, tels que les
PDA et les tablettes Internet Nokia mentionnées plus haut, sont centrés sur l'interaction avec l'utilisateur, tandis que
d'autres, tels que les systèmes de contrôle des processus industriels, peuvent n'avoir que des DEL et des boutons
pour l'interaction (ou peut-être même aucune E/S apparente de quelque sorte que ce soit). D'autres systèmes n'ont
aucune interface utilisateur. Par exemple, certains composants d'un système de pilotage automatique dans un avion
moderne peuvent prendre en charge le contrôle des ailerons, mais n'ont aucune interaction directe avec les pilotes
humains (quelque chose que vous ne voulez probablement pas envisager la prochaine fois). la prochaine fois que
vous prendrez l'avion).

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

RAISONS DE CHOISIR LINUX: QUALITÉ ET FIABILITÉ DU CODE


 Il existe un large éventail de motivations pour choisir Linux plutôt qu'un système d'exploitation embarqué
traditionnel. Nombre d'entre elles sont partagées par les utilisateurs d'ordinateurs de bureau, de serveurs et
d'entreprises, tandis que d'autres sont plus spécifiques à l'utilisation de Linux dans les dispositifs embarqués.
 Qualité et fiabilité du code: sont des mesures subjectives du niveau de confiance dans le code qui comprend des
logiciels tels que le noyau et les applications fournies par les distributions. Bien qu'il soit difficile de s'entendre sur
une définition exacte d'un "code de qualité", il existe des propriétés que de nombreux programmeurs attendent d'un
tel code:
• Modularité et Structure;
• Relecture;
• Extensibilité;
• Prédictabilité;
• Correction d’errures;
• Longévité.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

DEFINITION DU SYSTÈME D’EXPLOITATION LINUX


– Un OS est l’interface entre l’utilisateur ainsi que ses applications et le matériel sur lequel s’exécuteront ces applications;
– l’OS fait abstraction entre le Software et le Hardware vont pouvoir s’exécuter ces applications.

KERNEL

MODULES

OS/USER APPLICATIONS
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM
COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

COMPOSANTS & ARCHITECTURE DES SYSTÈMES D’EXPLOITATION LINUX


 COMPOSANTES D’UN OS, Un système d’Exploitation OS (OPERATING SYSTEM) se compose d’un:
 Noyau (KERNEL);
 Ensemble de Modules chargeables (MODULES);
 Package d’Applications (API).

 ARCHITECTURE D’UN OS, Un système d’Exploitation OS dispose des architectures suivantes:


 MONOLITHIQUE (KERNEL);
 MICROKERNEL OS;
 HYBRID OS.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

CONFIGURATION DE LINUX

 FONCTIONALITES INDESIRABLES: REPONSE NO


– Une réponse par NO lors de la configuration du noyau retire la composante en question du système Linux en préparation;
– Cette option de configuration est assignée a toute fonctionnalité jugées indésirable par le développeur du noyau linux personnalisé;
– Une réponse par NO lors de la configuration du noyau élimine la composante et la par la suite ne va plus figurer dans le système.

 KERNEL: REPONSE YES


– Une réponse par YES lors de la configuration du noyau intègre la composante en question dans la partie statique du système Linux;
– L’emplacement de la partie statique du noyau se trouve sur le répertoire /boot de l’arborescence du système Linux;
– Le répertoire /boot contient toutes les autres versions du noyau a disposition du système et de leurs iniramdisk.

 KERNEL MODULES: FONCTIONALITES DYNAMIQUES REPONSE M (MODULE)


– Une réponse par M lors de la configuration du noyau intègre la composante en question dans la partie dynamique du système Linux;
– L’emplacement de la partie dynamique se trouve sur le répertoire /lib/modules/Kernel_Version de l’arborescence du système Linux;
– Le répertoire /lib/modules/Kernel_Versioncontient toutes les autres versions des modules du noyau a disposition du système.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

NON EMBEDDED Operating system LAYERS DEBIAN: CISC TECHNOLOGY


2. USERS & SOFTWARE SW LAYER
1. OPERATING SYSTEM OS LAYER
0. MICROPROCESSOR HARDWARE-Based LAYER USERS/SOFTWARE SW
OS CISC TECH
HW MICRO OROCESSOR
EMBEDDED Operating system LAYERS RASPBIAN: RISC TECHNOLOGY
2. USERS & SOFTWARE SW LAYER
1. EMBEDDED OPERATING SYSTEM EOS LAYER
0. MICROCONTROLER HARDWARE-Based HW LAYER
USERS/SOFTWARE SW
EMBEDDED OS RISC TECH
HW MICRO CONTROLLER
OPERATING SYSTEM OS TASKS
1. PROCESS 2. HARDWARE 3. MEMORY 4. FILE SYSTEM 5, CPU TIME
MANAGEMENT MANAGEMENT MANAGEMENT MANAGEMENT MANAGEMENT

Pr. ABDERRAHIM BAJIT 5 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-GENERAL STRUCTURE OF LINUX- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Pr. ABDERRAHIM BAJIT 5 INTRODUCTIONTOLINUXOPERATINGSYSTEM


ON BOARD COMPUTING AND AUTOMOTIVE MECHATRONICS ENGINEERING
UNIVERSITY SEASON 2022-2023

Pr. Abderrahim BAJIT


Associate Professor Researcher in Automotive and Avionic Embedded Systems
Professor of Intelligent Sensor Networks, Embedded Computing and embeded IoT.
Department of Electrical –GESE- & Automotive Mechatronics Engineering –GMA-
National School of Applied Sciences ENSA, Ibn Tofail University UIT, Kénitra Morocco.

INTRODUCTION TO EMBEDDED OPERATING SYSTEMS


ELEMENT 1. EMBARQUEMENT D’UN SYSTÈME D’EXPLOITATION
 COURS 1-1. STRUCTURE GENERALE DU SYSTEME D’EXPLOITATION LINUX
 Introduction -LINUX SYSTEM-;
 TP-1.1.1. Démarrage du système -SYSTEM BOOT;
 TP-1.1.2. Noyau et Modules -KERNEL;
 TP-1.1.3. Configuration du Hardware -HW;
 TP-1.1.4. Gestion des supports de Stockage -LVM;
 TP-1.1.5. Gestion de Software -SW;
 TP-1.1.6. Configuration Réseau -NETWORKING;
 Conclusion.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-BOOTING THE SYSTEM-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Objectifs
Personnalisation du processus de démarrage système
– interroger et modifier le comportement des services système dans différents niveaux d'exécution ;
– configurer la procédure de démarrage des services.

Récupération du système
– manipuler la séquence de démarrage et le mode récupération ;
– utiliser les outils init et les options du noyau relatives à init.

Points importants
– Spécification du standard LSB (Linux Standard Base);
– Shell GRUB;
– Commandes de gestion de service.

Mots clés
/etc/inittab, /etc/init.d/, /etc/rc.d/, chkconfig, update-rc.d, mount, init, telinit.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-BOOTING THE SYSTEM-  Cours 1-1: Introduction sur la structure Générale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configuration Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Le démarrage du système implique quatre programmes lancés


successivement : le BIOS (Basic Input Output System), le chargeur de
démarrage, le noyau et le processus init.
Le BIOS est le premier programme exécuté, il réside au niveau du
ROM. Il charge les 512 premiers octets, ces 512 octets constituent le
secteur d'amorçage ou le (Master Boot Record).
Le MBR contient plusieurs informations sur les partitions du disque. Il
inclut aussi le chargeur de démarrage (ou une partie du chargeur de
démarrage).
Le chargeur de démarrage Grub (Grand Unified Bootloader) est utilisé
sur la plupart des distributions Linux. Il est décomposé en deux
parties. La première partie réside sur le MBR, elle charge la deuxième
partie qui se trouve dans une partition du disque. Une fois que la
deuxième partie du Grub est chargée, une interface est affichée
permettant à l'utilisateur de choisir quel système d'exploitation
démarrer.
Le chargeur de démarrage exécute le noyau. Ce dernier continue le
démarrage de la machine, il détecte et initialise les périphériques,
monte la partition racine et démarre le processus init.
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM
COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-BOOTING THE SYSTEM-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

– BIOS: A BIOS (basic input/output system) is the program a computer's microprocessor uses to start the computer system after
it is powered on. It also manages data flow between the computer's operating system (OS) and attached devices, such as the hard
disk, video adapter, keyboard, mouse and printer;
– POST: A (Power-On Self-Test (POST)) is an operation initiated by a computer after it has been turned on but before it boots up
the OS. The computer's firmware –BIOS-, Unified Extensible Firmware Interface (UEFI) or another system -- carries out this
operation by running a diagnostic testing sequence to determine if the computer's essential hardware is working properly;
- MBR: A master boot record (MBR) is a special type of boot sector at the very beginning of partitioned computer mass storage
devices like fixed disks or removable drives intended for use with IBM PC-compatible systems and beyond.
The MBR holds the information on how the disc's sectors are divided into partitions, each partition notionally containing a file
system. The MBR also contains executable code to function as a loader for the installed operating system—usually by passing
control over to the loader's second stage.
- BOOT LOADER: A bootloader, also spelled as boot loader or called boot manager and bootstrap loader, is a computer
program that is responsible for booting a computer. GNU GRUB is a Multiboot boot loader. It was derived from GRUB, the GRand
Unified Bootloader. Briefly, a boot loader is the first software program that runs when a computer starts. It is responsible for
loading and transferring control to the operating system kernel software;
- INITRAMDISK : In Linux systems, initrd (initial ramdisk) is a scheme for loading a temporary root file system into memory, to be
used as part of the Linux startup process. initrd and initramfs refer to two different methods of achieving this. Both are commonly
used to make preparations before the real root file system can be mounted.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-BOOTING THE SYSTEM-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

- LINUX KENEL: the Linux kernel is a free and open-source, monolithic, modular, multitasking, Unix-like operating system kernel. It
was originally authored in 1991 by Linus Torvalds for his i386-based PC, and it was soon adopted as the kernel for the GNU
operating system, which was written to be a free (libre) replacement for Unix.
Linux is provided under the GNU General Public License version 2 only, but it contains files under other compatible licenses.
Since the late 1990s, it has been included as part of a large number of operating system distributions, many of which are commonly
also called Linux.
– INIT: The init program starts all the processes we need to interact with the system, connect over the network, run databases and
just about everything else that needs to be running on the system. Typically, init starts dozens of processes and while these
processes may start additional processes, any process on the system can be tracked back through its creators to the init process.
The init program brings the system up in a certain runlevel. Runlevelsdefine a mode for the system, and in each runlevel, different
processes can be started. The default runlevels for Linux are as follows:
Runlevel Description
0 Halt (shutdown)
1 Single user mode
2 Multi-user mode, without NFS
3 Full multi-user mode
4 Unused
5 Full multi-user mode with X11 (GUI)
6 Reboot
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM
COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-BOOTING THE SYSTEM-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Processus init et niveau d'exécution: Le processus init est le premier processus utilisateur créé par le noyau lors du démarrage du
système. Il utilise les niveaux d'exécution pour définir l'état du système à un instant donné. Chaque niveau d'exécution contient
une liste de services à arrêter ou à démarrer. Lors du démarrage du système, le processus init détermine, à partir du fichier de
configuration /etc/inittab, le niveau d'exécution par défaut, et démarre les applications et les services requis dans ce niveau. Lors
de l'arrêt du système, init bascule vers le niveau d’exécution numéro 0. Ce niveau d'exécution est configuré de telle sorte que
toutes les applications et tous les services seront arrêtés. Il existe sept niveaux d'exécution possibles, allant de 0 à 6. Chaque
distribution les définit à sa manière, mais certains niveaux d'exécution sont les mêmes pour toutes les distributions. C'est le cas
des niveaux d'exécution 0, 1 et 6. Le niveau d'exécution 0 est utilisé pour l'arrêt du système, le niveau d'exécution 1 est utilisé
pour le démarrage du système en mode mono-utilisateur – ou mode dépannage – et le niveau d'exécution 6 est utilisé lors du
redémarrage du système.
Sur la distribution Debian et ses dérivés les niveaux d'exécution de 2 à 5 sont tous en mode multi-utilisateurs. Et tous les
services requis sont généralement configurés pour être démarrés pour ces niveaux d'exécution.
La distribution Red Hat et ses dérivés utilisent les niveaux d'exécution de la manière suivante :
– 1 : mode mono-utilisateur, utilisé pour la maintenance et la récupération du système (recovery mode, l'administration et la
configuration, effectuer les tâches de maintenance critique, comme le redimensionnement des partitions ou la vérification du
système de fichiers racine. Typiquement, le niveau d'exécution s ou S produit un shell root sans montage des systèmes de fichiers,
tandis que le niveau d'exécution 1 essaie de monter des systèmes de fichiers et lance quelques programmes systèmes.
– 2 : mode console, multi-utilisateurs, sans le support réseau ; – 3 : mode multi-utilisateurs avec le support réseau ;
– 5 : mode multi-utilisateurs avec interface graphique. Les commandes init et telinit permettent de changer de RL.
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM
COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-BOOTING THE SYSTEM-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-BOOTING THE SYSTEM-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

 Utiliser le fichier de configuration du service init: /etc/inittab


$ cat /etc/inittab | grep initdefault

 Services d’initialisation rcS et de démarrage rc d’un niveau d’exécution


$ ls /etc/rcS.d
$ ls /etc/rc2.d

 Services installés sur le système LINUX placer sur le répertoire: /etc/init.d


$ ls /etc/init.d

 Gestion des niveaux d’exécution (RunLevel RL pour afficher le niveau RL et


init pour changer le RL)
# runlevel
# init 3 (0: arrêt, 6: redémarrage)

 Gestion des services LINUX par la commande service


# service nomService action(start|stop|reload|restart|...) OU
# /etc/init.d/nomService action

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


ON BOARD COMPUTING AND AUTOMOTIVE MECHATRONICS ENGINEERING
UNIVERSITY SEASON 2022-2023

Pr. Abderrahim BAJIT


Associate Professor Researcher in Automotive and Avionic Embedded Systems
Professor of Intelligent Sensor Networks, Embedded Computing and embeded IoT.
Department of Electrical –GESE- & Automotive Mechatronics Engineering –GMA-
National School of Applied Sciences ENSA, Ibn Tofail University UIT, Kénitra Morocco.

INTRODUCTION TO EMBEDDED OPERATING SYSTEMS


ELEMENT 1. EMBARQUEMENT D’UN SYSTÈME D’EXPLOITATION
 COURS 1-1. STRUCTURE GENERALE DU SYSTEME D’EXPLOITATION LINUX
 Introduction -LINUX SYSTEM-;
 TP-1.1.1. Démarrage du système -SYSTEM BOOT;
 TP-1.1.2. Noyau et Modules -KERNEL;
 TP-1.1.3. Configuration du Hardware -HW;
 TP-1.1.4. Gestion des supports de Stockage -LVM;
 TP-1.1.5. Gestion de Software -SW;
 TP-1.1.6. Configuration Réseau -NETWORKING;
 Conclusion.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-LINUX KERNEL & MODULES- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Objectifs
Composants du noyau
– identifier les versions d'un noyau stable ou en développement ;
– utiliser les composants du noyau qui sont nécessaires aux matériels
spécifiques, pilotes, ressources et besoins du système ;
– identifier les différents types d'images du noyau. Personnalisation, construction et installation d'un noyau et des modules
noyau
Compilation d'un noyau – personnaliser et construire un noyau 2.6 pour des besoins
– personnaliser la configuration du noyau ; spécifiques du système, par la mise à jour, la compilation ou la
– compiler un noyau Linux 2.6 en incluant ou désactivant des modification des fichiers de configuration ;
composants spécifiques du noyau. – construire et configurer les modules du noyau ;
– créer une image d'initialisation système (initrd) et installer un nouveau
Mise à jour d'un noyau noyau.
– appliquer les mises à jour du noyau Linux pour accueillir de nouveaux
périphériques ; Gestion/interrogation du noyau et des modules noyau en exécution
– désinstaller correctement des mises à jour. – gérer et interroger les modules du noyau 2.6.x ;
– charger et décharger manuellement les modules du noyau.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-LINUX KERNEL & MODULES- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Le noyau Linux est diffusé avec une configuration générique conçue pour supporter n'importe quelle application sur
n'importe quel matériel. Cette configuration générique comprend de nombreux pilotes de périphériques, mais aussi des
paramètres pour le noyau. On peut modifier ces paramètres afin d'adapter le noyau à des besoins spécifiques, augmenter
les performances, renforcer la sécurité, ou encore la fiabilité du système.
Dans certains cas, la modification du noyau est nécessaire afin d’ajouter de nouveaux pilotes de périphériques. Le code
source du pilote ajouté doit être intégré dans les structures de données du noyau. Ceci peut exiger la recompilation du
noyau.
Il existe quatre méthodes pour intervenir sur la configuration d’un noyau Linux :
– modification dynamique des paramètres de configuration du noyau ;
– construction d'un noyau à partir de zéro (compilation du code source, avec éventuellement des modifications et des
ajouts) ;
– chargement de modules dans un noyau existant, à la volée ;
– passage de paramètres en utilisant le chargeur de démarrage : LILO ou GRUB.
Ces méthodes sont applicables dans des situations différentes. La modification dynamique des paramètres est la plus facile
et la plus courante, tandis que la construction d'un noyau à partir des fichiers sources est la plus difficile et la moins souvent
nécessaire.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-LINUX KERNEL & MODULES- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

- procfs: The proc filesystem (procfs) is a special filesystem in Unix-like operating systems that presents information
about processes and other system information in a hierarchical file-like structure, providing a more convenient and
standardized method for dynamically accessing process data held in the kernel than traditional tracing methods or direct
access to kernel memory. Typically, it is mapped to a mount point named /proc at boot time. The proc file system acts as
an interface to internal data structures about running processes in the kernel. In Linux, it can also be used to obtain
information about the kernel and to change certain kernel parameters at runtime (sysctl).
- Sysfs: sysfs is a pseudo file system provided by the Linux kernel that exports information about various kernel
subsystems, hardware devices, and associated device drivers from the kernel's device model to user
space through virtual files. In addition to providing information about various devices and kernel subsystems, exported
virtual files are also used for their configuration. sysfs provides functionality similar to the sysctl mechanism found
in BSD operating systems, with the difference that sysfs is implemented as a virtual file system instead of being a
purpose-built kernel mechanism, and that, in Linux, sysctl configuration parameters are made available at /proc/sys/ as
part of procfs, not sysfs which is mounted at /sys/.
- devfs is a specific implementation of a device file system on Unix-like operating systems, used for presenting device files.
The underlying mechanism of implementation may vary, depending on the OS. Maintaining these special files on a
physically-implemented file system such as a hard drive is inconvenient, and as it needs kernel assistance anyway, the
idea arose of a special-purpose logical file system that is not physically stored. Defining when devices are ready to
appear is not trivial. The devfs approach is for the device driver to request creation and deletion of devfs entries related
to the devices it enables and disables.
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM
COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-LINUX KERNEL & MODULES- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

1. Tutoriel sur la modification des paramètres du noyau LINUX


Pour mettre à jour un noyau, on utilise le système de fichiers virtuel sysfs qui range sa base de donnés dans le répertoire
/sys. Ce répertoire est composé d’une batterie de paramètres triés par type. Les types de paramètres sont fournis par:

$ ls /sys
bloc bus class dev devices firmware hypervisor fs kernel module power
/sys/module/e1000;
/sys/fs/ext4/sda1;
/sys/kernel/;
/sys/devices/system/cpu (memory, machinecheck, ...);
/sys/class/net/eth0.

Exemple
Lire et configurer les paramètres réseau de la classe net du système de fichiers virtuel sysfs /sys/class/net/eth0, par exemple:
addresss, address-len, broadcast. Et ses drivers à partir de sa base /sys/class/net/eth0/device/driver

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-LINUX KERNEL & MODULES- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

1. Tutoriel sur la modification des paramètres du noyau LINUX


Le noyau peut être ajusté dynamiquement à travers des paramètres du système. Ces paramètres sont accessibles et modifiables à partir des
fichiers du répertoire /proc/sys.

EXEMPLE
Pour modifier le nombre maximal de fichiers que le système peut ouvrir simultanément, on peut modifier le fichier /proc/sys/fs/file-max de la
façon suivante : # echo 32768 > /proc/sys/fs/file-max

FICHIER DESCRIPTION
/proc/sys/fs/file-max Indique le nombre maximal de fichiers que le noyau peut manipuler
simultanément
/proc/sys/kernel/ctrl-alt-del Contrôle la gestion de la séquence Ctrl-Alt-Supp du clavier. S'il contient
la valeur zéro, Ctrl-Alt-Supp est capturé et envoyé au programme init
pour relancer le système correctement.
/proc/sys/net/ipv4/icmp_echo_ignore_all Bloque les réponses au ping.
/proc/sys/net/ipv4/icmp_echo_ignore_broadcasts Ignore les messages de diffusion ICMP (Internet Control Message Protocol)
/proc/sys/net/ipv4/ip_forward Active ou désactive le relayage (forwarding) entre les cartes réseaux.
Activer le relayage est nécessaire pour faire fonctionner le système comme
un routeur.
/proc/sys/kernel/hostname Permet de changer le nom de la machine.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-LINUX KERNEL & MODULES- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

2. Tutoriel sur l’installation d’un nouveau noyau LINUX


Pour mettre un nouveau noyau à partir du noyau en cours, on procède comme suit:

 télécharger les patchs du site internet officiel www.kernel.org/pub/linux/kernel/v2.6/ à base l’outil wget;

 dépaqueter et décompresser l’archive du noyau en format .tar.bz2 par l’outil tar et bunzip2 et en format .tar.gz par l’outil
tar et gunzip ;

 se connecter sur le répertoire obtenu par l’extraction de l’archive ;

 configurer le noyau en choisissant sa partie statique à mettre dans /boot par Y (y), et sa partie modulaire à placer dans
/lib/modules par la marque M (m) et l’élimination des éléments indésirables par la marque N (n) ou se documenter par
la marque ?;

 Compiler du noyau statique, de ses modules, et de l’image initrd (RAM disc Initiale) et ajout d’une ligne dans le fichier du
chargeur de démarrage GRUB;

 Installer le nouveau noyau.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-LINUX KERNEL & MODULES- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

2. Tutoriel sur l’installation d’un nouveau noyau LINUX


1. Télécharger l’archive du noyau, exemple: linux-2.6.0.tar.bz2
$ wget https://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.0.tar.bz2
2. Dépaqueter et décompresser l’archive Connexion sur le répertoire extrait de l’archive
$ tar -xjvf linux-2.6.0.tar.bz2
$ cd linux-2.6.0/

3. Configurer le nouveau noyau


$ make menuconfig (oldconfig, xconfig, ...)

4. Compiler le nouveau noyau


$ make

5. Installer le nouveau noyau et effacer le répertoire des fichiers temporaires


# make install && make modules_install
$ make clean

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-LINUX KERNEL & MODULES- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

2. Tutoriel sur l’installation d’un nouveau noyau LINUX


Listing de commandes
$ wget www.kernel.org/pub/linux/kernel/v2.6/
linux-3.2.0.16.tar.bz2

$ tar -xjvf wget-1.12.tar.gz


$ cd linux-3.2.0.16/
$ ls
$ ./configure --prefix=/media/embeddedKernel
$ make
# make install
$ make clean

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-LINUX KERNEL & MODULES- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

2. Tutoriel sur l’installation d’un nouveau noyau LINUX


EXEMPLE KERNEL LINUX-2.6.35.5.TAR.BZ2
Le code source du noyau 2.6.35 a été téléchargé, à partir du lien
www.kernel.org/pub/linux/kernel/v2.6, sous forme d'une archive. Le répertoire linux-2.6.35.5/
est créé à l'issue de la décompression et de l'extraction de cet archive. À l'intérieur de ce répertoire se trouve
l'arborescence du code source du noyau Linux 2.6.35.
$ tar xjfv linux-2.6.35.5.tar.bz2
$ cd linux-2.6.35.5/

$ ls
arch COPYING crypto drivers fs init Kbuild lib
Makefile net REPORTING-BUGS scripts sound usr
block CREDITS Documentation firmware include ipc kernel MAINTAINERS mm
README samples security tools virt

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-LINUX KERNEL & MODULES- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

3. Tutoriel sur la Mise à jour du noyau LINUX


Pour mettre à jour un noyau, on effectue les opérations suivantes:
 télécharger les patchs du site internet officiel www.kernel.org/pub/linux/kernel/v2.6/incr/ à base l’outil wget;
 décompresser les patchs du format bz2 par l’outil bunzip2 et du format gz par l’outil gunzip ;
 se connecter sur le répertoire obtenu ;
 appliquer le patch par l’outil patch;
 examiner le fichier Makefile pour voir le changement de version du noyau.

Exemple
On veut passer de la version 2.6.35.5 à la version 3.6.35.7. Pour ce faire, on a donc besoin de télécharger deux patchs:
un patch pour passer de la version 2.6.35.5 à la version 2.6.35.6;
un autre patch pour passer de la version 2.6.35.6 à la version 2.6.35.7.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-LINUX KERNEL & MODULES- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

3. Tutoriel sur la Mise à jour du noyau LINUX: suite

1. Télécharger les patchs patch-2.6.35.5-6.bz2 et patch-2.6.35.5-6.bz2


$wget www.kernel.org/pub/linux/kernel/v2.6/incr/patch-2.6.35.5-6.bz2
$wget www.kernel.org/pub/linux/kernel/v2.6/incr/patch-2.6.35.6-7.bz2

2. Décompresser les patchs


$ bzip2 -dv patch-2.6.35.5-6.bz2
$ bzip2 -dv patch-2.6.35.6-7.bz2

3. Appliquer la mise à jour après connexion sur le répertoire obtenu


$ cd linux-2.6.35.5
$ patch -p1 < ../patch-2.6.35.5-6
$ patch -p1 < ../patch-2.6.35.6-7

4. Examiner le fichier Makefile pour voir le changement de version du noyau


$ head Makefile

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-LINUX KERNEL & MODULES- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

4. Tutoriel sur la gestion des modules du noyau LINUX


 1. Chargement manuel du module vfat
# lsmod | grep vfat
# insmod /lib/modules/3.2.0-4-amd64/kernel/fs/fat/vfat.ko
Error: unknown symbol in module (manque de dépéndences)
 2. Recherche et chargement des dépendences du module vfat
# modinfo vfat
Filename: /lib/modules/3.2.0-4-amd64/kernel/fs/fat/vfat.ko
Depends: fat
...
# insmod /lib/modules/3.2.0-4-amd64/kernel/fs/fat/fat.ko
# lsmod | grep fat
fat 45642 0
 3. Chargement manuel du module vfat
# insmod /lib/modules/3.2.0-4-amd64/kernel/fs/fat/vfat.ko
# lsmod | grep vfat
vfat 17613 0
fat 45642 1 vfat
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM
COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-LINUX KERNEL & MODULES- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

4. Tutoriel sur la gestion des modules du noyau LINUX


 1. Déchargement manuel des dépéndences du module vfat
# lsmod | grep fat
fat 45642 0
# rmmod /lib/modules/3.2.0-4-amd64/kernel/fs/fat/fat.ko
Error: module fat is in use by: vfat
# lsmod | grep vfat
vfat 17613 0
fat 45642 1 vfat

 2. Déchargement manuel du module vfat


# rmmod /lib/modules/3.2.0-4-amd64/kernel/fs/fat/vfat.ko
# lsmod | grep fat
fat 45642 0

 3. Déchargement manuel des dépéndences du module vfat


# rmmod /lib/modules/3.2.0-4-amd64/kernel/fs/fat/fat.ko
# lsmod | grep vfat

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-LINUX KERNEL & MODULES- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

4. Tutoriel sur la gestion des modules du noyau LINUX


 1. Vérification du chargement du module vfat
# lsmod | grep vfat

 2. Chargement automatique du module vfat (sans tenir compte des dépendences)


# modprobe vfat
# lsmod | grep vfat
vfat 17613 0
fat 45642 1 vfat

 3. Déchargement automatique du module vfat (sans tenir compte des dépendences)


# modprobe –r vfat
# lsmod | grep vfat

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


ON BOARD COMPUTING AND AUTOMOTIVE MECHATRONICS ENGINEERING
UNIVERSITY SEASON 2022-2023

Pr. Abderrahim BAJIT


Associate Professor Researcher in Automotive and Avionic Embedded Systems
Professor of Intelligent Sensor Networks, Embedded Computing and embeded IoT.
Department of Electrical –GESE- & Automotive Mechatronics Engineering –GMA-
National School of Applied Sciences ENSA, Ibn Tofail University UIT, Kénitra Morocco.

INTRODUCTION TO EMBEDDED OPERATING SYSTEMS


ELEMENT 1. EMBARQUEMENT D’UN SYSTÈME D’EXPLOITATION
 COURS 1-1. STRUCTURE GENERALE DU SYSTEME D’EXPLOITATION LINUX
 Introduction -LINUX SYSTEM-;
 TP-1.1.1. Démarrage du système -SYSTEM BOOT;
 TP-1.1.2. Noyau et Modules -KERNEL;
 TP-1.1.3. Configuration du Hardware -HW;
 TP-1.1.4. Gestion des supports de Stockage -LVM;
 TP-1.1.5. Gestion de Software -SW;
 TP-1.1.6. Configuration Réseau -NETWORKING;
 Conclusion.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-HARDWARE CONFIGURATION HW- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Déterminer et configure les paramètres du matériel


Description: Etre capable de déterminer et configurer le matériel fondamental du système.

Domaine de connaissance:
 Activer er désactiver les périphériques intégrés
 Configurer le système avec et sans périphériques externes tels que le clavier
 Différencier entre les différents types de périphériques de stockage de masse
 Savoir la différence entre les périphériques coldplug et hotplug
 Déterminer les ressources matérielles des périphériques
 Outils et utilitaires pour lister les différentes informations des périphériques (e.g. lsusb, lspci, etc.)
 Outlis et utilitaires pour manipuler les périphériques USB et PCI
 Comprendre le concept de gestion de périphérique par : sysfs, udev, dbus

Points importants
Dans les noyaux 2.6 et grâce à la combinaison des systèmes de fichiers virtuels /proc, /sys et /dev, il est possible d’obtenir un
instantané du système et de touts ses périphériques.

Mots clés
/sys/, /proc/, /dev/, lsmod, lspci, lsusb,modprobe

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-HARDWARE CONFIGURATION HW- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

- procfs: The proc filesystem (procfs) is a special filesystem in Unix-like operating systems that presents information
about processes and other system information in a hierarchical file-like structure, providing a more convenient and
standardized method for dynamically accessing process data held in the kernel than traditional tracing methods or direct
access to kernel memory. Typically, it is mapped to a mount point named /proc at boot time. The proc file system acts as
an interface to internal data structures about running processes in the kernel. In Linux, it can also be used to obtain
information about the kernel and to change certain kernel parameters at runtime (sysctl).
- Sysfs: sysfs is a pseudo file system provided by the Linux kernel that exports information about various kernel
subsystems, hardware devices, and associated device drivers from the kernel's device model to user
space through virtual files. In addition to providing information about various devices and kernel subsystems, exported
virtual files are also used for their configuration. sysfs provides functionality similar to the sysctl mechanism found
in BSD operating systems, with the difference that sysfs is implemented as a virtual file system instead of being a
purpose-built kernel mechanism, and that, in Linux, sysctl configuration parameters are made available at /proc/sys/ as
part of procfs, not sysfs which is mounted at /sys/.
- devfs is a specific implementation of a device file system on Unix-like operating systems, used for presenting device files.
The underlying mechanism of implementation may vary, depending on the OS. Maintaining these special files on a
physically-implemented file system such as a hard drive is inconvenient, and as it needs kernel assistance anyway, the
idea arose of a special-purpose logical file system that is not physically stored. Defining when devices are ready to
appear is not trivial. The devfs approach is for the device driver to request creation and deletion of devfs entries related
to the devices it enables and disables.
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM
COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-HARDWARE CONFIGURATION HW- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

KERNEL
Driver core Export
Sysfs /sys
NETLINK
Kernel
uevent object Gather information from sysfs

Udevd
NETLINK
Udev
device create
Pass uevent to udev
Store device
information

Udev database
In memory
Udev
event process
Get stored device
information DBUS CONNECTION INSTANCE

Notify userspace Notify all other


DBUS CONNECTION INSTANCE DBUS CONNECTION INSTANCE
about (interested in Device)
D-Bus daemon process APPLICATION XXX
Device socket Applications socket

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-HARDWARE CONFIGURATION HW- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Lister les attributs fournis par le système de fichiers virtuel SYSFS sur le répertoire de sa base de données
/sys. Chaque carte réseau ethx dispose de son propre objet
# ls /sys/class/net/eth0

Afficher les informations sur les périphériques branchés sur le bus PCI
# lspci | grep -i ethernet

Afficher la configuration des périphériques branchés sur le bus PCI extrait à partir du système de fichier
virtuel sysfs (CPU IRQ, CPU IO, KERNEL module)
# lspci -v -s 00:03.1 (bus:00, slot.func:03.1)

Afficher les informations sur la carte réseau eth0 (périphériques PCI) par interrogation de la base du
système de fichier virtuel sysfs
# udevadm info –p /sys/class/net/eth0 -a

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-HARDWARE CONFIGURATION HW- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Lister les attributs fournis par le système de fichiers virtuel SYSFS sur le répertoire de sa base de données
/sys. Chaque périphérique USB dispose de son propre objet
# ls /sys/bus/usb/devices/1-3

Afficher les informations sur les périphériques branchés sur le bus USB
# lsusb | grep -i flash

Afficher la configuration des périphériques branchés sur le bus USB extrait à partir du système de fichier
virtuel sysfs (CPU IRQ, CPU IO, KERNEL module)
# lsusb -v -s 001:043 (bus:001, devnum:043)

Afficher les informations sur les périphériques USB e par interrogation de la base du système de fichier
virtuel sysfs
# udevadm info –p /sys/bus/usb/devices/1-3 -a

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


ON BOARD COMPUTING AND AUTOMOTIVE MECHATRONICS ENGINEERING
UNIVERSITY SEASON 2022-2023

Pr. Abderrahim BAJIT


Associate Professor Researcher in Automotive and Avionic Embedded Systems
Professor of Intelligent Sensor Networks, Embedded Computing and embeded IoT.
Department of Electrical –GESE- & Automotive Mechatronics Engineering –GMA-
National School of Applied Sciences ENSA, Ibn Tofail University UIT, Kénitra Morocco.

INTRODUCTION TO EMBEDDED OPERATING SYSTEMS


ELEMENT 1. EMBARQUEMENT D’UN SYSTÈME D’EXPLOITATION
 COURS 1-1. STRUCTURE GENERALE DU SYSTEME D’EXPLOITATION LINUX
 Introduction -LINUX SYSTEM-;
 TP-1.1.1. Démarrage du système -SYSTEM BOOT;
 TP-1.1.2. Noyau et Modules -KERNEL;
 TP-1.1.3. Configuration du Hardware -HW;
 TP-1.1.4. Gestion des supports de Stockage -LVM;
 TP-1.1.5. Gestion de Software -SW;
 TP-1.1.6. Configuration Réseau -NETWORKING;
 Conclusion.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-FILE SYSTEMS MANAGEMENT LVM- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Objectifs
Opérations de sauvegarde :
– sauvegarder les données importantes du système ;
– vérifier l'intégrité des fichiers de sauvegarde ;
– restaurer les sauvegardes.

Opérations de sauvegarde :
– supports de sauvegarde ;
– utilitaires de sauvegarde ;
– solutions de sauvegarde réseau.

Mots clés
cpio, dd, tar, mt, rsync, dump, restore
/dev/st*, /dev/nst*,

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-FILE SYSTEMS MANAGEMENT LVM- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

TUTORIEL 1: CREATION, MAINTENANCE, MONTAGE, Et GESTION du SYSTÈME de FICHIERS


Les types de systèmes de fichiers
minix, le système de fichier de Minix, est le premier système de fichiers utilisé sous Linux. Le système de fichiers étendu ext,
une extension de minix, a été développé en avril 1992. C’est le premier système de fichiers utilisant l'API VFS. Il a été inclus
dans la version 0.96c du noyau Linux.
Dans cette section, certains des systèmes de fichiers les plus couramment utilisés sous Linux seront examinés. Ils sont
énumérés dans le tableau 3 avec leurs principales caractéristiques.

Système de fichiers Caractéristiques


ext2 Extension du système de fichiers ext. Stable, usage général, peut être rétréci ou agrandi.
Ce système de fichiers n'a pas la fonctionnalité de journalisation.
ext3 Une amélioration de ext2. La fonctionnalité de journalisation est ajoutée pour permettre la
récupération rapide du système de fichiers en cas de crash.
ext4 Une amélioration de ext3 pour supporter de grandes tailles de fichiers et de systèmes de fichiers.
XFS Stable, usage général, une récupération rapide, peut être étendu en ligne
JFS Stable, usage général, une récupération rapide

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-FILE SYSTEMS MANAGEMENT LVM- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

TUTORIEL 1: CREATION, MAINTENANCE, MONTAGE, Et GESTION du SYSTÈME de FICHIERS


Les types de systèmes de fichiers
minix, le système de fichier de Minix, est le premier système de fichiers utilisé sous Linux. Le système de fichiers étendu ext,
une extension de minix, a été développé en avril 1992. C’est le premier système de fichiers utilisant l'API VFS. Il a été inclus
dans la version 0.96c du noyau Linux.
Dans cette section, certains des systèmes de fichiers les plus couramment utilisés sous Linux seront examinés. Ils sont
énumérés dans le tableau 3 avec leurs principales caractéristiques.

Système de fichiers Caractéristiques


ext2 Extension du système de fichiers ext. Stable, usage général, peut être rétréci ou agrandi.
Ce système de fichiers n'a pas la fonctionnalité de journalisation.
ext3 Une amélioration de ext2. La fonctionnalité de journalisation est ajoutée pour permettre la
récupération rapide du système de fichiers en cas de crash.
ext4 Une amélioration de ext3 pour supporter de grandes tailles de fichiers et de systèmes de fichiers.
XFS Stable, usage général, une récupération rapide, peut être étendu en ligne
JFS Stable, usage général, une récupération rapide

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-FILE SYSTEMS MANAGEMENT LVM- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Les types de systèmes de fichiers


1.1 ext2: Le système de fichier ext2 a été, jusqu'à la fin des années 1990, le système de fichiers de Linux. Il a la réputation
d'un système de fichiers fiable et stable. Il a été éclipsé par d'autres systèmes de fichiers à journal, mais il a toujours son
utilité. En particulier, ext2 peut être un bon choix pour une petite partition ou pour les disques amovibles de petites tailles.
Sur ces petites partitions, la taille du journal utilisé par ces systèmes de fichiers à journal peut servir à stocker les données.
1.2 ext3: Le système de fichiers ext3 est une extension de ext2. Il ajoute une fonctionnalité de journalisation qui augmente
sa fiabilité, sans changer la structure fondamentale héritée de ext2. On peut toujours monter un système de fichiers ext3
comme étant un système de fichier ext2 en désactivant la fonctionnalité de journalisation. Il est possible de convertir un
système de fichiers ext2 en un système de fichiers ext3 avec l’option –j de la commande tune2fs .
EXEMPLE: Pour convertir la partition ext2 /dev/sda2 en ext3 : # tune2fs -j /dev/sda2
Le système de fichiers ext3 réserve une zone du disque pour le fichier journal2. Quand une opération sur le système de
fichiers se produit, les modifications nécessaires sont d'abord écrites dans le fichier journal. Ensuite le système de fichiers
est modifié. Si une coupure de courant ou une panne système survient pendant la mise à jour, on peut se référer au
fichier journal pour reconstruire un système de fichiers cohérent. La technique de journalisation permet de réduire
considérablement le temps nécessaire au système de fichiers pour effectuer des contrôles de cohérence. Sauf pour des
pannes matérielles, l'état d'un système de fichiers ext3 peut être presque instantanément évalué et restauré.
1.3 ext4: Le système de fichier ext4 est la nouvelle génération de la famille ext. ext4 ajoute la possibilité de travailler avec
des disques très volumineux (plus de 32 téraoctets) ou de très gros fichiers (ceux de plus de 2 To), ainsi que des extensions
destinées à améliorer les performances et à la défragmentation en ligne.
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM
COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-FILE SYSTEMS MANAGEMENT LVM- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Création de systèmes de fichiers


2.1 Commande mkfs: La commande mkfs permet de construire un système de fichiers sur une partition du disque. Elle fait
appel à d'autres programmes en fonction du type de système de fichiers sélectionné. Linux prend en charge différents types
de systèmes de fichiers, y compris plusieurs systèmes de fichiers journalisés et les systèmes de fichiers Windows.
La création d'un système de fichiers peut être faite avec la commande qui a comme préfixe mkfs et comme suffixe le nom du
type de système de fichiers. Par exemple :
 pour créer un système de fichiers ext3 on utilise la commande mkfs.ext3 ;
 pour les systèmes de fichiers ReiserFS, la commande est mkfs.reiserfs ;
 pour les systèmes de fichiers 6 bits de Windows (95/98), la commande est mkfs.vfat.

La commande mke2fs permet aussi de créer un système de fichiers ext2, et en utilisant l'option -j on peut créer un système
de fichiers ext3.

La syntaxe de la commande mkfs est :


mkfs [-t type-sys-fichiers][options-sys-fichiers] partition [nombre-blocs]
Si le type du système de fichiers (type-sys-fichiers) n'est pas indiqué, le système de fichiers utilisé par défaut est ext2. On
peut ajouter des options du système de fichiers à créer (options-sys-fichiers). Enfin on peut spécifier le nombre de blocs à
utiliser pour le système de fichiers (nombre-blocs).

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-FILE SYSTEMS MANAGEMENT LVM- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Création de systèmes de fichiers


2.1 Commande mkfs: Le tableau 4 résume les principales options ext3 de la commande mkfs.

Tableau 4. Principales options ext3 de la commande mkfs


Option Description
-V Affiche le numéro de la version de la commande mkfs.
-v Sortie bavarde
-c Vérifie le périphérique pour éliminer les secteurs défectueux avant de formater le système de fichiers.
-l nom-fichier Lit la liste des secteurs défectueux depuis le fichier nom-fichier.
-L étiquette-duvolume Définit le nom de volume pour le système de fichiers
-b taille-de-bloc Définit la taille de bloc

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-FILE SYSTEMS MANAGEMENT LVM- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Ajustement des paramètres des systèmes de fichiers ext[234]


La commande tune2fs permet de modifier les paramètres ajustables d'un système de fichiers ext2, ext3 ou ext4. Les
principaux paramètres ajustables sont le label, le journal et les blocs réservés pour le super-utilisateur.
Le tableau 5 illustre les principales options de la commande tune2fs.

Tableau 5. Principales options de la commande tune2fs


Option Fonction
-c N Ajuste le nombre maximal de montages entre deux vérifications du système de fichiers. Si N vaut 0 ou -1, le
nombre de fois que le système de fichiers a été monté sera ignoré par la commande e2fsck et par le noyau.
-l Affiche le contenu du superbloc du système de fichiers.
-m N Définit le pourcentage de blocs réservés pour le super-utilisateur dans le système de fichiers.
-r N Définit le nombre de blocs réservés pour le super-utilisateur dans le système de fichiers.
-j Ajoute un journal ext3 au système de fichiers.
-L label Définit le nom de volume du système de fichiers.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-FILE SYSTEMS MANAGEMENT LVM- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Vérification et réparation d’un système de fichiers


Généralement les systèmes de fichiers modernes sont fiables face aux pannes du système et du matériel. Des pannes du
noyau et des coupures du courant électrique peuvent engendrer des petites incohérences dans le système de fichiers. Ces
dommages peuvent être résolus avec la commande fsck.

La commande fsck analyse les systèmes de fichiers et corrige les erreurs détectées, telles que :
 blocs de données non utilisés et non enregistrés ;
 blocs de données marqués comme libres mais également utilisés dans un fichier ;
 inodes non référencés ;
 répertoires non reliés au système de fichiers ;
 informations incorrectes dans le superbloc.

Les disques sont généralement analysés au démarrage du système avec la commande fsck -p. Cette commande examine et
corrige les systèmes de fichiers listés dans le fichier /etc/fstab. Linux garde une trace des systèmes de fichiers qui ont été
correctement démontés. Concernant les systèmes de fichiers qui ne sont pas démontés correctement,

Linux procède à leur analyse et à leur correction. Si une certaine forme de journalisation est activée, fsck indique que le
système de fichiers est journalisé et applique le dernier état cohérent du système de fichiers.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-FILE SYSTEMS MANAGEMENT LVM- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Vérification et réparation d’un système de fichiers


EXEMPLE
Pour analyser le système de fichiers /dev/sda5 :
# fsck -p /dev/sda5

La commande fsck -p lit le fichier /etc/fstab pour savoir quels sont les systèmes de fichiers à contrôler. Elle les traite par
ordre numérique croissant, en se basant sur la valeur contenue dans la dernière colonne de chaque ligne. La partition racine
est toujours vérifiée en premier.

Même si tous les démontages des systèmes de fichiers ont été faits correctement, on peut forcer la vérification après un
certain nombre de montages. La valeur par défaut est 25 démontages. C’est une bonne précaution, toutefois, sur les
ordinateurs de bureau où les montages de systèmes de fichiers sont fréquents, faire un fsck tous les 25 montages peut
devenir fastidieux. On peut donc fixer à 50 le nombre maximum de montages entre deux vérifications.

EXEMPLE
# tune2fs -c 50 /dev/sda3
tune2fs 1.35 (28-Feb-2004)
Setting maximal mount count to 50

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-FILE SYSTEMS MANAGEMENT LVM- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Gestion des périphériques avec udev


8.1 Principe de fonctionnement
Au départ, les fichiers spéciaux des périphériques, appelés noeuds ou nodes, étaient créés manuellement dans le répertoire
/dev. Les mainteneurs des distributions Linux étaient obligés de peupler le répertoire /dev avec tous les fichiers de
périphériques possibles. Cette approche n'était pas idéale ni pratique.

Depuis la version 2.6.2 du noyau Linux, le service udev gère dynamiquement la création et la suppression des noeuds dans le
répertoire /dev en fonction de l'ajout ou de la suppression des périphériques du système.

Le service udev peut aussi charger automatiquement les pilotes des périphériques, assurer que les périphériques gardent
toujours les mêmes noms, indépendamment de leur ordre de branchement, et notifier aux autres programmes la présence
d'un périphérique.

La figure illustre le principe de fonctionnement du service udev : il écoute les messages du noyau, appelés uevent,
concernant les changements d'état des périphériques. Il peut effectuer une variété d'actions quand un périphérique est
découvert ou déconnecté, pour cela il se base sur des règles définies dans les fichiers des répertoires /etc/udev/rules.d
et /lib/udev/rules.d/.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-FILE SYSTEMS MANAGEMENT LVM- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Gestion des périphériques avec udev


8.1 Principe de fonctionnement
La figure illustre le principe de fonctionnement du service udev : il écoute les messages du noyau, appelés uevent,
concernant les changements d'état des périphériques. Il peut effectuer une variété d'actions quand un périphérique est
découvert ou déconnecté, pour cela il se base sur des règles définies dans les fichiers des répertoires /etc/udev/rules.d
et /lib/udev/rules.d/.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-FILE SYSTEMS MANAGEMENT LVM- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Gestion des périphériques avec udev: EXEMPLE


On utilise la commande udevadm monitor --environment pour capturer le message du noyau (uevent), envoyé suite à la
connexion d'un disque USB.
$ udevadm monitor --environment
monitor will print the received events for:
UDEV - the event which udev sends out after rule processing
KERNEL - the kernel uevent
KERNEL[1321431768.343421] add /devices/pci0000:00/0000:00:1d.7/usb2/2-
2 (usb)
UDEV_LOG=3
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:1d.7/usb2/2-2
SUBSYSTEM=usb
DEVNAME=bus/usb/002/004
DEVTYPE=usb_device
PRODUCT=781/5406/10
TYPE=0/0/0
BUSNUM=002
DEVNUM=004
SEQNUM=1725
MAJOR=189

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-FILE SYSTEMS MANAGEMENT LVM- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

TUTORIEL 1: CREATION, MAINTENANCE, MONTAGE, Et GESTION du SYSTÈME de FICHIERS


Concepts généraux du LVM
La gestion des volumes logiques définit une couche d'abstraction de haut niveau sur les partitions physiques du disque dur.
Les volumes physiques (physical volumes ou pv) sont regroupés pour former des groupes de volumes (volume groups ou vg).
Les volumes physiques peuvent être des disques, des partitions ou même des volumes RAID. Dans un groupe de volumes on
peut créer plusieurs volumes logiques qui seront accessibles comme des partitions classiques. Enfin, sur ces volumes
logiques, on peut créer des systèmes de fichiers et les monter sur l'arborescence système.

LVM offre ainsi plusieurs avantages. Avec ce module, on peut :


– avoir une utilisation et une allocation efficaces de l'espace de stockage, puisque les volumes logiques sont répartis sur
plusieurs disques physiques ;
– augmenter et réduire la taille des volumes logiques sans risque d'interrompre des services du système ni de perdre des
données ;
– prendre des instantanés (snapshots) sur le système de fichiers. Ces instantanés servent à sauvegarder et restaurer les
données.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-FILE SYSTEMS MANAGEMENT LVM- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

TUTORIEL 1: CREATION, MAINTENANCE, MONTAGE, Et GESTION du SYSTÈME de FICHIERS


 1. Partitionner un périphérique de stockage
# fdisk /dev/sdb

 2. Créer un système de fichiers


# mkfs –t ext4 /dev/sdb1

 3. Maintenir l’état du syytème de fichiers


# dumpe2fs /dev/sdb1
# fsck /dev/sdb1

 4. Mounter le système de fichiers


# mkdir /media/myHomeBackup
# mount /dev/sdb1 /media/myHomeBackup

 5. Surveiller l’état du système de fichiers


# df –h /dev/sdb1
# du –s /dev/sdb1

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-FILE SYSTEMS MANAGEMENT LVM- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

TUTORIEL 1: CREATION, MAINTENANCE, MONTAGE, Et GESTION du SYSTÈME de FICHIERS


 6. Creation d’une archive du repertoire personnel
# tar cjvf myEtcArvhive.tar.bz2 /etc

 7. Deplacement de l’archive au point de montage


# mv myEtcArvhive.tar.bz2 /media/myHomeBackup

 8. Verfication de l’emplacement de l’archive


# ls –-color /media/myHomeBackup

 9. Demonter le support de stockage


# umount /dev/sdb1 ou bien umount /media/myHomeBackup

 10. Verification de demontage du support de stockage


# ls –-color /media/myHomeBackup

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-FILE SYSTEMS MANAGEMENT LVM- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

TUTORIAL 2: MONTAGE PERMANENT du SYSTÈME de FICHIERS


 1. Configurer le système de fichiers pour le montage permanent
# nano /etc/fstab
...
/dev/sdb1 /mnt/myHomeBackup ext4 defaults 0 0

 2. Vérifier la configuration
# echo ‘/dev/sdb1 ext4 /mnt/myHomeBackup defaults 0 0’ >> /etc/fstab
# cat /etc/fstab

 3. Redémarrer le système de fichiers et test de configuration


# init 6
# mount | grep sdb1
 resultats
/dev/sdb1 /mnt/myHomeBackup ext4 defaults 0 0

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-FILE SYSTEMS MANAGEMENT LVM- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

TUTORIAL 3: BACKING UP USING LVM


Concepts généraux du LVM
La gestion des volumes logiques définit une couche d'abstraction de haut niveau sur les partitions physiques du disque dur.
Les volumes physiques (physical volumes ou pv) sont regroupés pour former des groupes de volumes (volume groups ou vg).
Les volumes physiques peuvent être des disques, des partitions ou même des volumes RAID. Dans un groupe de volumes on
peut créer plusieurs volumes logiques qui seront accessibles comme des partitions classiques. Enfin, sur ces volumes
logiques, on peut créer des systèmes de fichiers et les monter sur l'arborescence système.

LVM offre ainsi plusieurs avantages. Avec ce module, on peut :


– avoir une utilisation et une allocation efficaces de l'espace de stockage, puisque les volumes logiques sont répartis sur
plusieurs disques physiques ;
– augmenter et réduire la taille des volumes logiques sans risque d'interrompre des services du système ni de perdre des
données ;
– prendre des instantanés (snapshots) sur le système de fichiers. Ces instantanés servent à sauvegarder et restaurer les
données.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-FILE SYSTEMS MANAGEMENT LVM- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

La configuration LVM sous Linux est faite en trois étapes :


– création et initialisation des volumes physiques ;
– ajout des volumes physiques à un groupe de volumes ;
– création des volumes logiques au sein du groupe de volumes.

Les commandes LVM commencent par deux lettres qui reflètent le niveau d'abstraction LVM :
– les commandes pv manipulent les volumes physiques ;
– les commandes vg manipulent les groupes de volumes ;
– les commandes lv manipulent les volumes logiques.

Les principales commandes de gestion des volumes physiques sont :


– pvcreate : initialise un périphérique (partition, disque ou volume RAID) comme un volume physique pour une utilisation
par LVM ;
– pvdisplay : affiche des informations détaillées sur un volume physique, y compris le nom du groupe de volumes auquel il
appartient et sa taille ;
– pvscan : analyse les partitions de disque à la recherche des périphériques de blocscontenant des volumes physiques ;
– pvck : contrôle la cohérence du volume physique ;
– pvs : affiche des informations sommaires sur les volumes physiques.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-FILE SYSTEMS MANAGEMENT LVM- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Les principales commandes de gestion des groupes de volumes sont :


– vgcreate : crée un groupe de volumes ;
– vgchange : modifie certains attributs d’un groupe de volumes, par exemple pour l’activer ou le désactiver ;
– vgdisplay : affiche les caractéristiques détaillées d'un volume logique. L’option –v permet de visualiser la liste des volumes
logiques et des volumes physiques de chaque groupe de volumes ;
– vgscan : analyse le système pour rechercher des groupes de volumes ;
– vgextend : ajoute des volumes physiques à un groupe de volumes existant ;
– vgreduce : supprime un ou plusieurs volumes physiques d'un groupe de volumes ; – vgremove : supprime un groupe de
volumes ;
– vgrename : renomme un groupe de volumes ; – vgs : affiche des informations sommaires sur les groupes de volumes.

Les principales commandes de gestion des volumes logiques :


– lvdisplay : affiche des informations détaillées sur les volumes logiques ; – lvcreate : crée un volume logique ;
– lvrename : renomme un volume logique ; – lvchange : change les attributs d'un volume logique ;
– lvextend : augmente la taille d'un volume logique ;
– lvreduce : réduit la taille d'un volume logique ; – lvremove : supprime des volumes logiques ;
– lvs : affiche des informations sommaires sur les volumes logiques ;
– lvresize : redimensionne un volume logique (équivalent à la fois à lvextend et lvreduce ) ;
– lvscan : analyse le système pour rechercher des volumes logiques.
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM
COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-FILE SYSTEMS MANAGEMENT LVM- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

TUTORIAL 3: BACKING UP
STEP 0: Installing lvm2 package and Collecting physical volume components
# aptitude install lvm2
# obtain /dev/sdc1 /dev/sdd1 and /dev/sde1 partitions (fdisk)

STEP 1: Creating a physical volume


# for i in sdc1 sdd1 sde1; do pvcreate /dev/$i; done
# pvdisplay -C

STEP 2: Creating a group volume


# vgcreate ensaVG /dev/sdb1 /dev/sdd1 /dev/sde1
# vgdisplay -C

STEP 3: Creating a logical volume of 5G


# lvcreate -n ensaLVM -L 5G ensaVG
# lvdisplay -C

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-FILE SYSTEMS MANAGEMENT LVM- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

TUTORIAL 3: BACKING UP
STEP 1: Creating a file system on the LVM volume support
# mkfs -t ext4 /dev/ensaVG/ensaLVM

STEP 2: Creating mount point


# mkdir /media/backupsLVM

STEP 3: Mounting the logical volume on the mount point


# mount /dev/ensaVG/ensaLVM /media/backupsLVM

STEP 4: display file system informations


# df -h /media/backupsLVM
# mount | grep /dev/ensaVG/ensaLVM

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
-FILE SYSTEMS MANAGEMENT LVM- D’EXPLOITATION
 Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

TUTORIAL 3: BACKING UP
Le premier exemple sauvegarde les fichiers du répertoire personnel de l'utilisateur user dont la date de dernière
modification est plus récente que celle du fichier test.txt
# tar cvf myHomeBackup.tar /home

− Cet exemple montre comment compresser une archive par les ou ls gzip et bzip2:
# gzip myHomeBackup.tar /media/backupsLVM
 /media/backupsLVM/myHomeBackup.cpio.gz
# bzip2 myHomeBackup.tar
 /media/backupsLVM/myHomeBackup.cpio.bz2

Le deuxième exemple sauvegarde les fichiers du répertoire personnel de l'utilisateur user dont la date de dernière
modification est plus récente que celle du fichier test.txt
# find /home -type f | cpio -ov
|
bzip2 > /media/backupsLVM/myHomeBackup.cpio.bz2

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


ON BOARD COMPUTING AND AUTOMOTIVE MECHATRONICS ENGINEERING
UNIVERSITY SEASON 2022-2023

Pr. Abderrahim BAJIT


Associate Professor Researcher in Automotive and Avionic Embedded Systems
Professor of Intelligent Sensor Networks, Embedded Computing and embeded IoT.
Department of Electrical –GESE- & Automotive Mechatronics Engineering –GMA-
National School of Applied Sciences ENSA, Ibn Tofail University UIT, Kénitra Morocco.

INTRODUCTION TO EMBEDDED OPERATING SYSTEMS


ELEMENT 1. EMBARQUEMENT D’UN SYSTÈME D’EXPLOITATION
 COURS 1-1. STRUCTURE GENERALE DU SYSTEME D’EXPLOITATION LINUX
 Introduction -LINUX SYSTEM-;
 TP-1.1.1. Démarrage du système -SYSTEM BOOT;
 TP-1.1.2. Noyau et Modules -KERNEL;
 TP-1.1.3. Configuration du Hardware -HW;
 TP-1.1.4. Gestion des supports de Stockage -LVM;
 TP-1.1.5. Gestion de Software -SW;
 TP-1.1.6. Configuration Réseau -NETWORKING;
 Conclusion.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OS ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-SOFTWARE MANAGEMENT SW-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Objectifs
Il existe deux méthodes pour installer un logiciel sous Linux :
− à par r des paquetages binaires qui sont déjà compilés et construits par les éditeurs de logiciels ou de distribu ons ;
− à par r des paquetages comportant les codes sources.
La première méthode est celle qui est préférée mais la deuxième, s'avére indispensable dans des cas particuliers tels que :
− absence de paquetage binaire ;
− besoin d'une version plus récente que les versions binaires disponibles ou
− besoin de refaire la compila on d'un logiciel pour des raisons d'optimisation ou d'adaptation.
En général les étapes d'installation d'un logiciel à partir de ses codes sources sont :
− récupéra on du fichier archive ; − dépaquetage de l'archive ; − prépara on ou configura on de la compila on : pré-
compilation ; − compila on ; − installa on des fichiers binaires : post-compilation.
Points importants Installation à partir des codes sources :
– utilitaires usuels de compression et d'archivage ;
– utilisation de make pour compiler des programmes ;
– paramétrage du script de configuration ;
– emplacement des répertoires de code source.
Mots clés : /usr/src/, gunzip, gzip, bzip2, tar, configure, make, uname, install

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OS ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-SOFTWARE MANAGEMENT SW-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Il existe deux méthodes pour installer un logiciel sous Linux :


 à partir des paquetages binaires qui sont déjà compilés et construits par les éditeurs de logiciels ou de distributions ;
 à partir des paquetages comportant les codes sources.

La première méthode est celle qui est préférée mais la deuxième, qui est traitée dans cette section, peut s'avérer
indispensable dans des cas particuliers tels que :
 absence de paquetage binaire ;
 besoin d'une version plus récente que les versions binaires disponibles ou
 besoin de refaire la compilation d'un logiciel pour des raisons d'optimisation ou d'adaptation.

Les paquetages comportant les codes sources des logiciels sont distribués sous forme de
fichiers archives. Ces fichiers archives contiennent notamment README et INSTALL, les
fichiers qui décrivent les étapes d'installation à suivre.
En général les étapes d'installation d'un logiciel à partir de ses codes sources sont :
 récupération du fichier archive ;
 dépaquetage de l'archive ;
 préparation ou configuration de la compilation : pré-compilation ;
 compilation ;
 installation des fichiers binaires : post-compilation.
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM
COURSE 1.1.
LINUX OS ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-SOFTWARE MANAGEMENT SW-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Il existe deux méthodes pour installer un logiciel sous Linux :


 à partir des paquetages binaires qui sont déjà compilés et construits par les éditeurs de logiciels ou de distributions ;
 à partir des paquetages comportant les codes sources.

Récupération des codes sources


L'archive des codes sources d'un programme ou d'un logiciel peut être récupérée à partir du site hébergeant le projet
correspondant. Les sites tels que « www.gnu.org » et « sourceforge.net » sont des plates-formes d'hébergement pour de
nombreux projets open source. Les grands projets disposent de leurs propres plates-formes d'hébergement, par exemple le
projet serveur web Apache est hébergé par le site « www.apache.org ».

EXEMPLE WGET
Les exemples de cette section traitent l'installation pas à pas, à partir de codes sources, de
l'utilitaire GNU Wget.
La première étape consiste à récupérer la dernière version de l'utilitaire wget à partir du site FTP du projet GNU,
« http://ftp.gnu.org/gnu/wget/ ». Il s'agit du fichier wget-1.12.tar.gz.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OS ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-SOFTWARE MANAGEMENT SW-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

EXEMPLE WGET: téléchargement


Les exemples de cette section traitent l'installation pas à pas, à partir de codes sources, de l'utilitaire GNU Wget.
La première étape consiste à récupérer la dernière version de l'utilitaire wget à partir du site FTP du projet GNU, «
http://ftp.gnu.org/gnu/wget/ ». Il s'agit du fichier wget-1.12.tar.gz.
$ wget http://ftp.gnu.org/gnu/wget/wget-1.12.tar.gz

EXEMPLE WGET: Décompression et desarchivage


$ tar -xzvf wget-1.12.tar.gz

EXEMPLE WGET: accés au repertoire extrait de l’archive


L’affichage du contenu du répertoire wget-1.12 montre l'existence des fichiers README et INSTALL ainsi que celle du script
de configuration configure qui sera utilisé dans l'étape qui suit.
$ cd wget-1.12/
$ ls
ABOUT-NLS ChangeLog.README COPYING MAILING-LIST msdos util
aclocal.m4 config.log doc maint.mk NEWS windows AUTHORS config.status GNUmakefile Makefile poautogen.sh configure
INSTALL Makefile.am README
build-aux configure.ac lib Makefile.in src ChangeLog configure.bat m4 md5 tests

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OS ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-SOFTWARE MANAGEMENT SW-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

EXEMPLE WGET: Configuration de l’archive


Si on dispose du privilège root, on exécute le script ./configure sans préciser une valeur pour l'option --prefix. Par
défaut le répertoire d'installation est /usr/local.
$ ./configure (DEFAULT CONFIGURATION)

Par contre, si on ne dispose pas du privilège root, on doit exécuter le script ./configure en précisant un répertoire
d'installation. Dans la plupart des cas c'est le répertoire personnel qui est spécifié comme répertoire d'installation :
$ ./configure --prefix=FULL_DIRECTORY_PATH (CUSTOMIZED CONFIGURATION)

EXEMPLE WGET: Compilation


L'utilitaire make est utilisé pour la construction des programmes binaires à partir des fichiers sources. Il utilise le fichier
Makefile contenant les instructions de compilation à exécuter pour générer les codes binaires. La durée de l'étape de
compilation dépend de la taille du programme source à compiler.
L'un des problèmes rencontrés lors de l'installation à partir des sources est l'absence des bibliothèques et des fichiers en-
têtes. Si une bibliothèque biblioX est manquante, alors il faut installer le paquetage lib<biblioX> ainsi que le paquetage
lib<biblioX>-devel ou lib<biblioX>-dev correspondant.
La compilation du paquetage Wget est lancée par :
$ make

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OS ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-SOFTWARE MANAGEMENT SW-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

EXEMPLE WGET: Installation


Une fois que la compilation s'est déroulée sans erreurs, il faut copier les différents fichiers dans les répertoires adéquats : les
programmes binaires sous le répertoire bin, les bibliothèques sous le répertoire lib, les fichiers de configuration sous le
répertoire /etc, les pages manuels sous le répertoire man, etc. Cette copie peut être automatisée par la commande :La
compilation du paquetage Wget est lancée par : # make install
Il faut disposer du privilège root pour exécuter cette commande si, dans l'étape de pré-compilation, le script ./configure est
exécuté sans préciser une valeur pour l'option --prefix. Pour nettoyer l'arborescence du répertoire source des fichiers
générés par la compilation avant une éventuelle deuxième compilation, la commande suivante est utilisée :
$ make clean
L'installation place la nouvelle version de wget dans le répertoire /usr/local/bin. Les versions de wget sont:
$ whereis wget
wget: /usr/bin/wget /usr/local/bin/wget
$ /usr/bin/wget --version
GNU Wget 1.10 compilé sur linux-gnu.
$ /usr/local/bin/wget --version
GNU Wget 1.12 compilé sur linux-gnu.
EXEMPLE WGET: Désinstallation
Pour désinstaller le logiciel, le paramètre uninstall est utilisé. # make uninstall
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM
COURSE 1.1.
LINUX OS -SOFTWARE ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
MANAGEMENT SW-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Tutoriel d’installation du programme WGET


1. Installation d’un software SW à partir de son code source
Telechargement du SW archivé: $ wget http://ftp.gnu.org/gnu/wget/wget-1.12.tar.gz
Extraction de l’archive du SW: $ tar -xzvf wget-1.12.tar.gz
Acces au contenu de l’archive: $ cd wget-1.12/
Liste du Contenu de l’archive: $ ls (OPTIONAL)
Configuration du software: $ ./configure --prefix=$HOME $HOME=“/home/login_name”
Compilation du source du SW: $ make
Installation du software: # make install (SUPER USER ROOT)
Opertaion de nettoyage: $ make clean
Verfication de l’installation: $ whereis wget
Desinstalation du SW: # make uninstall (SUPER USER ROOT)

2. Installation automatique à partir du web


# apt-get install wget ou # aptitude install wget

3. Installation à partir code compilé obtenu du web arhivé en format .deb


# dpkg –-install wget-1.14.deb

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


ON BOARD COMPUTING AND AUTOMOTIVE MECHATRONICS ENGINEERING
UNIVERSITY SEASON 2022-2023

Pr. Abderrahim BAJIT


Associate Professor Researcher in Automotive and Avionic Embedded Systems
Professor of Intelligent Sensor Networks, Embedded Computing and embeded IoT.
Department of Electrical –GESE- & Automotive Mechatronics Engineering –GMA-
National School of Applied Sciences ENSA, Ibn Tofail University UIT, Kénitra Morocco.

INTRODUCTION TO EMBEDDED OPERATING SYSTEMS


ELEMENT 1. EMBARQUEMENT D’UN SYSTÈME D’EXPLOITATION
 COURS 1-1. STRUCTURE GENERALE DU SYSTEME D’EXPLOITATION LINUX
 Introduction -LINUX SYSTEM-;
 TP-1.1.1. Démarrage du système -SYSTEM BOOT;
 TP-1.1.2. Noyau et Modules -KERNEL;
 TP-1.1.3. Configuration du Hardware -HW;
 TP-1.1.4. Gestion des supports de Stockage -LVM;
 TP-1.1.5. Gestion de Software -SW;
 TP-1.1.6. Configuration Réseau -NETWORKING;
 Conclusion.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OS ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-NETWOK CONFIGURATION NET-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Objectifs
Configuration élémentaire d'un réseau :
- Configurer des interfaces réseaux afin de se connecter à un réseau local, filaire ou sans fil, et à un réseau étendu ;
- Communiquer entre les différents sous-réseaux d'un même réseau y compris les réseaux IPv4 et IPv6.
Points importants
Configuration avancée d'un réseau et dépannage : - Utilitaires de configuration et de manipulation des interfaces Ethernet.
- Configurer un hôte multiréseau ; - Configuration des réseaux sans fil.
- Configurer un client VPN ; - Utilitaires de manipulation des tables de routage.
- Résolution des problèmes de communication. - Utilitaires d'analyse de l'état des interfaces réseaux.
- Utilitaires de suivi et d'analyse du trafic TCP/IP
Dépannage des problèmes réseaux : - OpenVPN.
- Identifier et corriger les problèmes réseaux les plus fréquents ; - Localisation et contenu des fichiers de contrôle d'accès.
- Reconnaître les emplacements des fichiers de configuration. - Utilitaires de détection et d'affichage de l'état d'un réseau.
Notification des utilisateurs : - Utilitaires de récupération d'information sur la configuration réseau.
- Notifier aux utilisateurs les problèmes relatifs au système. - Méthodes d’information sur les périphériques détectés et utilisés.
- Fichiers et scripts d'initialisation du système.
- Automatisation de la communication avec les utilisateurs à travers les
messages de connexion.
- Notification aux utilisateurs des opérations de maintenance du système.
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM
COURSE 1.1.
LINUX OS ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-NETWOK CONFIGURATION NET-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

La connexion d'un hôte à un réseau IP nécessite des opérations d'installation et de configuration. Les étapes de la mise en
réseau sont :
– installation d'une interface réseau : cette étape consiste à installer une (ou plusieurs) carte réseau et à paramétrer
l'interface réseau correspondante. Elle suit la procédure générale d'installation d'un périphérique. Lors de l'installation du
système Linux, les cartes réseaux sont automatiquement détectées et configurées ;
– configuration IP : cette étape traite la configuration de niveau réseau ;
– test de la configuration : cette étape consiste à tester la configuration précédemment effectuée et à utiliser les utilitaires
de diagnostic en cas de problèmes réseaux.

Interface réseau: Détection des interfaces réseaux


Les interfaces réseaux sont identifiées par des noms de la forme type-numéro où type spécifie le type de l'interface réseau
et numéro est l'ordre de l'interface. Les types d'interface sont « eth » pour les interface Ethernet, « wlan » pour les
interfaces Wi-Fi, « ppp » pour les interfaces point à point, etc. Par exemple eth0 est la première interface Ethernet, eth1 est
la deuxième, etc.

La commande lshw permet d'identifier les interfaces réseaux. Elle affiche pour chaque interface l'information sur le bus, le
détail du pilote et les fonctionnalités supportées. EXEMPLE
La commande lshw de cet exemple détecte deux interfaces réseaux connectées sur le bus PCI. La première est une interface
de type Ethernet, nommée « eth0 » et gérée par le pilote « e1000e ». La deuxième est
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM
COURSE 1.1.
LINUX OS ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-NETWOK CONFIGURATION NET-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

# lshw -class network


*-network
description: Ethernet interface
product: 82562GT 10/100 Network Connection
vendor: Intel Corporation
physical id: 19
bus info: pci@0000:00:19.0
logical name: eth0
version: 03
serial: 00:1a:4b:90:df:b0
Pilotes et noms des interfaces réseaux
Pour les noyaux Linux modulaires, les pilotes des interfaces réseaux se présentent sous la forme de modules noyau. Lors de
démarrage du système, le noyau charge ces modules et attribue un nom à chaque interface. Avec les systèmes antérieurs à
udev le nom d'une interface est attribué comme un alias au nom du pilote dans le fichier /etc/modprobe.conf.
EXEMPLE
D'après le fichier /etc/modprobe.conf suivant, le nom « eth0 » est attribué à l'interface réseau gérée par le pilote « e1000e »
et le nom « wlan0 » à celle gérée par le pilote « iwl3945 ».
# cat /etc/modprobe.conf
alias eth0 e1000e
Pr. ABDERRAHIM BAJIT alias wlan0 iwl3945 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM
COURSE 1.1.
LINUX OS ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-NETWOK CONFIGURATION NET-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Paramétrage des interfaces Ethernet


L'utilitaire ethtool affiche et modifie les paramètres des interfaces Ethernet tels que autonegotiation, port speed, duplex
mode et Wake-on-LAN.
EXEMPLE
La ligne de commande suivante change le mode de fonctionnement de l'interface « eth0 » à « full duplex », fixe le débit à
100 Mb/s, active la négociation automatique et active le démarrage de l'hôte à la réception du paquet magique (wol g :
Wake-on-LAN = Wake on Magic Packet).
# ethtool -s eth0 speed 100 duplex full autoneg on wol g Link partner advertised auto-negotiation: No
# ethtool eth0 Speed: 100Mb/s
Settings for eth0: Duplex: Full
Supported ports: [ TP ] Port: Twisted Pair
Supported link modes: 10baseT/Half 10baseT/Full PHYAD: 1
100baseT/Half 100baseT/Full Transceiver: internal
Supports auto-negotiation: Yes Auto-negotiation: on
Advertised link modes: 100baseT/Full MDI-X: off
Advertised pause frame use: No Supports Wake-on: pumbag
Advertised auto-negotiation: Yes Wake-on: g
Link partner advertised link modes: Not reported Current message level: 0x00000001 (1)
Link partner advertised pause frame use: No Link detected: yes
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM
COURSE 1.1.
LINUX OS ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-NETWOK CONFIGURATION NET-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Les changements des paramètres des interfaces Ethernet par la commande ethtool sont
temporaires et seront perdus au prochain redémarrage du système. Afin de les rendre permanents, il faut spécifier ces
paramètres dans le fichier de configuration de l'interface.
Pour les distributions Debian et dérivées, la commande ethtool est spécifiée dans l'instruction pre-up du fichier de
configuration /etc/network/interfaces et pour les distributions Red Hat et dérivées les paramètres sont attribués à la
variable ETHTOOL_OPTS dans le fichier de configuration de l'interface correspondante (/etc/sysconfig/networkscripts/
ifcfg-eth0 pour l'interface eth0).

EXEMPLE
Cet exemple illustre le paramétrage permanent de l'interface « eth0 » de l'exemple précédent pour les deux types de
distributions. Pour les distributions Debian et dérivées, Debian-like:
# cat /etc/network/interfaces
auto eth0
...
pre-up /usr/sbin/ethtool -s eth0 speed 100 duplex full autoneg off wol g
et pour les distributions Red Hat et dérivées, RedHat-like:
# cat /etc/sysconfig/network-scripts/ifcfg-eth0
...
ETHTOOL_OPTS="speed 100 duplex full autoneg off wol g "
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM
COURSE 1.1.
LINUX OS ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-NETWOK CONFIGURATION NET-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

Les changements des paramètres des interfaces Ethernet par la commande ethtool sont
temporaires et seront perdus au prochain redémarrage du système. Afin de les rendre permanents, il faut spécifier ces
paramètres dans le fichier de configuration de l'interface.
Pour les distributions Debian et dérivées, la commande ethtool est spécifiée dans l'instruction pre-up du fichier de
configuration /etc/network/interfaces et pour les distributions Red Hat et dérivées les paramètres sont attribués à la
variable ETHTOOL_OPTS dans le fichier de configuration de l'interface correspondante (/etc/sysconfig/networkscripts/
ifcfg-eth0 pour l'interface eth0).

EXEMPLE
Cet exemple illustre le paramétrage permanent de l'interface « eth0 » de l'exemple précédent pour les deux types de
distributions. Pour les distributions Debian et dérivées, Debian-like:
# cat /etc/network/interfaces
auto eth0
...
pre-up /usr/sbin/ethtool -s eth0 speed 100 duplex full autoneg off wol g
et pour les distributions Red Hat et dérivées, RedHat-like:
# cat /etc/sysconfig/network-scripts/ifcfg-eth0
...
ETHTOOL_OPTS="speed 100 duplex full autoneg off wol g "
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM
COURSE 1.1.
LINUX OS ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-NETWOK CONFIGURATION NET-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

TUTORIEL 1: Configuration statique de la carte réseau eth0 du serveur DHCP


 1. Editer le fichier /etc/network/interfaces et y mettre le contenu suivant (Dans le menu VIRTUALBOX: changer le
mode d’accès au réseau: Réseau Interne ensa.net)
iface eth0 inet static
address 192.168.10.1
netmask 255.255.255.0
gateway 192.168.10.254
broadcast 192.168.10.255

 2. Relancer le service networking en lancant la commande


# service networking restart

 3. Démonter et monter la carte réseau


# ifdown eth0 puis # ifup eth0

 4. Véifier la configuration de la carte réseau


# ifconfig eth0
# ifconfig eth0 | grep inet addr

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OS ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-NETWOK CONFIGURATION NET-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

TUTORIEL 2: installation des paquetages nécessaires pour le serveur DHCP


 1. Editer le fichier /etc/network/interfaces et y mettre le contenu suivant (Dans le menu VIRTUALBOX: changer le
mode d’accès au réseau: NAT)
iface eth0 inet dhcp

 2. Relancer le service networking en lancant la commande


# service networking restart

 3. Se connecter sur INTERNET en démontant et montant la carte réseau eth0


# ifdown eth0
# ifup eth0

 4. Télécharger le paquetage par wget ou l’installer automatiquement par apt-get


# wget « CHEMIN DU SOURCE ISC-DHCP-SERVER »
# APPLIQUER L’INSTALLATION A PARTIR DU CODE SOURCE
OU
# apt-get install isc-dhcp-server

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OS ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-NETWOK CONFIGURATION NET-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

TUTORIEL 3: Configuration du serveur DHCP pour gérer le réseau local 192.168.10.0 du domaine (ensa.net)
 1. Editer le fichier /etc/dhcp/dhcp.conf et y mettre le contenu suivant
Subnet 192.168.10.0 netmask 255.255.255.0 {
...
option domain-routers 192.168.10.254;
range 192.168.10.10 192.168.10.20;
...
}

 2. Relancer le service isc-dhcp-server par la commande


# service isc-dhcp-server restart

 3. verifier le démarrage du serveur DHCP


# service isc-dhcp-server status

 4. Télécharger le paquetage par wget ou l’installer automatiquement par apt-get


# wget « CHEMIN DU SOURCE ISC-DHCP-SERVER »

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OS ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-NETWOK CONFIGURATION NET-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

TUTORIEL 4: Configuration dynamique de la carte réseau eth0 du client DHCP


 1. Editer le fichier /etc/network/interfaces et y mettre le contenu suivant (Dans le menu VIRTUALBOX: changer le
mode d’accès au réseau: Réseau Interne ensa.net)
iface eth0 inet dhcp

 2. Relancer le service networking en lancant la commande


# service networking restart

 3. Démonter et monter la carte réseau


# ifdown eth0 puis # ifup eth0

 4. Véifier la configuration de la carte réseau


# ifconfig eth0
# ifconfig eth0 | grep inet addr

 4. Véifier la connexion par ping sur le serveur


# ping 192.168.10.1

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OS ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-NETWOK CONFIGURATION NET-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

TUTORIEL 5: Automatiser le démarrage du client DHCP


 1. Coté Client: éditer le script startClient.sh et y mettre le contenu suivant
#!/bin/bash
# Démonter lacrte, relancer le service networking et monter la
# carte eth0 et en fin verifier la configuration
ifdown eth0
service networking restart
ifup eth0
ifconfig eth0

 2. Ajouter le droit d’execution au script /home/user/startClient.sh


# chmod u+x startClient.sh

 3. Exécuter le script de lancement du serveur DHCP


# sh startClient.sh
OU
#./ startClient.sh

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OS ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-NETWOK CONFIGURATION NET-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

TUTORIEL 5: Automatiser le démarrage du serveur DHCP


 1. Coté serveur: éditer le script startServer.sh et y mettre le contenu suivant
#!/bin/bash
# Démonter la carte, relancer le service networking et monter la
# carte eth0 et en fin verifier la configuration
ifdown eth0
service networking restart
ifup eth0
ifconfig eth0

# Démarrer le service isc-dhcp-server


service isc-dhcp-server restart && service isc-dhcp-server status

 2. Ajouter le droit d’execution au script startServer.sh


# chmod u+x startServer.sh

 3. Exécuter le script de lancement du serveur DHCP


# sh startServer.sh ou #./ startServer.sh

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


COURSE 1.1.
LINUX OS ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-NETWOK CONFIGURATION NET-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM-
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-

TUTORIEL 6: Automatiser le démarrage des services startServer.sh et startClient par le service INIT
 1. Coté serveur: démarrer le script startServer.sh au démarrage du service init
mv startServer.sh /etc/init.d
update-rc.d startServer.sh default

 2. Coté serveur: démarrer le script startClient.sh au démarrage du service init


mv startClient.sh /etc/init.d
update-rc.d startClient.sh default

 3. Coté serveur Rédémarrer les machines serveur et client et verifier la configuration réseau dans le domaine local
ensa.net
Coté serveur :
# init 6
...

Coté client:
# init 6
...
# ifconfig eth0 puis # ping 192.168.10.1

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM


ON BOARD COMPUTING AND AUTOMOTIVE MECHATRONICS ENGINEERING
UNIVERSITY SEASON 2022-2023

Pr. Abderrahim BAJIT


Associate Professor Researcher in Automotive and Avionic Embedded Systems
Professor of Intelligent Sensor Networks, Embedded Computing and embeded IoT.
Department of Electrical –GESE- & Automotive Mechatronics Engineering –GMA-
National School of Applied Sciences ENSA, Ibn Tofail University UIT, Kénitra Morocco.

INTRODUCTION TO EMBEDDED OPERATING SYSTEMS


ELEMENT 1. EMBARQUEMENT D’UN SYSTÈME D’EXPLOITATION
 COURS 1-1. STRUCTURE GENERALE DU SYSTEME D’EXPLOITATION LINUX
 Introduction -LINUX SYSTEM-;
 TP-1.1.1. Démarrage du système -SYSTEM BOOT;
 TP-1.1.2. Noyau et Modules -KERNEL;
 TP-1.1.3. Configuration du Hardware -HW;
 TP-1.1.4. Gestion des supports de Stockage -LVM;
 TP-1.1.5. Gestion de Software -SW;
 TP-1.1.6. Configuration Réseau -NETWORKING;
 Conclusion.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

Vous aimerez peut-être aussi