0% ont trouvé ce document utile (0 vote)
141 vues21 pages

Introduction aux OS embarqués Linux

Transféré par

OMAR ENNAJI
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)
141 vues21 pages

Introduction aux OS embarqués Linux

Transféré par

OMAR ENNAJI
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

15/10/2022

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

Pr. Abderrahim BAJIT


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

Pr ABDERRAHIM BAJIT
INTRODUCTION TO EMBEDDED OPERATING SYSTEMS
INTRODUCTION TO EMBEDDED OPERATING SYSTEM 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) ;
AGENDA  Mise en place et Manipulation d'un système Linux embarqué;
 INTRODUCTION  Travaux pratiques (Réalisation de trois 3 plateformes pratiques en INFORMATIQUE
 I. STRUCTURE GÉNÉRALE DES SYSTÈMES EMBARQUÉE développés en langages Python et C sur les micro contrôleurs basés
D’EXPLOITATION (ETUDE DE CAS LINUX) ; OS de type RPi 4 et non basés OS de type ESP32).
 II. CONFIGURATION DU NOYAU LINUX;
 III. EMBARQUEMENT DU NOYAU LINUX;
 ELEMENT 2. INFORMATIQUE, INTELLIGENCE & SÉCURITÉ EMBARQUÉES
 IV. DÉVELOPPEMENT D’APPLICATIONS POUR
SYSTÈMES EMBARQUÉS;  Informatique, Intelligence & Sécurité Embarquées;
 CONCLUSION  Développement d’applications pour systèmes embarqués;
Pr. Abderrahim BAJIT  Travaux pratiques (Réalisation de trois 3 plateformes pratiques en INFORMATIQUE
Associate Professor Researcher in Automotive and Avionic Embedded Systems
Professor of Intelligent Sensor Networks, Embedded Computing and embeded IoT.
EMBARQUÉE INTELLIGENTE ET SÉCURISÉE développés en langages Python et C sur
Department of Electrical –GESE- & Automotive Mechatronics Engineering –GMA- les micro contrôleurs basés OS de type RPi 4 et non basés OS de type ESP32).
National School of Applied Sciences ENSA, Ibn Tofail University UIT, Kénitra Morocco.
Pr. ABDERRAHIM BAJIT 1 INTRODUCTIONTOLINUXOPERATINGSYSTEM Pr. ABDERRAHIM BAJIT 3 INTRODUCTIONTOLINUXOPERATINGSYSTEM

ON BOARD COMPUTING AND AUTOMOTIVE MECHATRONICS ENGINEERING


AGENDA UNIVERSITY SEASON 2022-2023

INTRODUCTION -LINUX SYSTEM- Introduction

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


Associate Professor Researcher in Automotive and Avionic Embedded Systems
Le processus de démarrage du système Linux
1. DÉMARRAGE DU SYSTÈME BOOTING THE SYSTEM Fichier de configuration du Boot Linux;
Professor of Intelligent Sensor Networks, Embedded Computing and embeded IoT.
Department of Electrical –GESE- & Automotive Mechatronics Engineering –GMA-
Niveaux d’Exécution RL; & Services de contrôles rcS, rc des RL. National School of Applied Sciences ENSA, Ibn Tofail University UIT, Kénitra Morocco.

II. Noyau Linux et ses Modules chargeables


2. NOYAU ET MODULES KERNEL Composantes statique/Dynamique du Noyau Linux
Emplacement des composantes Statiques/Dynamiques;
INTRODUCTION TO EMBEDDED OPERATING SYSTEMS
Gestion des Modules du Noyau
ELEMENT 1. EMBARQUEMENT D’UN SYSTÈME D’EXPLOITATION
3. CONFIGURATION DU HARDWARE HW III. Configuration du Matériel HW
Configuration du Hardware
 COURS 1-1. STRUCTURE GENERALE DU SYSTEME D’EXPLOITATION LINUX
Hardware de type USB  Introduction -LINUX SYSTEM-;
Hardware de type PCI  TP-1.1.1. Démarrage du système -SYSTEM BOOT;
 TP-1.1.2. Noyau et Modules -KERNEL;
IV. Configuration du Matériel HW
4. GESTION DES SUPPORTS DE STOCKAGE LVM  TP-1.1.3. Configuration du Hardware -HW;
Configuration du Hardware
Hardware de type USB/PCI  TP-1.1.4. Gestion des supports de Stockage -LVM;
 TP-1.1.5. Gestion de Software -SW;
IV. Gestion de Software SW  TP-1.1.6. Configuration Réseau -NETWORKING;
5. GESTION DE SOFTWARE SW Types de Software: Source, Exécutables,
Installation de Software Sources/Exécutables  Conclusion.

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 Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

1
15/10/2022

COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX OS-  Cours 1-1: Introduction sur la structure Generale de LINUX -GENERAL STRUCTURE OF LINUX OS-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-  TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-  TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-  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..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..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-  TP-1.1..6. Configuration Réseau -NETWORKING-

INTRODUCTION DU SYSTÈME D’EXPLOITATION LINUX FONCTIONALITES INDESIRABLES: REPONSE NO


– Un système d’exploitation est l’interface entre l’utilisateur et ses applications et le matériel sur le quel s’exécuteront ses applications; – Se sont toutes les fonctionnalités jugées indésirables par le développeur
– l’OS fait abstraction entre le Software et le Hardware vont pouvoir s’exécuter ces applications. du noyau linux personnalisé;
– Une réponse par NO lors de la configuration du noyau élimine la
COMPOSANTES D’UN OS composante en question et la par la suite ne va plus figurer dans le système.
Un système d’Exploitation OS (OPERATING SYSTEM) se compose d’un:
- Noyau (KERNEL); KERNEL: REPONSE YES
- Ensemble de Modules chargeables (MODULES); – Une réponse par YES lors de la configuration du noyau intègre la
- Package d’Applications (API). composante en question et la par la suite elle va figurer dans le système;
– c’est la partie du noyau statique du noyau et son emplacement se trouve KERNEL
ARCHITECTURE D’UN OS sur le répertoire /boot;
Un système d’Exploitation OS dispose des architectures suivantes: – /boot contient toutes les autres versions du noyau a disposition du
- MONOLITHIQUE (KERNEL); système et de leurs iniramdisk.
KERNEL MODULES
- Structure a couches;
- Structure Hybride. KERNEL MODULES: FONCTIONALITES DYNAMIQUES REPONSE M
– c’est la partie du noyau dynamique du noyau et son emplacement se
OS/USER APPLICATIONS
trouve sur le répertoire /etc/modules/Kernel_Version;
– /etc/modules/Kernel_Versioncontient toutes les autres versions des
modules du noyau a disposition du système.
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION D’EXPLOITATION
-GENERAL STRUCTURE OF LINUX OS-  Cours 1-1: Introduction sur la structure Generale de LINUX -GENERAL STRUCTURE OF LINUX OS-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-  TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-  TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-  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..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..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-  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 Pr. ABDERRAHIM BAJIT 5 INTRODUCTIONTOLINUXOPERATINGSYSTEM

2
15/10/2022

ON BOARD COMPUTING AND AUTOMOTIVE MECHATRONICS ENGINEERING


UNIVERSITY SEASON 2022-2023
COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
Pr. Abderrahim BAJIT -BOOTING THE SYSTEM-  Cours 1-1: Introduction sur la structure Generale de LINUX
Associate Professor Researcher in Automotive and Avionic Embedded Systems  TP-1.1.1. Démarrage du système -BOOT-
Professor of Intelligent Sensor Networks, Embedded Computing and embeded IoT.  TP-1.1..2. Noyau et modules –KERNEL-
Department of Electrical –GESE- & Automotive Mechatronics Engineering –GMA-  TP-1.1..3. Configurtion Matérielle -HW-
National School of Applied Sciences ENSA, Ibn Tofail University UIT, Kénitra Morocco.  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 TO EMBEDDED OPERATING SYSTEMS
Objectifs
Personnalisation du processus de démarrage système
ELEMENT 1. EMBARQUEMENT D’UN SYSTÈME D’EXPLOITATION – interroger et modifier le comportement des services système dans différents niveaux d'exécution ;
 COURS 1-1. STRUCTURE GENERALE DU SYSTEME D’EXPLOITATION LINUX – configurer la procédure de démarrage des services.
 Introduction -LINUX SYSTEM-;
Récupération du système
 TP-1.1.1. Démarrage du système -SYSTEM BOOT;
– manipuler la séquence de démarrage et le mode récupération ;
 TP-1.1.2. Noyau et Modules -KERNEL; – utiliser les outils init et les options du noyau relatives à init.
 TP-1.1.3. Configuration du Hardware -HW;
 TP-1.1.4. Gestion des supports de Stockage -LVM; Points importants
 TP-1.1.5. Gestion de Software -SW; – Spécification du standard LSB (Linux Standard Base);
 TP-1.1.6. Configuration Réseau -NETWORKING; – Shell GRUB;
– Commandes de gestion de service.
 Conclusion.
Mots clés
/etc/inittab, /etc/init.d/, /etc/rc.d/, chkconfig, update-rc.d, mount, init, telinit.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION D’EXPLOITATION
-BOOTING THE SYSTEM-  Cours 1-1: Introduction sur la structure Générale de LINUX -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.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-  TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configuration Matérielle -HW-  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..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..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-  TP-1.1..6. Configuration Réseau -NETWORKING-

Le démarrage du système implique quatre programmes lancés – BIOS: A BIOS (basic input/output system) is the program a computer's microprocessor uses to start the computer system after
successivement : le BIOS (Basic Input Output System), le chargeur de it is powered on. It also manages data flow between the computer's operating system (OS) and attached devices, such as the hard
démarrage, le noyau et le processus init. disk, video adapter, keyboard, mouse and printer;
Le BIOS est le premier programme exécuté, il réside au niveau du – 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
ROM. Il charge les 512 premiers octets, ces 512 octets constituent le the OS. The computer's firmware –BIOS-, Unified Extensible Firmware Interface (UEFI) or another system -- carries out this
secteur d'amorçage ou le (Master Boot Record). operation by running a diagnostic testing sequence to determine if the computer's essential hardware is working properly;
Le MBR contient plusieurs informations sur les partitions du disque. Il - MBR: A master boot record (MBR) is a special type of boot sector at the very beginning of partitioned computer mass storage
inclut aussi le chargeur de démarrage (ou une partie du chargeur de devices like fixed disks or removable drives intended for use with IBM PC-compatible systems and beyond.
démarrage). The MBR holds the information on how the disc's sectors are divided into partitions, each partition notionally containing a file
Le chargeur de démarrage Grub (Grand Unified Bootloader) est utilisé system. The MBR also contains executable code to function as a loader for the installed operating system—usually by passing
sur la plupart des distributions Linux. Il est décomposé en deux control over to the loader's second stage.
parties. La première partie réside sur le MBR, elle charge la deuxième - BOOT LOADER: A bootloader, also spelled as boot loader or called boot manager and bootstrap loader, is a computer
partie qui se trouve dans une partition du disque. Une fois que la program that is responsible for booting a computer. GNU GRUB is a Multiboot boot loader. It was derived from GRUB, the GRand
deuxième partie du Grub est chargée, une interface est affichée Unified Bootloader. Briefly, a boot loader is the first software program that runs when a computer starts. It is responsible for
permettant à l'utilisateur de choisir quel système d'exploitation loading and transferring control to the operating system kernel software;
démarrer. - INITRAMDISK : In Linux systems, initrd (initial ramdisk) is a scheme for loading a temporary root file system into memory, to be
Le chargeur de démarrage exécute le noyau. Ce dernier continue le used as part of the Linux startup process. initrd and initramfs refer to two different methods of achieving this. Both are commonly
démarrage de la machine, il détecte et initialise les périphériques, used to make preparations before the real root file system can be mounted.
monte la partition racine et démarre le processus init.
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

3
15/10/2022

COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION D’EXPLOITATION
-BOOTING THE SYSTEM-  Cours 1-1: Introduction sur la structure Generale de LINUX -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.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-  TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-  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..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..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-  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 Processus init et niveau d'exécution: Le processus init est le premier processus utilisateur créé par le noyau lors du démarrage du
was originally authored in 1991 by Linus Torvalds for his i386-based PC, and it was soon adopted as the kernel for the GNU 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
operating system, which was written to be a free (libre) replacement for Unix. 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
Linux is provided under the GNU General Public License version 2 only, but it contains files under other compatible licenses. configuration /etc/inittab, le niveau d'exécution par défaut, et démarre les applications et les services requis dans ce niveau. Lors
Since the late 1990s, it has been included as part of a large number of operating system distributions, many of which are commonly 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
also called Linux. toutes les applications et tous les services seront arrêtés. Il existe sept niveaux d'exécution possibles, allant de 0 à 6. Chaque
– INIT: The init program starts all the processes we need to interact with the system, connect over the network, run databases and 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
just about everything else that needs to be running on the system. Typically, init starts dozens of processes and while these 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é
processes may start additional processes, any process on the system can be tracked back through its creators to the init process. 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
The init program brings the system up in a certain runlevel. Runlevelsdefine a mode for the system, and in each runlevel, different redémarrage du système.
processes can be started. The default runlevels for Linux are as follows: 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
Runlevel Description services requis sont généralement configurés pour être démarrés pour ces niveaux d'exécution.
0 Halt (shutdown) La distribution Red Hat et ses dérivés utilisent les niveaux d'exécution de la manière suivante :
1 Single user mode – 1 : mode mono-utilisateur, utilisé pour la maintenance et la récupération du système (recovery mode, l'administration et la
2 Multi-user mode, without NFS configuration, effectuer les tâches de maintenance critique, comme le redimensionnement des partitions ou la vérification du
3 Full multi-user mode 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,
4 Unused tandis que le niveau d'exécution 1 essaie de monter des systèmes de fichiers et lance quelques programmes systèmes.
5 Full multi-user mode with X11 (GUI) – 2 : mode console, multi-utilisateurs, sans le support réseau ; – 3 : mode multi-utilisateurs avec le support réseau ;
6 Reboot – 5 : mode multi-utilisateurs avec interface graphique. Les commandes init et telinit permettent de changer de RL.
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION D’EXPLOITATION
-BOOTING THE SYSTEM-  Cours 1-1: Introduction sur la structure Generale de LINUX -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.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-  TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-  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..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..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-  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|...)
# /etc/init.d/nomService action

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

4
15/10/2022

ON BOARD COMPUTING AND AUTOMOTIVE MECHATRONICS ENGINEERING


UNIVERSITY SEASON 2022-2023
COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
Pr. Abderrahim BAJIT -LINUX KERNEL & MODULES-  Cours 1-1: Introduction sur la structure Generale de LINUX
Associate Professor Researcher in Automotive and Avionic Embedded Systems  TP-1.1.1. Démarrage du système -BOOT-
Professor of Intelligent Sensor Networks, Embedded Computing and embeded IoT.  TP-1.1..2. Noyau et modules –KERNEL-
Department of Electrical –GESE- & Automotive Mechatronics Engineering –GMA-  TP-1.1..3. Configurtion Matérielle -HW-
National School of Applied Sciences ENSA, Ibn Tofail University UIT, Kénitra Morocco.  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 TO EMBEDDED OPERATING SYSTEMS
Objectifs
Composants du noyau
ELEMENT 1. EMBARQUEMENT D’UN SYSTÈME D’EXPLOITATION – identifier les versions d'un noyau stable ou en développement ;
 COURS 1-1. STRUCTURE GENERALE DU SYSTEME D’EXPLOITATION LINUX – utiliser les composants du noyau qui sont nécessaires aux matériels
 Introduction -LINUX SYSTEM-; 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
 TP-1.1.1. Démarrage du système -SYSTEM BOOT;
noyau
 TP-1.1.2. Noyau et Modules -KERNEL; Compilation d'un noyau – personnaliser et construire un noyau 2.6 pour des besoins
 TP-1.1.3. Configuration du Hardware -HW; – personnaliser la configuration du noyau ; spécifiques du système, par la mise à jour, la compilation ou la
 TP-1.1.4. Gestion des supports de Stockage -LVM; – compiler un noyau Linux 2.6 en incluant ou désactivant des modification des fichiers de configuration ;
 TP-1.1.5. Gestion de Software -SW; composants spécifiques du noyau. – construire et configurer les modules du noyau ;
 TP-1.1.6. Configuration Réseau -NETWORKING; – créer une image d'initialisation système (initrd) et installer un nouveau
Mise à jour d'un noyau noyau.
 Conclusion.
– 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 Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION D’EXPLOITATION
-LINUX KERNEL & MODULES-  Cours 1-1: Introduction sur la structure Generale de LINUX -LINUX KERNEL & MODULES-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-  TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-  TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-  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..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..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-  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 - procfs: The proc filesystem (procfs) is a special filesystem in Unix-like operating systems that presents information
n'importe quel matériel. Cette configuration générique comprend de nombreux pilotes de périphériques, mais aussi des about processes and other system information in a hierarchical file-like structure, providing a more convenient and
paramètres pour le noyau. On peut modifier ces paramètres afin d'adapter le noyau à des besoins spécifiques, augmenter standardized method for dynamically accessing process data held in the kernel than traditional tracing methods or direct
les performances, renforcer la sécurité, ou encore la fiabilité du système. 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
Dans certains cas, la modification du noyau est nécessaire afin d’ajouter de nouveaux pilotes de périphériques. Le code
information about the kernel and to change certain kernel parameters at runtime (sysctl).
source du pilote ajouté doit être intégré dans les structures de données du noyau. Ceci peut exiger la recompilation du
- Sysfs: sysfs is a pseudo file system provided by the Linux kernel that exports information about various kernel
noyau.
subsystems, hardware devices, and associated device drivers from the kernel's device model to user
Il existe quatre méthodes pour intervenir sur la configuration d’un noyau Linux :
space through virtual files. In addition to providing information about various devices and kernel subsystems, exported
– modification dynamique des paramètres de configuration du noyau ;
virtual files are also used for their configuration. sysfs provides functionality similar to the sysctl mechanism found
– construction d'un noyau à partir de zéro (compilation du code source, avec éventuellement des modifications et des
in BSD operating systems, with the difference that sysfs is implemented as a virtual file system instead of being a
ajouts) ;
purpose-built kernel mechanism, and that, in Linux, sysctl configuration parameters are made available at /proc/sys/ as
– chargement de modules dans un noyau existant, à la volée ;
part of procfs, not sysfs which is mounted at /sys/.
– passage de paramètres en utilisant le chargeur de démarrage : LILO ou GRUB.
- devfs is a specific implementation of a device file system on Unix-like operating systems, used for presenting device files.
Ces méthodes sont applicables dans des situations différentes. La modification dynamique des paramètres est la plus facile The underlying mechanism of implementation may vary, depending on the OS. Maintaining these special files on a
et la plus courante, tandis que la construction d'un noyau à partir des fichiers sources est la plus difficile et la moins souvent physically-implemented file system such as a hard drive is inconvenient, and as it needs kernel assistance anyway, the
nécessaire. 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 Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

5
15/10/2022

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

1. Tutoriel sur la modification des paramètres du noyau LINUX 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 Le noyau peut être ajusté dynamiquement à travers des paramètres du système. Ces paramètres sont accessibles et modifiables à partir des
/sys. Ce répertoire est composé d’une batterie de paramètres triés par type. Les types de paramètres sont fournis par: fichiers du répertoire /proc/sys.

EXEMPLE
$ ls /sys 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
bloc bus class dev devices firmware hypervisor fs kernel module power façon suivante : # echo 32768 > /proc/sys/fs/file-max
/sys/module/e1000;
/sys/fs/ext4/sda1; FICHIER DESCRIPTION
/proc/sys/fs/file-max Indique le nombre maximal de fichiers que le noyau peut manipuler
/sys/kernel/;
simultanément
/sys/devices/system/cpu (memory, machinecheck, ...); /proc/sys/kernel/ctrl-alt-del Contrôle la gestion de la séquence Ctrl-Alt-Supp du clavier. S'il contient
/sys/class/net/eth0. la valeur zéro, Ctrl-Alt-Supp est capturé et envoyé au programme init
pour relancer le système correctement.
Exemple /proc/sys/net/ipv4/icmp_echo_ignore_all Bloque les réponses au ping.
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: /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.
addresss, address-len, broadcast. Et ses drivers à partir de sa base /sys/class/net/eth0/device/driver
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 Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

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

2. Tutoriel sur l’installation d’un nouveau noyau LINUX 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: 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
 télécharger les patchs du site internet officiel www.kernel.org/pub/linux/kernel/v2.6/ à base l’outil wget; 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
 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 $ cd linux-2.6.0/
tar et gunzip ;
3. Configurer le nouveau noyau
 se connecter sur le répertoire obtenu par l’extraction de l’archive ; $ make menuconfig (oldconfig, xconfig, ...)

 configurer le noyau en choisissant sa partie statique à mettre dans /boot par Y (y), et sa partie modulaire à placer dans 4. Compiler le nouveau noyau
/lib/modules par la marque M (m) et l’élimination des éléments indésirables par la marque N (n) ou se documenter par $ make
la marque ?;
5. Installer le nouveau noyau et effacer le répertoire des fichiers temporaires
 Compiler du noyau statique, de ses modules, et de l’image initrd (RAM disc Initiale) et ajout d’une ligne dans le fichier du # make install && make modules_install
chargeur de démarrage GRUB; $ make clean

 Installer le nouveau noyau.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

6
15/10/2022

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

2. Tutoriel sur l’installation d’un nouveau noyau LINUX 2. Tutoriel sur l’installation d’un nouveau noyau LINUX
Listing de commandes EXEMPLE KERNEL LINUX-2.6.35.5.TAR.BZ2
$ wget www.kernel.org/pub/linux/kernel/v2.6/ Le code source du noyau 2.6.35 a été téléchargé, à partir du lien
linux-3.2.0.16.tar.bz2 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
$ tar -xjvf wget-1.12.tar.gz
$ cd linux-3.2.0.16/
l'arborescence du code source du noyau Linux 2.6.35.
$ ls $ tar xjfv linux-2.6.35.5.tar.bz2
$ ./configure --prefix=/media/embeddedKernel $ cd linux-2.6.35.5/
$ make
# make install $ ls
$ make clean 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 Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

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

3. Tutoriel sur la Mise à jour du noyau LINUX 3. Tutoriel sur la Mise à jour du noyau LINUX: suite
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; 1. Télécharger les patchs patch-2.6.35.5-6.bz2 et patch-2.6.35.5-6.bz2
 décompresser les patchs du format bz2 par l’outil bunzip2 et du format gz par l’outil gunzip ; $wget www.kernel.org/pub/linux/kernel/v2.6/incr/patch-2.6.35.5-6.bz2
 se connecter sur le répertoire obtenu ; $wget www.kernel.org/pub/linux/kernel/v2.6/incr/patch-2.6.35.6-7.bz2
 appliquer le patch par l’outil patch;
 examiner le fichier Makefile pour voir le changement de version du noyau. 2. Décompresser les patchs
$ bzip2 -dv patch-2.6.35.5-6.bz2
Exemple $ bzip2 -dv patch-2.6.35.6-7.bz2
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; 3. Appliquer la mise à jour après connexion sur le répertoire obtenu
un autre patch pour passer de la version 2.6.35.6 à la version 2.6.35.7. $ 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 Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

7
15/10/2022

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

4. Tutoriel sur la gestion des modules du noyau LINUX 4. Tutoriel sur la gestion des modules du noyau LINUX
 1. Chargement manuel du module vfat  1. Déchargement manuel des dépéndences du module vfat
# lsmod | grep vfat # lsmod | grep fat
# insmod /lib/modules/3.2.0-4-amd64/kernel/fs/fat/vfat.ko fat 45642 0
Error: unknown symbol in module (manque de dépéndences) # rmmod /lib/modules/3.2.0-4-amd64/kernel/fs/fat/fat.ko
Error: module fat is in use by: vfat
 2. Recherche et chargement des dépendences du module vfat # lsmod | grep vfat
# modinfo vfat vfat 17613 0
Filename: /lib/modules/3.2.0-4-amd64/kernel/fs/fat/vfat.ko fat 45642 1 vfat
Depends: fat
...  2. Déchargement manuel du module vfat
# insmod /lib/modules/3.2.0-4-amd64/kernel/fs/fat/fat.ko # rmmod /lib/modules/3.2.0-4-amd64/kernel/fs/fat/vfat.ko
# lsmod | grep fat # lsmod | grep fat
fat 45642 0 fat 45642 0
 3. Chargement manuel du module vfat
# insmod /lib/modules/3.2.0-4-amd64/kernel/fs/fat/vfat.ko  3. Déchargement manuel des dépéndences du module vfat
# lsmod | grep vfat # rmmod /lib/modules/3.2.0-4-amd64/kernel/fs/fat/fat.ko
vfat 17613 0 # lsmod | grep vfat
fat 45642 1 vfat
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

ON BOARD COMPUTING AND AUTOMOTIVE MECHATRONICS ENGINEERING


UNIVERSITY SEASON 2022-2023
COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-LINUX KERNEL & MODULES-  Cours 1-1: Introduction sur la structure Generale de LINUX Pr. Abderrahim BAJIT
 TP-1.1.1. Démarrage du système -BOOT- Associate Professor Researcher in Automotive and Avionic Embedded Systems
 TP-1.1..2. Noyau et modules –KERNEL- Professor of Intelligent Sensor Networks, Embedded Computing and embeded IoT.
 TP-1.1..3. Configurtion Matérielle -HW- Department of Electrical –GESE- & Automotive Mechatronics Engineering –GMA-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM- National School of Applied Sciences ENSA, Ibn Tofail University UIT, Kénitra Morocco.
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-
INTRODUCTION TO EMBEDDED OPERATING SYSTEMS
4. Tutoriel sur la gestion des modules du noyau LINUX
 1. Vérification du chargement du module vfat
# lsmod | grep vfat ELEMENT 1. EMBARQUEMENT D’UN SYSTÈME D’EXPLOITATION
 COURS 1-1. STRUCTURE GENERALE DU SYSTEME D’EXPLOITATION LINUX
 2. Chargement automatique du module vfat (sans tenir compte des dépendences)  Introduction -LINUX SYSTEM-;
# modprobe vfat  TP-1.1.1. Démarrage du système -SYSTEM BOOT;
# lsmod | grep vfat
 TP-1.1.2. Noyau et Modules -KERNEL;
vfat 17613 0
fat 45642 1 vfat  TP-1.1.3. Configuration du Hardware -HW;
 TP-1.1.4. Gestion des supports de Stockage -LVM;
 3. Déchargement automatique du module vfat (sans tenir compte des dépendences)  TP-1.1.5. Gestion de Software -SW;
# modprobe –r vfat  TP-1.1.6. Configuration Réseau -NETWORKING;
# lsmod | grep vfat
 Conclusion.

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

8
15/10/2022

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

Déterminer et configure les paramètres du matériel - procfs: The proc filesystem (procfs) is a special filesystem in Unix-like operating systems that presents information
Description: Etre capable de déterminer et configurer le matériel fondamental du système. 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
Domaine de connaissance: access to kernel memory. Typically, it is mapped to a mount point named /proc at boot time. The proc file system acts as
 Activer er désactiver les périphériques intégrés an interface to internal data structures about running processes in the kernel. In Linux, it can also be used to obtain
 Configurer le système avec et sans périphériques externes tels que le clavier information about the kernel and to change certain kernel parameters at runtime (sysctl).
 Différencier entre les différents types de périphériques de stockage de masse - Sysfs: sysfs is a pseudo file system provided by the Linux kernel that exports information about various kernel
 Savoir la différence entre les périphériques coldplug et hotplug subsystems, hardware devices, and associated device drivers from the kernel's device model to user
 Déterminer les ressources matérielles des périphériques space through virtual files. In addition to providing information about various devices and kernel subsystems, exported
 Outils et utilitaires pour lister les différentes informations des périphériques (e.g. lsusb, lspci, etc.) virtual files are also used for their configuration. sysfs provides functionality similar to the sysctl mechanism found
 Outlis et utilitaires pour manipuler les périphériques USB et PCI in BSD operating systems, with the difference that sysfs is implemented as a virtual file system instead of being a
 Comprendre le concept de gestion de périphérique par : sysfs, udev, dbus 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/.
Points importants
- devfs is a specific implementation of a device file system on Unix-like operating systems, used for presenting device files.
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
The underlying mechanism of implementation may vary, depending on the OS. Maintaining these special files on a
instantané du système et de touts ses périphériques.
physically-implemented file system such as a hard drive is inconvenient, and as it needs kernel assistance anyway, the
Mots clés idea arose of a special-purpose logical file system that is not physically stored. Defining when devices are ready to
/sys/, /proc/, /dev/, lsmod, lspci, lsusb,modprobe 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 Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

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

KERNEL Lister les attributs fournis par le système de fichiers virtuel SYSFS sur le répertoire de sa base de données
Driver core Export
Sysfs /sys /sys. Chaque carte réseau ethx dispose de son propre objet
NETLINK # ls /sys/class/net/eth0
Kernel
uevent object Gather information from sysfs
Afficher les informations sur les périphériques branchés sur le bus PCI
Udevd
NETLINK
Udev # lspci | grep -i ethernet
device create
Store device
Pass uevent to udev Afficher la configuration des périphériques branchés sur le bus PCI extrait à partir du système de fichier
information virtuel sysfs (CPU IRQ, CPU IO, KERNEL module)
Udev database
In memory
Udev # lspci -v -s 00:03.1 (bus:00, slot.func:03.1)
event process
Get stored device
information DBUS CONNECTION INSTANCE 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
Notify userspace Notify all other udevadm info –p /sys/class/net/eth0 -a
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 Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

9
15/10/2022

ON BOARD COMPUTING AND AUTOMOTIVE MECHATRONICS ENGINEERING


UNIVERSITY SEASON 2022-2023
COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
-HARDWARE CONFIGURATION HW-  Cours 1-1: Introduction sur la structure Generale de LINUX Pr. Abderrahim BAJIT
 TP-1.1.1. Démarrage du système -BOOT- Associate Professor Researcher in Automotive and Avionic Embedded Systems
 TP-1.1..2. Noyau et modules –KERNEL- Professor of Intelligent Sensor Networks, Embedded Computing and embeded IoT.
 TP-1.1..3. Configurtion Matérielle -HW- Department of Electrical –GESE- & Automotive Mechatronics Engineering –GMA-
 TP-1.1..4. Gestion Systèmes de Fichiers & des Supports de Stockage -LVM- National School of Applied Sciences ENSA, Ibn Tofail University UIT, Kénitra Morocco.
 TP-1.1..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-
INTRODUCTION TO EMBEDDED OPERATING SYSTEMS
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
ELEMENT 1. EMBARQUEMENT D’UN SYSTÈME D’EXPLOITATION
 COURS 1-1. STRUCTURE GENERALE DU SYSTEME D’EXPLOITATION LINUX
 Introduction -LINUX SYSTEM-;
Afficher les informations sur les périphériques branchés sur le bus USB
# lsusb | grep -i flash  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;
Afficher la configuration des périphériques branchés sur le bus USB extrait à partir du système de fichier
virtuel sysfs (IRQ, IO, module)  TP-1.1.4. Gestion des supports de Stockage -LVM;
# lsusb -v -s 001:043 (bus:001, devnum:043)  TP-1.1.5. Gestion de Software -SW;
 TP-1.1.6. Configuration Réseau -NETWORKING;
Afficher les informations sur les périphériques USB e par interrogation de la base du système de fichier  Conclusion.
virtuel sysfs
# udevadm info –p /sys/bus/usb/devices/1-3 -a

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

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

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


Opérations de sauvegarde : Les types de systèmes de fichiers
– sauvegarder les données importantes du système ; 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
– vérifier l'intégrité des fichiers de sauvegarde ; dans la version 0.96c du noyau Linux.
– restaurer les sauvegardes. 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.
Opérations de sauvegarde :
– supports de sauvegarde ; Système de fichiers Caractéristiques
– utilitaires de sauvegarde ; ext2 Extension du système de fichiers ext. Stable, usage général, peut être rétréci ou agrandi.
– solutions de sauvegarde réseau. 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.
Mots clés ext4 Une amélioration de ext3 pour supporter de grandes tailles de fichiers et de systèmes de fichiers.
cpio, dd, tar, mt, rsync, dump, restore XFS Stable, usage général, une récupération rapide, peut être étendu en ligne
/dev/st*, /dev/nst*, JFS Stable, usage général, une récupération rapide

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

10
15/10/2022

COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION D’EXPLOITATION
-FILE SYSTEMS MANAGEMENT LVM-  Cours 1-1: Introduction sur la structure Generale de LINUX -FILE SYSTEMS MANAGEMENT LVM-  Cours 1-1: Introduction sur la structure Generale de LINUX
 TP-1.1.1. Démarrage du système -BOOT-  TP-1.1.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-  TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-  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..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..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-  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
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
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, 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
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 utilité. En particulier, ext2 peut être un bon choix pour une petite partition ou pour les disques amovibles de petites tailles.
dans la version 0.96c du noyau Linux. Sur ces petites partitions, la taille du journal utilisé par ces systèmes de fichiers à journal peut servir à stocker les données.
Dans cette section, certains des systèmes de fichiers les plus couramment utilisés sous Linux seront examinés. Ils sont 1.2 ext3: Le système de fichiers ext3 est une extension de ext2. Il ajoute une fonctionnalité de journalisation qui augmente
énumérés dans le tableau 3 avec leurs principales caractéristiques. 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 Caractéristiques système de fichiers ext2 en un système de fichiers ext3 avec l’option –j de la commande tune2fs .
ext2 Extension du système de fichiers ext. Stable, usage général, peut être rétréci ou agrandi. EXEMPLE: Pour convertir la partition ext2 /dev/sda2 en ext3 : # tune2fs -j /dev/sda2
Ce système de fichiers n'a pas la fonctionnalité de journalisation. 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
ext3 Une amélioration de ext2. La fonctionnalité de journalisation est ajoutée pour permettre la fichiers se produit, les modifications nécessaires sont d'abord écrites dans le fichier journal. Ensuite le système de fichiers
récupération rapide du système de fichiers en cas de crash. est modifié. Si une coupure de courant ou une panne système survient pendant la mise à jour, on peut se référer au
ext4 Une amélioration de ext3 pour supporter de grandes tailles de fichiers et de systèmes de fichiers. fichier journal pour reconstruire un système de fichiers cohérent. La technique de journalisation permet de réduire
XFS Stable, usage général, une récupération rapide, peut être étendu en ligne considérablement le temps nécessaire au système de fichiers pour effectuer des contrôles de cohérence. Sauf pour des
JFS Stable, usage général, une récupération rapide 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 Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

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

Création de systèmes de fichiers 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 2.1 Commande mkfs: Le tableau 4 résume les principales options ext3 de la commande mkfs.
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. Tableau 4. Principales options ext3 de la commande mkfs
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 Option Description
type de système de fichiers. Par exemple : -V Affiche le numéro de la version de la commande mkfs.
 pour créer un système de fichiers ext3 on utilise la commande mkfs.ext3 ; -v Sortie bavarde
 pour les systèmes de fichiers ReiserFS, la commande est mkfs.reiserfs ; -c Vérifie le périphérique pour éliminer les secteurs défectueux avant de formater le système de fichiers.
 pour les systèmes de fichiers 6 bits de Windows (95/98), la commande est mkfs.vfat. -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
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 -b taille-de-bloc Définit la taille de bloc
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 Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

11
15/10/2022

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

Ajustement des paramètres des systèmes de fichiers ext[234] Vérification et réparation d’un système de fichiers
La commande tune2fs permet de modifier les paramètres ajustables d'un système de fichiers ext2, ext3 ou ext4. Les Généralement les systèmes de fichiers modernes sont fiables face aux pannes du système et du matériel. Des pannes du
principaux paramètres ajustables sont le label, le journal et les blocs réservés pour le super-utilisateur. noyau et des coupures du courant électrique peuvent engendrer des petites incohérences dans le système de fichiers. Ces
Le tableau 5 illustre les principales options de la commande tune2fs. dommages peuvent être résolus avec la commande fsck.

Tableau 5. Principales options de la commande tune2fs La commande fsck analyse les systèmes de fichiers et corrige les erreurs détectées, telles que :
Option Fonction  blocs de données non utilisés et non enregistrés ;
-c N Ajuste le nombre maximal de montages entre deux vérifications du système de fichiers. Si N vaut 0 ou -1, le  blocs de données marqués comme libres mais également utilisés dans un fichier ;
nombre de fois que le système de fichiers a été monté sera ignoré par la commande e2fsck et par le noyau.  inodes non référencés ;
-l Affiche le contenu du superbloc du système de fichiers.  répertoires non reliés au 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.  informations incorrectes dans le superbloc.
-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. Les disques sont généralement analysés au démarrage du système avec la commande fsck -p. Cette commande examine et
-L label Définit le nom de volume du système de fichiers. 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 Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

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

Vérification et réparation d’un système de fichiers Gestion des périphériques avec udev
EXEMPLE 8.1 Principe de fonctionnement
Pour analyser le système de fichiers /dev/sda5 : Au départ, les fichiers spéciaux des périphériques, appelés noeuds ou nodes, étaient créés manuellement dans le répertoire
# fsck -p /dev/sda5 /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.
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 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
est toujours vérifiée en premier. répertoire /dev en fonction de l'ajout ou de la suppression des périphériques du système.

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 Le service udev peut aussi charger automatiquement les pilotes des périphériques, assurer que les périphériques gardent
certain nombre de montages. La valeur par défaut est 25 démontages. C’est une bonne précaution, toutefois, sur les toujours les mêmes noms, indépendamment de leur ordre de branchement, et notifier aux autres programmes la présence
ordinateurs de bureau où les montages de systèmes de fichiers sont fréquents, faire un fsck tous les 25 montages peut d'un périphérique.
devenir fastidieux. On peut donc fixer à 50 le nombre maximum de montages entre deux vérifications.
La figure illustre le principe de fonctionnement du service udev : il écoute les messages du noyau, appelés uevent,
EXEMPLE concernant les changements d'état des périphériques. Il peut effectuer une variété d'actions quand un périphérique est
# tune2fs -c 50 /dev/sda3 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
tune2fs 1.35 (28-Feb-2004) et /lib/udev/rules.d/.
Setting maximal mount count to 50

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

12
15/10/2022

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

Gestion des périphériques avec udev Gestion des périphériques avec udev: EXEMPLE
8.1 Principe de fonctionnement On utilise la commande udevadm monitor --environment pour capturer le message du noyau (uevent), envoyé suite à la
La figure illustre le principe de fonctionnement du service udev : il écoute les messages du noyau, appelés uevent, connexion d'un disque USB.
concernant les changements d'état des périphériques. Il peut effectuer une variété d'actions quand un périphérique est $ udevadm monitor --environment
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 monitor will print the received events for:
et /lib/udev/rules.d/. 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 Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

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

TUTORIEL 1: CREATION, MAINTENANCE, MONTAGE, Et GESTION du SYSTÈME de FICHIERS TUTORIEL 1: CREATION, MAINTENANCE, MONTAGE, Et GESTION du SYSTÈME de FICHIERS
Concepts généraux du LVM  1. Partitionner un périphérique de stockage
La gestion des volumes logiques définit une couche d'abstraction de haut niveau sur les partitions physiques du disque dur. # fdisk /dev/sdb
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  2. Créer un système de fichiers
peut créer plusieurs volumes logiques qui seront accessibles comme des partitions classiques. Enfin, sur ces volumes # mkfs –t ext4 /dev/sdb1
logiques, on peut créer des systèmes de fichiers et les monter sur l'arborescence système.
 3. Maintenir l’état du syytème de fichiers
LVM offre ainsi plusieurs avantages. Avec ce module, on peut : # dumpe2fs /dev/sdb1
– avoir une utilisation et une allocation efficaces de l'espace de stockage, puisque les volumes logiques sont répartis sur # fsck /dev/sdb1
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  4. Mounter le système de fichiers
données ; # mkdir /media/myHomeBackup
– prendre des instantanés (snapshots) sur le système de fichiers. Ces instantanés servent à sauvegarder et restaurer les # mount /dev/sdb1 /media/myHomeBackup
données.
 5. Surveiller l’état du système de fichiers
# df –h /dev/sdb1
# du –s /dev/sdb1

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

13
15/10/2022

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

TUTORIEL 1: CREATION, MAINTENANCE, MONTAGE, Et GESTION du SYSTÈME de FICHIERS TUTORIAL 2: MONTAGE PERMANENT du SYSTÈME de FICHIERS
 6. Creation d’une archive du repertoire personnel  1. Configurer le système de fichiers pour le montage permanent
# tar cjvf myEtcArvhive.tar.bz2 /etc # nano /etc/fstab
...
 7. Deplacement de l’archive au point de montage /dev/sdb1 /mnt/myHomeBackup ext4 defaults 0 0
# mv myEtcArvhive.tar.bz2 /media/myHomeBackup
 2. Vérifier la configuration
 8. Verfication de l’emplacement de l’archive # echo ‘/dev/sdb1 ext4 /mnt/myHomeBackup defaults 0 0’ >> /etc/fstab
# ls –-color /media/myHomeBackup # cat /etc/fstab

 9. Demonter le support de stockage  3. Redémarrer le système de fichiers et test de configuration


# umount /dev/sdb1 ou bien umount /media/myHomeBackup # init 6
# mount | grep sdb1
 10. Verification de demontage du support de stockage  resultats
# ls –-color /media/myHomeBackup /dev/sdb1 /mnt/myHomeBackup ext4 defaults 0 0

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

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

TUTORIAL 3: BACKING UP USING LVM La configuration LVM sous Linux est faite en trois étapes :
Concepts généraux du LVM – création et initialisation des volumes physiques ;
La gestion des volumes logiques définit une couche d'abstraction de haut niveau sur les partitions physiques du disque dur. – ajout des volumes physiques à un groupe de volumes ;
Les volumes physiques (physical volumes ou pv) sont regroupés pour former des groupes de volumes (volume groups ou vg). – création des volumes logiques au sein du groupe de volumes.
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 Les commandes LVM commencent par deux lettres qui reflètent le niveau d'abstraction LVM :
logiques, on peut créer des systèmes de fichiers et les monter sur l'arborescence système. – les commandes pv manipulent les volumes physiques ;
– les commandes vg manipulent les groupes de volumes ;
LVM offre ainsi plusieurs avantages. Avec ce module, on peut : – les commandes lv manipulent les volumes logiques.
– avoir une utilisation et une allocation efficaces de l'espace de stockage, puisque les volumes logiques sont répartis sur
plusieurs disques physiques ; Les principales commandes de gestion des volumes physiques sont :
– augmenter et réduire la taille des volumes logiques sans risque d'interrompre des services du système ni de perdre des – pvcreate : initialise un périphérique (partition, disque ou volume RAID) comme un volume physique pour une utilisation
données ; par LVM ;
– prendre des instantanés (snapshots) sur le système de fichiers. Ces instantanés servent à sauvegarder et restaurer les – pvdisplay : affiche des informations détaillées sur un volume physique, y compris le nom du groupe de volumes auquel il
données. 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 Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

14
15/10/2022

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

Les principales commandes de gestion des groupes de volumes sont : TUTORIAL 3: BACKING UP
– vgcreate : crée un groupe de volumes ; STEP 0: Installing lvm2 package and Collecting physical volume components
– vgchange : modifie certains attributs d’un groupe de volumes, par exemple pour l’activer ou le désactiver ; # aptitude install lvm2
– vgdisplay : affiche les caractéristiques détaillées d'un volume logique. L’option –v permet de visualiser la liste des volumes # obtain /dev/sdc1 /dev/sdd1 and /dev/sde1 partitions (fdisk)
logiques et des volumes physiques de chaque groupe de volumes ;
– vgscan : analyse le système pour rechercher des groupes de volumes ; STEP 1: Creating a physical volume
– vgextend : ajoute des volumes physiques à un groupe de volumes existant ; # for i in sdc1 sdd1 sde1; do pvcreate /dev/$i; done
– vgreduce : supprime un ou plusieurs volumes physiques d'un groupe de volumes ; – vgremove : supprime un groupe de # pvdisplay -C
volumes ;
STEP 2: Creating a group volume
– vgrename : renomme un groupe de volumes ; – vgs : affiche des informations sommaires sur les groupes de volumes.
# vgcreate ensaVG /dev/sdb1 /dev/sdd1 /dev/sde1
# vgdisplay -C
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 ; STEP 3: Creating a logical volume of 5G
– lvrename : renomme un volume logique ; – lvchange : change les attributs d'un volume logique ; # lvcreate -n ensaLVM -L 5G ensaVG
– lvextend : augmente la taille d'un volume logique ; # lvdisplay -C
– 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 Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

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

TUTORIAL 3: BACKING UP TUTORIAL 3: BACKING UP


STEP 1: Creating a file system on the LVM volume support Le premier exemple sauvegarde les fichiers du répertoire personnel de l'utilisateur user dont la date de dernière
# mkfs -t ext4 /dev/ensaVG/ensaLVM modification est plus récente que celle du fichier test.txt
# tar cvf myHomeBackup.tar /home
STEP 2: Creating mount point
# mkdir /media/backupsLVM − Cet exemple montre comment compresser une archive par les outils gzip et bzip2:
# gzip myHomeBackup.tar /media/backupsLVM
STEP 3: Mounting the logical volume on the mount point  /media/backupsLVM/myHomeBackup.cpio.gz
# mount /dev/ensaVG/ensaLVM /media/backupsLVM # bzip2 myHomeBackup.tar
 /media/backupsLVM/myHomeBackup.cpio.bz2
STEP 4: display file system informations
# df -h /media/backupsLVM Le deuxième exemple sauvegarde les fichiers du répertoire personnel de l'utilisateur user dont la date de dernière
# mount | grep /dev/ensaVG/ensaLVM 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 Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

15
15/10/2022

ON BOARD COMPUTING AND AUTOMOTIVE MECHATRONICS ENGINEERING


UNIVERSITY SEASON 2022-2023
COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
Pr. Abderrahim BAJIT -SOFTWARE MANAGEMENT SW-  Cours 1-1: Introduction sur la structure Generale de LINUX
Associate Professor Researcher in Automotive and Avionic Embedded Systems  TP-1.1.1. Démarrage du système -BOOT-
Professor of Intelligent Sensor Networks, Embedded Computing and embeded IoT.  TP-1.1..2. Noyau et modules –KERNEL-
Department of Electrical –GESE- & Automotive Mechatronics Engineering –GMA-  TP-1.1..3. Configurtion Matérielle -HW-
National School of Applied Sciences ENSA, Ibn Tofail University UIT, Kénitra Morocco.  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 TO EMBEDDED OPERATING SYSTEMS
Objectifs
Il existe deux méthodes pour installer un logiciel sous Linux :
ELEMENT 1. EMBARQUEMENT D’UN SYSTÈME D’EXPLOITATION − à partir des paquetages binaires qui sont déjà compilés et construits par les éditeurs de logiciels ou de distributions ;
 COURS 1-1. STRUCTURE GENERALE DU SYSTEME D’EXPLOITATION LINUX − à partir des paquetages comportant les codes sources.
 Introduction -LINUX SYSTEM-; 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 :
 TP-1.1.1. Démarrage du système -SYSTEM BOOT; − absence de paquetage binaire ;
 TP-1.1.2. Noyau et Modules -KERNEL; − besoin d'une version plus récente que les versions binaires disponibles ou
 TP-1.1.3. Configuration du Hardware -HW; − besoin de refaire la compilation d'un logiciel pour des raisons d'optimisation ou d'adaptation.
 TP-1.1.4. Gestion des supports de Stockage -LVM; En général les étapes d'installation d'un logiciel à partir de ses codes sources sont :
 TP-1.1.5. Gestion de Software -SW; − 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.
 TP-1.1.6. Configuration Réseau -NETWORKING;
Points importants Installation à partir des codes sources :
 Conclusion.
– 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 Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION D’EXPLOITATION
-SOFTWARE MANAGEMENT SW-  Cours 1-1: Introduction sur la structure Generale de LINUX -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.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-  TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-  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..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..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-  TP-1.1..6. Configuration Réseau -NETWORKING-

Il existe deux méthodes pour installer un logiciel sous Linux : 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 binaires qui sont déjà compilés et construits par les éditeurs de logiciels ou de distributions ;
 à partir des paquetages comportant les codes sources.  à 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 Récupération des codes sources
indispensable dans des cas particuliers tels que : 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
 absence de paquetage binaire ; correspondant. Les sites tels que « www.gnu.org » et « sourceforge.net » sont des plates-formes d'hébergement pour de
 besoin d'une version plus récente que les versions binaires disponibles ou nombreux projets open source. Les grands projets disposent de leurs propres plates-formes d'hébergement, par exemple le
 besoin de refaire la compilation d'un logiciel pour des raisons d'optimisation ou d'adaptation. projet serveur web Apache est hébergé par le site « www.apache.org ».

Les paquetages comportant les codes sources des logiciels sont distribués sous forme de EXEMPLE WGET
fichiers archives. Ces fichiers archives contiennent notamment README et INSTALL, les Les exemples de cette section traitent l'installation pas à pas, à partir de codes sources, de
fichiers qui décrivent les étapes d'installation à suivre. l'utilitaire GNU Wget.
En général les étapes d'installation d'un logiciel à partir de ses codes sources sont : La première étape consiste à récupérer la dernière version de l'utilitaire wget à partir du site FTP du projet GNU,
 récupération du fichier archive ; « http://ftp.gnu.org/gnu/wget/ ». Il s'agit du fichier wget-1.12.tar.gz.
 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 Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

16
15/10/2022

COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION D’EXPLOITATION
-SOFTWARE MANAGEMENT SW-  Cours 1-1: Introduction sur la structure Generale de LINUX -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.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-  TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-  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..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..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-  TP-1.1..6. Configuration Réseau -NETWORKING-

EXEMPLE WGET: téléchargement EXEMPLE WGET: Configuration de l’archive


Les exemples de cette section traitent l'installation pas à pas, à partir de codes sources, de l'utilitaire GNU Wget. Si on dispose du privilège root, on exécute le script ./configure sans préciser une valeur pour l'option --prefix. Par
La première étape consiste à récupérer la dernière version de l'utilitaire wget à partir du site FTP du projet GNU, « défaut le répertoire d'installation est /usr/local.
http://ftp.gnu.org/gnu/wget/ ». Il s'agit du fichier wget-1.12.tar.gz. $ ./configure
$ wget http://ftp.gnu.org/gnu/wget/wget-1.12.tar.gz
Par contre, si on ne dispose pas du privilège root, on doit exécuter le script ./configure en précisant un répertoire
EXEMPLE WGET: Décompression et desarchivage d'installation. Dans la plupart des cas c'est le répertoire personnel qui est spécifié comme répertoire d'installation :
$ tar -xzvf wget-1.12.tar.gz $ ./configure --prefix=$HOME

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


L’affichage du contenu du répertoire wget-1.12 montre l'existence des fichiers README et INSTALL ainsi que celle du script L'utilitaire make est utilisé pour la construction des programmes binaires à partir des fichiers sources. Il utilise le fichier
de configuration configure qui sera utilisé dans l'étape qui suit. Makefile contenant les instructions de compilation à exécuter pour générer les codes binaires. La durée de l'étape de
$ cd wget-1.12/ compilation dépend de la taille du programme source à compiler.
$ ls L'un des problèmes rencontrés lors de l'installation à partir des sources est l'absence des bibliothèques et des fichiers en-
ABOUT-NLS ChangeLog.README COPYING MAILING-LIST msdos util têtes. Si une bibliothèque biblioX est manquante, alors il faut installer le paquetage lib<biblioX> ainsi que le paquetage
aclocal.m4 config.log doc maint.mk NEWS windows AUTHORS config.status GNUmakefile Makefile poautogen.sh configure lib<biblioX>-devel ou lib<biblioX>-dev correspondant.
INSTALL Makefile.am README La compilation du paquetage Wget est lancée par :
build-aux configure.ac lib Makefile.in src ChangeLog configure.bat m4 md5 tests $ make

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION D’EXPLOITATION
-SOFTWARE MANAGEMENT SW-  Cours 1-1: Introduction sur la structure Generale de LINUX -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.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-  TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-  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..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..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-  TP-1.1..6. Configuration Réseau -NETWORKING-

EXEMPLE WGET: Installation Tutoriel d’installation du programme WGET


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 1. Installation d’un software SW à partir de son code source
programmes binaires sous le répertoire bin, les bibliothèques sous le répertoire lib, les fichiers de configuration sous le Telechargement du SW archivé: $ wget http://ftp.gnu.org/gnu/wget/wget-1.12.tar.gz
répertoire /etc, les pages manuels sous le répertoire man, etc. Cette copie peut être automatisée par la commande :La Extraction de l’archive du SW: $ tar -xzvf wget-1.12.tar.gz
compilation du paquetage Wget est lancée par : # make install Acces au contenu de l’archive: $ cd wget-1.12/
Il faut disposer du privilège root pour exécuter cette commande si, dans l'étape de pré-compilation, le script ./configure est Liste du Contenu de l’archive: $ ls
exécuté sans préciser une valeur pour l'option --prefix. Pour nettoyer l'arborescence du répertoire source des fichiers Configuration du software: $ ./configure --prefix=$HOME
générés par la compilation avant une éventuelle deuxième compilation, la commande suivante est utilisée : Compilation du source du SW: $ make
$ make clean Installation du software: # make install
Opertaion de nettoyage: $ make clean
L'installation place la nouvelle version de wget dans le répertoire /usr/local/bin. Les versions de wget sont: Verfication de l’installation: $ whereis wget
$ whereis wget
wget: /usr/bin/wget /usr/local/bin/wget 2. Installation automatique à partir du web
$ /usr/bin/wget --version # apt-get install wget ou # aptitude install wget
GNU Wget 1.10 compilé sur linux-gnu.
$ /usr/local/bin/wget --version 3. Installation à partir code compilé obtenu du web arhivé en format .deb
GNU Wget 1.12 compilé sur linux-gnu. # dpkg –-install wget-1.14.deb
EXEMPLE WGET: Désinstallation
Pour désinstaller le logiciel, le paramètre uninstall est utilisé. # make uninstall
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

17
15/10/2022

ON BOARD COMPUTING AND AUTOMOTIVE MECHATRONICS ENGINEERING


UNIVERSITY SEASON 2022-2023
COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION
Pr. Abderrahim BAJIT -NETWOK CONFIGURATION NET-  Cours 1-1: Introduction sur la structure Generale de LINUX
Associate Professor Researcher in Automotive and Avionic Embedded Systems  TP-1.1.1. Démarrage du système -BOOT-
Professor of Intelligent Sensor Networks, Embedded Computing and embeded IoT.  TP-1.1..2. Noyau et modules –KERNEL-
Department of Electrical –GESE- & Automotive Mechatronics Engineering –GMA-  TP-1.1..3. Configurtion Matérielle -HW-
National School of Applied Sciences ENSA, Ibn Tofail University UIT, Kénitra Morocco.  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 TO EMBEDDED OPERATING SYSTEMS
Objectifs
Configuration élémentaire d'un réseau :
ELEMENT 1. EMBARQUEMENT D’UN SYSTÈME D’EXPLOITATION - Configurer des interfaces réseaux afin de se connecter à un réseau local, filaire ou sans fil, et à un réseau étendu ;
 COURS 1-1. STRUCTURE GENERALE DU SYSTEME D’EXPLOITATION LINUX - Communiquer entre les différents sous-réseaux d'un même réseau y compris les réseaux IPv4 et IPv6.
 Introduction -LINUX SYSTEM-; Points importants
 TP-1.1.1. Démarrage du système -SYSTEM BOOT; 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.
 TP-1.1.2. Noyau et Modules -KERNEL;
- Configurer un client VPN ; - Utilitaires de manipulation des tables de routage.
 TP-1.1.3. Configuration du Hardware -HW; - Résolution des problèmes de communication. - Utilitaires d'analyse de l'état des interfaces réseaux.
 TP-1.1.4. Gestion des supports de Stockage -LVM; - Utilitaires de suivi et d'analyse du trafic TCP/IP
 TP-1.1.5. Gestion de Software -SW; Dépannage des problèmes réseaux : - OpenVPN.
 TP-1.1.6. Configuration Réseau -NETWORKING; - 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.
 Conclusion. 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 Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION D’EXPLOITATION
-NETWOK CONFIGURATION NET-  Cours 1-1: Introduction sur la structure Generale de LINUX -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.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-  TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-  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..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..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-  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 # lshw -class network
réseau sont : *-network
– installation d'une interface réseau : cette étape consiste à installer une (ou plusieurs) carte réseau et à paramétrer description: Ethernet interface
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 product: 82562GT 10/100 Network Connection
système Linux, les cartes réseaux sont automatiquement détectées et configurées ; vendor: Intel Corporation
– configuration IP : cette étape traite la configuration de niveau réseau ; physical id: 19
– test de la configuration : cette étape consiste à tester la configuration précédemment effectuée et à utiliser les utilitaires bus info: pci@0000:00:19.0
de diagnostic en cas de problèmes réseaux. logical name: eth0
version: 03
Interface réseau: Détection des interfaces réseaux serial: 00:1a:4b:90:df:b0
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 Pilotes et noms des interfaces réseaux
et numéro est l'ordre de l'interface. Les types d'interface sont « eth » pour les interface Ethernet, « wlan » pour les Pour les noyaux Linux modulaires, les pilotes des interfaces réseaux se présentent sous la forme de modules noyau. Lors de
interfaces Wi-Fi, « ppp » pour les interfaces point à point, etc. Par exemple eth0 est la première interface Ethernet, eth1 est démarrage du système, le noyau charge ces modules et attribue un nom à chaque interface. Avec les systèmes antérieurs à
la deuxième, etc. udev le nom d'une interface est attribué comme un alias au nom du pilote dans le fichier /etc/modprobe.conf.
EXEMPLE
La commande lshw permet d'identifier les interfaces réseaux. Elle affiche pour chaque interface l'information sur le bus, le 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 »
détail du pilote et les fonctionnalités supportées. EXEMPLE et le nom « wlan0 » à celle gérée par le pilote « iwl3945 ».
La commande lshw de cet exemple détecte deux interfaces réseaux connectées sur le bus PCI. La première est une interface # cat /etc/modprobe.conf
de type Ethernet, nommée « eth0 » et gérée par le pilote « e1000e ». La deuxième est alias eth0 e1000e
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM Pr. ABDERRAHIM BAJIT alias wlan0 iwl3945 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

18
15/10/2022

COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION D’EXPLOITATION
-NETWOK CONFIGURATION NET-  Cours 1-1: Introduction sur la structure Generale de LINUX -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.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-  TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-  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..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..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-  TP-1.1..6. Configuration Réseau -NETWORKING-

Paramétrage des interfaces Ethernet Les changements des paramètres des interfaces Ethernet par la commande ethtool sont
L'utilitaire ethtool affiche et modifie les paramètres des interfaces Ethernet tels que autonegotiation, port speed, duplex temporaires et seront perdus au prochain redémarrage du système. Afin de les rendre permanents, il faut spécifier ces
mode et Wake-on-LAN. paramètres dans le fichier de configuration de l'interface.
EXEMPLE Pour les distributions Debian et dérivées, la commande ethtool est spécifiée dans l'instruction pre-up du fichier de
La ligne de commande suivante change le mode de fonctionnement de l'interface « eth0 » à « full duplex », fixe le débit à configuration /etc/network/interfaces et pour les distributions Red Hat et dérivées les paramètres sont attribués à la
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 : variable ETHTOOL_OPTS dans le fichier de configuration de l'interface correspondante (/etc/sysconfig/networkscripts/
Wake-on-LAN = Wake on Magic Packet). ifcfg-eth0 pour l'interface eth0).
# ethtool -s eth0 speed 100 duplex full autoneg on wol g Link partner advertised auto-negotiation: No
# ethtool eth0 Speed: 100Mb/s EXEMPLE
Settings for eth0: Duplex: Full Cet exemple illustre le paramétrage permanent de l'interface « eth0 » de l'exemple précédent pour les deux types de
Supported ports: [ TP ] Port: Twisted Pair distributions. Pour les distributions Debian et dérivées, Debian-like:
Supported link modes: 10baseT/Half 10baseT/Full PHYAD: 1 # cat /etc/network/interfaces
100baseT/Half 100baseT/Full Transceiver: internal auto eth0
Supports auto-negotiation: Yes Auto-negotiation: on ...
Advertised link modes: 100baseT/Full MDI-X: off pre-up /usr/sbin/ethtool -s eth0 speed 100 duplex full autoneg off wol g
Advertised pause frame use: No Supports Wake-on: pumbag et pour les distributions Red Hat et dérivées, RedHat-like:
Advertised auto-negotiation: Yes Wake-on: g # cat /etc/sysconfig/network-scripts/ifcfg-eth0
Link partner advertised link modes: Not reported Current message level: 0x00000001 (1) ...
Link partner advertised pause frame use: No Link detected: yes ETHTOOL_OPTS="speed 100 duplex full autoneg off wol g "
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION D’EXPLOITATION
-NETWOK CONFIGURATION NET-  Cours 1-1: Introduction sur la structure Generale de LINUX -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.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-  TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-  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..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..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-  TP-1.1..6. Configuration Réseau -NETWORKING-

Les changements des paramètres des interfaces Ethernet par la commande ethtool sont TUTORIEL 1: Configuration statique de la carte réseau eth0 du serveur DHCP
temporaires et seront perdus au prochain redémarrage du système. Afin de les rendre permanents, il faut spécifier ces  1. Editer le fichier /etc/network/interfaces et y mettre le contenu suivant (Dans le menu VIRTUALBOX: changer le
paramètres dans le fichier de configuration de l'interface. mode d’accès au réseau: Réseau Interne ensa.net)
Pour les distributions Debian et dérivées, la commande ethtool est spécifiée dans l'instruction pre-up du fichier de iface eth0 inet static
configuration /etc/network/interfaces et pour les distributions Red Hat et dérivées les paramètres sont attribués à la address 192.168.10.1
variable ETHTOOL_OPTS dans le fichier de configuration de l'interface correspondante (/etc/sysconfig/networkscripts/ netmask 255.255.255.0
ifcfg-eth0 pour l'interface eth0). gateway 192.168.10.254
broadcast 192.168.10.255
EXEMPLE
Cet exemple illustre le paramétrage permanent de l'interface « eth0 » de l'exemple précédent pour les deux types de  2. Relancer le service networking en lancant la commande
distributions. Pour les distributions Debian et dérivées, Debian-like: # service networking restart
# cat /etc/network/interfaces
auto eth0  3. Démonter et monter la carte réseau
... # ifdown eth0 puis # ifup 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:  4. Véifier la configuration de la carte réseau
# cat /etc/sysconfig/network-scripts/ifcfg-eth0 # ifconfig eth0
... # ifconfig eth0 | grep inet addr
ETHTOOL_OPTS="speed 100 duplex full autoneg off wol g "
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

19
15/10/2022

COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION D’EXPLOITATION
-NETWOK CONFIGURATION NET-  Cours 1-1: Introduction sur la structure Generale de LINUX -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.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-  TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-  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..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..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-  TP-1.1..6. Configuration Réseau -NETWORKING-

TUTORIEL 2: installation des paquetages nécessaires pour le serveur DHCP 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/network/interfaces et y mettre le contenu suivant (Dans le menu VIRTUALBOX: changer le  1. Editer le fichier /etc/dhcp/dhcp.conf et y mettre le contenu suivant
mode d’accès au réseau: NAT) Subnet 192.168.10.0 netmask 255.255.255.0 {
iface eth0 inet dhcp ...
option domain-routers 192.168.10.254;
 2. Relancer le service networking en lancant la commande range 192.168.10.10 192.168.10.20;
# service networking restart ...
}
 3. Se connecter sur INTERNET en démontant et montant la carte réseau eth0
# ifdown eth0  2. Relancer le service isc-dhcp-server par la commande
# ifup eth0 # service isc-dhcp-server restart

 4. Télécharger le paquetage par wget ou l’installer automatiquement par apt-get  3. verifier le démarrage du serveur DHCP
# wget « CHEMIN DU SOURCE ISC-DHCP-SERVER » # service isc-dhcp-server status
# APPLIQUER L’INSTALLATION A PARTIR DU CODE SOURCE
OU  4. Télécharger le paquetage par wget ou l’installer automatiquement par apt-get
# apt-get install isc-dhcp-server # wget « CHEMIN DU SOURCE ISC-DHCP-SERVER »

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION D’EXPLOITATION
-NETWOK CONFIGURATION NET-  Cours 1-1: Introduction sur la structure Generale de LINUX -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.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-  TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-  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..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..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-  TP-1.1..6. Configuration Réseau -NETWORKING-

TUTORIEL 4: Configuration dynamique de la carte réseau eth0 du client DHCP TUTORIEL 5: Automatiser le démarrage du client DHCP
 1. Editer le fichier /etc/network/interfaces et y mettre le contenu suivant (Dans le menu VIRTUALBOX: changer le  1. Coté Client: éditer le script startClient.sh et y mettre le contenu suivant
mode d’accès au réseau: Réseau Interne ensa.net) #!/bin/bash
iface eth0 inet dhcp # Démonter lacrte, relancer le service networking et monter la
# carte eth0 et en fin verifier la configuration
 2. Relancer le service networking en lancant la commande ifdown eth0
# service networking restart service networking restart
ifup eth0
 3. Démonter et monter la carte réseau ifconfig eth0
# ifdown eth0 puis # ifup eth0
 2. Ajouter le droit d’execution au script /home/user/startClient.sh
 4. Véifier la configuration de la carte réseau # chmod u+x startClient.sh
# ifconfig eth0
# ifconfig eth0 | grep inet addr  3. Exécuter le script de lancement du serveur DHCP
# sh startClient.sh
 4. Véifier la connexion par ping sur le serveur OU
# ping 192.168.10.1 #./ startClient.sh

Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM

20
15/10/2022

COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME COURSE 1.1. LINUX OPERATING SYSTEM ELEMENT I. MÉTHODOLOGIE D’EMBARQUEMENT D’UN SYSTÈME
D’EXPLOITATION D’EXPLOITATION
-NETWOK CONFIGURATION NET-  Cours 1-1: Introduction sur la structure Generale de LINUX -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.1. Démarrage du système -BOOT-
 TP-1.1..2. Noyau et modules –KERNEL-  TP-1.1..2. Noyau et modules –KERNEL-
 TP-1.1..3. Configurtion Matérielle -HW-  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..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..5. Gestion de Paquetages Sources et Binaires -SW-
 TP-1.1..6. Configuration Réseau -NETWORKING-  TP-1.1..6. Configuration Réseau -NETWORKING-

TUTORIEL 5: Automatiser le démarrage du serveur DHCP TUTORIEL 6: Automatiser le démarrage des services startServer.sh et startClient par le service INIT
 1. Coté serveur: éditer le script startServer.sh et y mettre le contenu suivant  1. Coté serveur: démarrer le script startServer.sh au démarrage du service init
#!/bin/bash mv startServer.sh /etc/init.d
# Démonter la carte, relancer le service networking et monter la update-rc.d startServer.sh default
# carte eth0 et en fin verifier la configuration
ifdown eth0  2. Coté serveur: démarrer le script startClient.sh au démarrage du service init
service networking restart mv startClient.sh /etc/init.d
ifup eth0 update-rc.d startClient.sh default
ifconfig eth0
 3. Coté serveur Rédémarrer les machines serveur et client et verifier la configuration réseau dans le domaine local
# Démarrer le service isc-dhcp-server ensa.net
service isc-dhcp-server restart && service isc-dhcp-server status Coté serveur :
# init 6
 2. Ajouter le droit d’execution au script startServer.sh ...
# chmod u+x startServer.sh
Coté client:
# init 6
 3. Exécuter le script de lancement du serveur DHCP ...
# sh startServer.sh ou #./ startServer.sh # ifconfig eth0 puis # ping 192.168.10.1
Pr. ABDERRAHIM BAJIT 6 INTRODUCTIONTOLINUXOPERATINGSYSTEM 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

21

Vous aimerez peut-être aussi