Vous êtes sur la page 1sur 74

INFORMATIQUE APPLIQUÉE: CSI 4200

ADMINISTRATION DES
SYSTÈMESD’EXPLOITATION
Diomède NZISABIRA
Administration des systèmes d’exploitation

Avant-propos
L’Université Virtuelle Africaine (UVA) est fière de participer à accès à l’éducation dans les pays
africains en produisant du matériel d’apprentissage de qualité. Nous sommes également fiers
de contribuer à la connaissance globale, pour nos ressources éducatives sont principalement
accessibles de l’extérieur du continent africain.

Ce module a été développé dans le cadre d’un programme de diplôme et diplôme en


informatique appliquée, en collaboration avec 18 institutions partenaires dans 16 pays africains.
Un total de 156 modules ont été développés ou traduits pour assurer la disponibilité en
anglais, français et portugais. Ces modules sont également disponibles en tant que ressources
éducatives ouvertes (OER) à oer.avu.org.

Au nom de l’Université Virtuelle Africaine et notre patron, nos institutions partenaires,


la Banque africaine de développement, je vous invite à utiliser ce module dans votre
établissement, pour leur propre éducation, partager aussi largement que possible et participer
activement aux communautés AVU de pratique d’intérêt. Nous nous engageons à être à
l’avant-garde du développement et de partage ouvert de ressources pédagogiques.

L’Université Virtuelle Africaine (UVA) est une organisation intergouvernementale


panafricaine mis en place par lettre recommandée avec un mandat d’augmenter l’accès
à l’enseignement supérieur et de formation de qualité grâce à l’utilisation novatrice des
technologies de communication de l’information. Une charte instituant la UVA Organisation
intergouvernementale, signée à ce jour par dix-neuf (19) Les gouvernements africains - Kenya,
Sénégal, Mauritanie, Mali, Côte d’Ivoire, Tanzanie, Mozambique, République démocratique du
Congo, Bénin, Ghana, République de Guinée, le Burkina Faso, le Niger, le Soudan du Sud, le
Soudan, la Gambie, la Guinée-Bissau, l’Ethiopie et le Cap-Vert.

Les institutions suivantes ont participé au programme informatique appliquée: (1) Université
d’Abomey Calavi au Bénin; (2) University of Ougagadougou au Burkina Faso; (3) Université
Lumière Bujumbura Burundi; (4) Université de Douala au Cameroun; (5) Université de
Nouakchott en Mauritanie; (6) Université Gaston Berger Sénégal; (7) Université des Sciences,
Techniques et Technologies de Bamako au Mali (8) Institut de la gestion et de l’administration
publique du Ghana; (9) Université des sciences et de la technologie Kwame Nkrumah au
Ghana; (10) Université Kenyatta au Kenya; (11) Université Egerton au Kenya; (12) Université
d’Addis-Abeba en Ethiopie (13) Université du Rwanda; (14) University of Salaam en Tanzanie
Dar; (15) Université Abdou Moumouni Niamey Niger; (16) Université Cheikh Anta Diop au
Sénégal; (17) Université pédagogique au Mozambique; E (18) L’Université de la Gambie en
Gambie.

Bakary Diallo

le Recteur

Université Virtuelle Africaine

2
Crédits de production
Auteur
Diomede Nzisabira

Pair Réviseur

Cherif Diallo

UVA – Coordination Académique

Dr. Marilena Cabral

Coordinateur global Sciences Informatiques Apliquées

Prof Tim Mwololo Waema

Coordinateur du module

Robert Oboko

Concepteurs pédagogiques

Elizabeth Mbasu

Benta Ochola

Diana Tuel

Equipe Média
Sidney McGregor Michal Abigael Koyier

Barry Savala Mercy Tabi Ojwang

Edwin Kiprono Josiah Mutsogu

Kelvin Muriithi Kefa Murimi

Victor Oluoch Otieno Gerisson Mulongo

3
Administration des systèmes d’exploitation

Droits d’auteur
Ce document est publié dans les conditions de la Creative Commons

Http://fr.wikipedia.org/wiki/Creative_Commons

Attribution http://creativecommons.org/licenses/by/2.5/

Le gabarit est copyright African Virtual University sous licence Creative Commons Attribution-
ShareAlike 4.0 International License. CC-BY, SA

Supporté par

Projet Multinational II de l’UVA financé par la Banque africaine de développement.

4
Table des matières
Avant-propos 2

Crédits de production 3

Copyright Remarquer 4

Remerciements 5

Aperçu sur du cours 10

Prérequis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

Matériel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

Objectif du cours . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

Unités. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

Calendrier d’exécution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

Ressources. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

Unité 0: Prérequis 14

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

Objectifs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

Mots-clés: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

Activité 0.1 : Historique et Philosophie de Linux . . . . . . . . . . . . . . . . . . 14

Introduction 14

0.1.1 Historique 14

0.1.2 Philosophie de Unix 15

Rappel 16

Ressources documentaires 16

Activité 0.2 : Processus d’installation . . . . . . . . . . . . . . . . . . . . . . . . 16

Introduction 16

Résumé de l’unité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

Évaluation de l’unité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

0.2.1 Choix de la distribution 17

0.2.2 Partitionnement et système de fichiers 17

5
Administration des systèmes d’exploitation

0.2.3 Procédure d’installation générique 18

Conclusion : 18

Lectures et autres ressources . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

Evaluation de l’activité :. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

Résumé de l’unité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

Evaluation de l’unité d’apprentissage. . . . . . . . . . . . . . . . . . . . . . . 19

Unité 1:Gestion des utilisateurs et des groups 20

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

Objectifs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

Activité 1.1: Utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21

Introduction 21

1.1.1 Hiérarchie des comptes 21

1.1.2 Gestion des utilisateurs 21

Mots Clé. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21

1.1.2.1 Création d’un compte d’utilisateur 22

1.1.2.2 Suppression d’un compte d’utilisateur 24

1.1.2.3 Modification d’un compte d’utilisateur : 25

Conclusion 25

Evaluation de l’activité :. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Activité 1.2 Gestion des groupes . . . . . . . . . . . . . . . . . . . . . . . . . 26

Introduction 26

1.2.1 Création d’un groupe 26

1.2.2 Modification d’un groupe 26

1.2.3 Suppression d’un groupe 27

Conclusion 27

Activité 1.2.3 : Conversion des fichiers de mots de passe et actions de

l’utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27

Introduction 27

Evaluation de l’activité :. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27

1.2.3.1 conversions de fichiers 28

6
1.2.3.2 Vérification de cohérence 28

1.2.3.3 Actions de l’utilisateur 28

Conclusion : 30

Evaluation de l’activité. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

Résumé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

Système de notation 31

Critères d’évaluation 31

Evaluation de l’unité : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31

Unité 2:Système de fichiers et gestion des disques 32

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

Objectifs : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

Mots Clé. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

Activité 2.1 : Système de fichiers . . . . . . . . . . . . . . . . . . . . . . . . . 33

Introduction 33

2.1.1 Principe 33

2.1.2 Comparaison de systèmes de fichiers 34

2.1.3 Création d’un système de fichiers 35

2.1.4 Montage d’un système de fichiers 35

Conclusion 36

Activité 2.2 : Partitionnement . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

Introduction 36

Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

2.2.1 Organisation d’un disque 37

Remarque : 37

2.2.2 Manipulation des partitions 39

Remarque : 40

2.2.2 Le swap 40

Conclusion 42

Evaluation : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

Activité 2.3 : Les quotas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

5
Administration des systèmes d’exploitation

Introduction 43

2.3.1 Mise place de quotas 43

Conclusion 45

Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

Système de notation 46

Critères d’évaluation 46

Lectures et autres ressources . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

Résumé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

Evaluation de l’unité. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

Unité 3: Sauvegarde et restauration 47

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47

Objectifs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47

Mots Clé. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47

Activité 3.1: Aperçu général . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

Introduction 48

3.1.1 Définition de la sauvegarde 48

3.1.2 Importance de la sauvegarde 48

3.1.3 Quels fichiers doivent être sauvegardés ? 49

3.1.4 Fréquence et support de sauvegarde 49

3.1.4 Restauration 49

Évaluation 50

Conclusion 50

Activité 3.2: Méthodes et stratégies de sauvegarde. . . . . . . . . . . . . . . . 50

Introduction 50

3.2.1 Méthode de sauvegarde 50

3.2.2 Stratégie de sauvegarde 51

Conclusion 51

Activité 3.3 Quelques commandes utiles pour la sauvegarde et la restauration. . . 51

Introduction 51

Évaluation 51

6
3.3.1 La commande dump 52

3.3.2 La commande restore 53

3.3.3 La commande tar 53

3.3.4 La commande cpio 54

3.3.5 La commande dd 55

Évaluation 56

Conclusion 56

Système de notation 57

Critères d’évaluation 57

Lectures et autres ressources . . . . . . . . . . . . . . . . . . . . . . . . . . . .57

Résumé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

Evaluation de l’unité. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .57

Unité 4: Sécurité 58

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

Objectifs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

Mots Clé. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

Activité 4.1: Contrôle des droits d’endossement . . . . . . . . . . . . . . . . . . 59

Introduction 59

4.1.1 Contrôler les droits d’endossement 59

4.1.2 Politique de mot de passe 59

4.1.3 Interdiction des connexions 60

Conclusion 62

Activité 4.2: Mots de passe et rootkits . . . . . . . . . . . . . . . . . . . . . . . 62

Introduction 62

Évaluation 62

4.2.1 Test de mot de passe 63

4.2.2 Recherche des rootkits. . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

4.2.2.1 Principe du rootkits 64

4.2.2.2 chkrootkit 64

Conclusion 65

7
Administration des systèmes d’exploitation

Activité 4.3: Sécurité des services et des réseaux. . . . . . . . . . . . . . . . . 65

Introduction 65

4.3.1 Vérification des ports ouverts . . . . . . . . . . . . . . . . . . . . . . . . 65

4.3.1.1 Les sockets 65

Evaluation 65

4.3.1.2 Informations depuis netstat 66

4.3.1.3 L’outil nmap 67

4.3.2 Suppression des services inutiles . . . . . . . . . . . . . . . . . . . . . . .67

4.3.2.1 Généralités. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .67

4.3.2.2 Services standalone 68

Conclusion 68

Evaluation 68

Système de notation 69

Critères d’évaluation 69

Résumé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

Evaluation de l’unité. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

Résumé du module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

Examen Final . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

8
Aperçu sur du cours

Aperçu sur du cours


Les systèmes d’exploitation sont au centre des activités informatiques. Un système
d’exploitation est un programme qui agit comme un intermédiaire entre un utilisateur d’un
ordinateur, des logiciels d’application et le matériel informatique. Deux objectifs principaux
d’un des systèmes d’exploitation sont à gérer les ressources (par exemple le temps CPU,
mémoire) et de contrôler les utilisateurs et les logiciels.

Ce cours introduit les étudiants à l’administration des systèmes d’exploitation. Il traite de


l’utilisateur / gestion du groupe, système de fichiers et la gestion de disque, la sauvegarde, la
récupération ainsi que la sécurité du système.

Prérequis
Ce module a pour prérequis le module d’Introduction aux systèmes d’exploitation.

Matériel
Pour accomplir ce module, le matériel requis est :

• Un ordinateur avec le système d’exploitation linux


• Un navigateur
• Une connexion internet.

Objectif du cours
A la fin de ce module, l’apprenant devra être en mesure de :

1. Gérer les utilisateurs et des groupes ;

2. Configurer le système de fichier et gérer les disques ;

3. Faire la sauvegarde et la restauration ;

4. Appliquer les mesures de sécurité du système.

Unités
Unité 0: Pré-requis

Cette unité donne un aperçu sur le système d’exploitation. Il traite de la définition, les services,
les exigences, les environnements, l’installation et la configuration du système d’exploitation.

9
Administration des systèmes d’exploitation

Unité 1: Gestion des utilisateurs et des groupes

Les systèmes d’exploitation modernes sont multiutilisateurs et multitâche. Dans Linux, chaque
utilisateur possède son propre répertoire d’enregistrement de fichiers. Les utilisateurs
possèdent des droits d’accès est chaque utilisateur est au moins rattaché à un groupe. Dans
cette unité d’apprentissage, nous allons détailler les tâches de gestion des utilisateurs et des
groupes.

Unité 2: Système de fichiers et gestion de disque

« Un système de fichiers (abrégé « FS » pour File System1, parfois filesystem en anglais) ou


système de gestion de fichiers (SGF) est une façon de stocker les informations et de les
organiser dans des fichiers sur ce que l’on appelle les mémoires secondaires (disque dur,
CD-ROM, etc.) ». Source : https://fr.wikipedia.org/wiki/Syst%C3%A8me_de_fichiers

Gérer les fichiers alors revient à conserver, partager et restituer les données des fichiers
entre utilisateurs et applications. Cette unité explique la notion de système de fichiers, leur
implantation ainsi que la gestion des disques et des quotas.

Unité 3: Sauvegarde et restauration

La sauvegarde est un processus qui consiste à conserver les données, par une duplication, sur
un support externe du système informatique. Cela permet de garantir que les données ne
seront pas perdues si un sinistre venait de se produire. Une fois les données sauvegardées il
est impératif de pouvoir les restituer en état lorsque c’est nécessaire. Dans cette unité, nous
allons détailler les notions de sauvegarde et de restauration de données. Plusieurs questions
y relatif seront répondues en l’occurrence : que faut-il sauvegarder ? Quand faut-il effectuer la
sauvegarde ? Comment effectuer la sauvegarde/restauration des données.

Unité 4: Sécurité

Le principal objectif de cette unité est d’éclairer les étudiants sur la façon dont ils peuvent
sécuriser le système informatique. Différentes commandes en rapport avec la sécurité du
système seront abordées dans cette unité.

10
Aperçu sur du cours

Evaluation

1 Evaluation continue Ponderation (%)

1.1 Test I 10

1.2 Test II 10

1.3 Test III 10

1.4 Test IV 5

1.4 Travaux pratiques (étude de cas) 25

2 Examen final 40

Total 100

Calendrier d’exécution

Unité Intitulé Temps (heures)

0 Pré-requis 10

1 Gestion des utilisateurs et des groupes 32

2 Système de fichiers et gestion de quotas 33

3 Sauvegarde et restauration de données 30

4 Sécurité 15

Total 120

Ressources
Unité 0:

• Andew Tanenbaum, Systèmes d’exploitation 2ème édition, chapitre 1


• A Silberschatz, Peter B Galvin, G Gagne: Operating System Concepts, 7th edition,
Chapter 1 and 2 https://doc.ubuntu-fr.org/cohabitation_ubuntu_windows
Unité1 :

• Linux System Administration, Vicki Stanfield, Roderick W. Smith, Sybex., 2nd


Edition, 2002, Chapter 5
• LPI – Linux System Administration, Revision 1.0, 2000, Chapter 6
• http://www.control-escape.com/linux/users-groups.html, Users and Groups,
February 24, 2006
• http://www.tldp.org/HOWTO/Shadow-Password-HOWTO-2.html, Why shadow
your passwd file?, February 24, 2006

11
Administration des systèmes d’exploitation

• http://www.w3resource.com/linux-system-administration/user-management.php,
User Management, February 24, 2016

Unité 2:

• Linux System Administration, Vicki Stanfield, Roderick W. Smith, Sybex., 2nd


Edition, 2002, Chapter 6
• LPI – Linux System Administration, Revision 1.0, 2000, Chapter 5
• http://www.lifl.fr/~forget/CoursSyst/disques.pdf
• http://public.loligrub.be/contrib/tlepoint/BASE/node38.html
• http://www.linuxplanet.com/linuxplanet/tutorials/6666/1

Unité 3:

• http://www.pcmag.com/article2/0,2817,899676,00.asp; Backup Methods and


Rotation Schemes; BY MATTHEW D. SARREL; FEBRUARY 21, 2003
• www.tandbergdata.com/us ;Tape Rotation BEST PRACTICES The Tandberg Data
SMB Guide to Backup Data Protection Strategies for the Small-to-Medium Size
Business p.10 Basic Backup Guide
• http://public.loligrub.be/contrib/tlepoint/BASE/node38.html
• https://doc.ubuntu-fr.org/quota
• http://www.labo-microsoft.org/articles/win/quotas_disque/

Unité 4:

• Linux System Administration, Vicki Stanfield, Roderick W. Smith, Sybex., 2nd


Edition, 2002, Chapter 15
• LPI – Linux System Administration, Revision 1.0, 2000, Chapter 9
• [Moore] Moore, Sonia Marie (Ed.). “MS Windows NT Workstation 4.0 Resource
Guide.” 1995. http://www.microsoft.com/technet/archive/ntwrkstn/reskit/default.
mspx.

12
Unité 0: Prérequis

Unité 0: Prérequis
Introduction
Le logiciel système est un ensemble de logiciels qui gèrent et exploitent les composants du
système informatique. Au cours de cette activité, nous allons voir l’environnement du SE et les
différentes étapes d’installation d’un SE.

Objectifs
À la fin de cette unité, vous devriez être capable de:

• Démontrer une bonne connaissance des fonctionnalités du système


d’exploitation ;
• Installer le système d’exploitation linux

Mots-clés:
Système d’exploitation : Un logiciel système qui fait
fonctionner les autres programmes (application)

Système Informatique : Un ensemble d’équipements


destiné au traitement (enregistrement, modification,
suppression, restitution) automatique de l’information.

Activité 0.1 : Historique et Philosophie de Linux

Introduction
La vie de Linux est intimement liée à celle de son ancêtre Unix. On ne peut donc pas parler de
Linux sans parler d’Unix. Ainsi, D’un point de vue purement technique, Linux est simplement
une variante d’Unix. Qu’est –ce qui a motivé la création d’Unix ? Comment a été son évolution
? Quelle est sa philosophie ? Telles sont les questions qui seront abordé dans cette unité.

0.1.1 Historique
On doit l’origine de Unix à Richard Stallman un chercheur du laboratoire sur l’Intelligence
Artificielle MIT (États-Unis), qui a lancé le projet GNU (Licence Publique Général) afin de réagir
à une pratique alors émergente consistant à conserver secret le code source des logiciels tout
en rendant obligatoire l’achat de licences. Son but était de recréer un environnement complet
exempt de restrictions et disposant de tous les outils nécessaires à n’importe quel utilisateur.

13
Administration des systèmes d’exploitation

Le modèle qu’il a retenu était celui d’Unix, parce qu’il était techniquement supérieur aux autres
environnements de l’époque. Etant opposé à la distribution sous licence d’Unix par AT&T, il a
appelé son projet GNU, acronyme récursif de « GNU n’est pas Unix » (N.d.T. : GNU’s Not Unix).

Les dates clés de ces deux systèmes d’exploitation sont résumées sur le schéma ci-dessous:

Figure 1: Historique

Pour plus de détails sur l’historique, vous pouvez consulter les liens suivants :

http://projet.unix.free.fr/historique.htm

0.1.2 Philosophie de Unix


Sous unix, tout est fichier (fichiers, répertoires, devices, liens, etc.). Ceux-ci doivent être
lisible par l’homme et exploitable simplement par la machine. Unix est multitâche : Plusieurs
processus s’exécutent en même temps et le SE assure son contrôle.

Il est multiutilisateur : C’est-à-dire que plusieurs utilisateurs peuvent se connecter et utiliser les
processus simultanément.

Le Kernel et le SE

Le noyau est le cœur du système, c’est lui qui s’occupe de fournir aux logiciels une interface
pour utiliser le matériel. Il assure non seulement la gestion de l’accès aux ressources machines
(droits, ordonnancement, gestion des accès) mais aussi le chargement de modules (drivers).

Le SE (OS) permet de gérer le système via l’interface proposé par le Kernel (système de
fichiers, réseau, droit, périphérique).

14
Unité 0: Prérequis

Résumé de l’unité

Linux dérive directement de Unix. L’historique de Unix constitue par conséquent celui de Linux.
Les deux SE sont GNU (Licence Publique Général) mais des versions payantes existent. Le
but de ses concepteurs était de recréer un environnement complet exempt de restrictions et
disposant de tous les outils nécessaires à n’importe quel utilisateur. Pour ces SE, le cœur du
système est le noyau. Il se charge de fournir aux logiciels une interface pour utiliser le matériel.

Évaluation de l’unité
Cette évaluation est composée par une série de question de simple compréhension

1. Quelles sont les périodes clé de l’historique de Linux ?

2. Quel est le rôle du noyau de Linux ?

3. Discuter de la philosophie de Linux.

Système de notation :

• Pour toute réponse incorrecte (0 points)


• Pour une réponse incomplète (0,5 points)
• Pour toute réponse correcte (1 point)

Rappel
Unix est l’ancêtre de Linux. Dans Unix(Linux) toutes les ressources sont considérées comme des
fichiers. Le SE Unix(Linux) possède un noyau chargé de fournir aux logiciels une interface pour
utiliser le matériel.

Ressources documentaires
http://projet.unix.free.fr/historique.htm

Activité 0.2 : Processus d’installation

Introduction
Pour installer Linux, plusieurs étapes doivent être suivies. Comme tout système d’exploitation
Linux a un ensemble d’exigences. Il convient alors de connaître les spécificités de chaque
version que l’on veut installer au regard des caractéristiques techniques de votre machine. Au
cours de cette activité, nous allons explorer les différentes versions de Linux, leurs exigences,
ainsi que les différentes manières d’installer Linux.

15
Administration des systèmes d’exploitation

0.2.1 Choix de la distribution


Il existe un grand nombre de distributions Linux aussi importantes les unes que les autres. Si
l’une d’entre elles était réellement meilleure que toutes les autres, la question du choix ne se
poserait pas, et il n’y aurait aucun problème. Mais en réalité, chaque distribution a son public,
et le choix doit se faire en fonction de ses besoins et de ses désirs. Chose qui, évidemment,
n’est pas forcément évidente quand on n’a jamais installé Linux. Une description exhaustive de
chaque distribution est donnée sur le site lui dédiée.

Pour quelques détails sur les distributions visitez la page web suivante :

http://linux.developpez.com/tutoriels/debuter-installation/guide-linux-distribution/#LII

0.2.2 Partitionnement et système de fichiers


L’installation d’un système d’exploitation tel que Linux sur un PC touche aux structures de
données fondamentales du disque dur et est de ce fait une opération très sensible. Il est donc
nécessaire de connaître certaines notions de base afin de savoir ce que l’on est en train de
faire. Cette section a donc pour but de vous présenter ce qu’est une partition et un système de
fichiers, comment choisir un plan de partitionnement, et comment l’accès aux partitions se fait
dans un système Linux.

Une « partition » est, comme son nom l’indique, une partie d’un disque dur. Les partitions
permettent de diviser l’espace de stockage des disques durs en zones indépendantes de
taille restreinte. La notion de partition permet de réserver certaines portions du disque dur
à un usage particulier, et de bien séparer les données qui se trouvent dans chaque partition.
L’opération de « partitionnement » est l’opération de création des différentes partitions d’un
disque dur.

L’installation de plusieurs systèmes d’exploitation nécessite souvent d’allouer une partition à


chaque système, car les systèmes d’exploitation ne comprennent généralement pas le format
des partitions des autres systèmes. Il est également parfois nécessaire, pour un même système,
de définir plusieurs partitions, qui seront utilisées à des fins spécifiques. Par exemple, Linux
fonctionne nettement mieux si on lui attribue une partition de « swap » (dite aussi « partition
d’échange ») pour stocker des données peu utilisées qui se trouve en mémoire, lorsqu’il a
besoin de plus de mémoire qu’il n’en est physiquement installée sur la machine. De même, il
est possible de créer plusieurs partitions pour séparer les données utilisateurs des programmes,
ce qui permet de faciliter les mécanismes de sauvegarde d’une part, et d’assurer une plus
grande sécurité des données lors des opérations de maintenance du système d’autre part.

Sur les machines de type PC, chaque disque dur peut être découpé en quatre partitions
dites « primaires ». La position, la taille et le type de ces partitions sont enregistrées dans le
premier secteur du disque dur, que l’on appelle souvent le « Master Boot Record » (« MBR »
en abrégé). Le MBR ne contient que quatre entrées pour la définition des partitions, d’où la
limite de quatre partitions primaires. Le type des partitions est un code numérique qui indique
le système d’exploitation capable de l’utiliser et sa nature (partition de swap ou système de
fichiers par exemple). À titre d’exemple, Linux utilise principalement deux types de partition :

16
Unité 0: Prérequis

les partitions de swap (numéro 82) et les partitions pour les systèmes de fichiers (type 83).

La définition des partitions se fait donc en donnant leur point de départ, leur taille et leur type.
Le point de départ et la longueur des partitions sont exprimées en secteurs. Un « secteur » est
l’unité de base pour les données des disques durs, qui correspond à un bloc de 512 octets
utiles (auxquels s’ajoutent bien entendu d’éventuels octets de contrôle d’erreur, mais qui ne
sont manipulés que par le disque dur lui-même et par son contrôleur, et que l’on ne peut donc
pas utiliser pour y stocker des données). Cela dit, certains systèmes (ceux de Microsoft) ne
permettent pas une telle finesse dans la définition des partitions et nécessitent de travailler au
niveau du cylindre.

Les détails de partitionnement sont donnés dans la section 4 de l’unité 2 de ce cours.

NB :

On peut installer deux systèmes d’exploitation (Windows et Linux par exemple)


sans être obligé de créer deux partitions (Détails : https://doc.ubuntu-fr.org/
cohabitation_ubuntu_windows).

0.2.3 Procédure d’installation générique


L’installation d’un système d’exploitation est une opération délicate, surtout si l’on modifie les
partitions, puisqu’il faut travailler au niveau le plus bas. La moindre erreur peut provoquer une
catastrophe, ce qui peut au mieux vous obliger à recommencer complètement l’installation, et
au pire à perdre l’ensemble de vos données, y compris celles des autres systèmes installés. Par
conséquent : il faut commencer par sauvegarder les données. Une fois la sauvegarde faite et
que l’on connaît comment partitionner le disque on peut commencer l’installation. Les étapes
génériques d’installation sont :

• L’amorçage du système ;
• La création ou redimensionnement des partitions du disque dur ;
• La création des systèmes de fichiers et de la partition d’échange ;
• L’installation du système proprement dite ;
• L’installation du gestionnaire d’amorçage ;
• La configuration du système.

Conclusion :
L’installation de Linux suit un ensemble d’étapes. Les distributions étant nombreuses, il
est impératif de se décider sur la distribution à installer. Par la suite les étapes clés de son
installation sont : l’amorçage du système, la création ou redimensionnement des partitions
du disque dur, la création des systèmes de fichiers et de la partition d’échange, l’installation
du système proprement dite, l’installation du gestionnaire d’amorçage et la configuration du
système.

17
Administration des systèmes d’exploitation

Evaluation de l’activité :
1. Discuter des critères à prendre en compte pour le choix de la distribution
à un installer.

2. Présenter les principales étapes d’installation de Linux

3. Expliquer le système de fichier sous Linux.

Résumé de l’unité

Au cours de cette unité, nous avons passé de long en large l’historique, la philosophie de Linux
ainsi que le processus d’installation. Linux considère l’ensemble des ressources comme des
fichiers. Le SE Linux présente un noyau qui sert d’interface aux différents logiciels afin de leur
permettre d’utiliser le matériel. Linux est un système multiutilisateur et permet la gestion des
ressources en garantissant leur partage.

Evaluation de l’unité d’apprentissage


1. Quel est l’importance d’un système d’exploitation ?

2. Donner les avis que pourrait vous motiver à choisir le SE Linux par rapport
à Windows.

3. Procéder à l’installation du SE Linux Ubuntu et commenter les étapes clés.

Lectures et autres ressources


https://doc.ubuntu-fr.org/cohabitation_ubuntu_windows

http://linux.developpez.com/tutoriels/debuter-installation/guide-linux-distribution/#LII

http://projet.unix.free.fr/historique.htm

Andew Tanenbaum, Systèmes d’exploitation 2ème édition, chapitre 1

A Silberschatz, Peter B Galvin, G Gagne: Operating System Concepts, 7th edition, Chapter 1
and 2

18
Unité 1:Gestion des utilisateurs et des groups

Unité 1:Gestion des utilisateurs et


des groups
Introduction
Dans toute entreprise, la sécurisation de ses données est une grande préoccupation pour
l’entreprise concernée. Une bonne gestion des utilisateurs et des groupes constitue une
bonne base de sécurité et de stabilité de votre système. Dans le système, les utilisateurs et
les groupes sont repérés par des numéros (numéro utilisateur pour les utilisateurs : uid [user
identifier] et le numéro de groupe :gid [Group Identifier]). Ce numéro est unique pour un
utilisateur/groupe donné. Dans cette unité, vous apprendrez les principales activités de gestion
des utilisateurs et des groupes à savoir : définir un utilisateur et un groupe, créer un utilisateur
et un groupe, modifier un utilisateur et un groupe, affecter les utilisateurs à un groupe,
distinguer les droits d’accès, etc.

Objectifs
A la fin de ce module, l’apprenant devra être capable de :

1. Créer un utilisateur/groupe ;

2. Modifier un utilisateur/groupe ;

3. Supprimer un utilisateur/groupe ;

4. Ajouter un utilisateur à un groupe ;

5. Distinguer les droits d’accès.

19
Administration des systèmes d’exploitation

Mots Clé
Utilisateur : C’est une entité reconnu par le système par
son nom et éventuellement son mot de passe.

Ressource : Une désigne toute entité dont a besoin un


processus pour s’exécuter

Groupe : Unité de regroupement des utilisateurs. Un


groupe est destiné à contenir les utilisateurs ayant les
mêmes droits. Le groupe est moyen de simplifier la
tâche de gestion des utilisateurs.

L’authentification : Reconnaissance de l’utilisateur par les


données d’identification.

Root : Super utilisateur ou utilisateur principal


(administrateur)

Activité 1.1: Utilisateur

Introduction
Tout utilisateur d’un système doit être connu de celui-ci. Cela est fait grâce au nom utilisateur
et/ou mot de passe. Un utilisateur peut appartenir à un ou plusieurs groupes d’utilisateurs pour
être autorisé à utiliser le système. Dans cette activité, vous apprendrez à identifier et contrôler
les utilisateurs via le fichier /etc/passwd.

1.1.1 Hiérarchie des comptes

• Root : C’est un super utilisateur. Les permissions d’accès ne sont pas appliquées
sur lui il peut faire tous. C’est un compte pour l’administrateur du système.
• bin, daemon, lp, sync, news, ftp..: ce sont des comptes utilisateur utilisés par
différentes applications et démons (deamons). Ce genre de compte ne peuvent
pas (doivent pas) être utilisé comme login.
• comptes ordinaires

1.1.2 Gestion des utilisateurs


La gestion des utilisateurs passe par les trois principales opérations suivantes : l’ajout, la
modification et la suppression. Linux gérant l’ensemble des ressources en utilisant les
fichiers, les informations d’un utilisateur donné constituent une ligne du fichier (/etc/
password) . Celle-ci comprend sept champs séparés par des « : ». Il s’agit notamment de :
login:passwd:uid:gid:comment:home:shell

20
Unité 1:Gestion des utilisateurs et des groups

• login : Le login désigne le nom du compte de l’utilisateur. Il est composé d’au


maximum 8 caractères alphanumériques.
• passwd : Désigne le mot de passe de l’utilisateur. Il est sous forme codée.
• uid : Il s’agit d’un numéro unique de l’utilisateur. Celui-ci est compris entre 0 et
65535. Les 100 premiers nombres sont par convention réservés au système et ne
correspondent pas à des utilisateurs normaux.
• gid : C’est le numéro qui identifie le groupe de l’utilisateur. Chaque utilisateur
appartient à un groupe principal et peut appartenir à un ou plusieurs groupes
secondaires. La notion de groupe permet de gérer les permissions sur les fichiers.
• comment : Commentaire dans lequel on peut trouver les informations sur
l’utilisateur ou simplement le nom complet de l’utilisateur.
• home : Chemin complet du répertoire (directory) attribuée à l’utilisateur
• shell : Chemin complet du shell, le programme qui interagit avec l’utilisateur et
qui permet de taper des commandes (commande exécutée après connexion au
système).

Le fichier /etc/passwd est public (toute personne qui a un compte sur la machine peut le lire).
Pour contrecarrer cette faille, certains systèmes ont introduit le fichier /etc/shadow, lisible
seulement par l’utilisateur root.

Après la création d’un compte utilisateur, tous les fichiers de /etc/skel sont copiés dans le
répertoire personnel de cet utilisateur. On place dans ce répertoire les fichiers dont tout le
monde doit en avoir une copie.

La commande su permet de changer l’identité de l’utilisateur courant. Sa syntaxe est la


suivante:

su [[-] utilisateur]

Utilisateur est l’utilisateur dont on veut prendre l’identité. Si aucun utilisateur n’est spécifié,
le changement se fait vers l’utilisateur root. La commande demande un mot de passe avant
d’obtempérer sauf si c’est fait par root.

1.1.2.1 Création d’un compte d’utilisateur


La création d’un compte demande plusieurs opérations : l’ajout d’une entrée dans le fichier
/etc/passwd, la création du répertoire personnel de l’utilisateur, et la mise en place de la
configuration par défaut dans le répertoire de cet utilisateur.

L’ensemble de ces opérations est pris en charge par la commande adduser ou useradd. Sa
syntaxe est : adduser [-c commentaires] [-d rep_personnel]

[-e date_expiration] [-f tps_inactivité]

[-g groupe_initial] [-G groupe [,...]

[-m [-k squelette_rep | -M] [-p motdepasse]

[-s shell] [-u uid [-o]] [-n] [-r] utilisateur

21
Administration des systèmes d’exploitation

La commande demande interactivement les données nécessaires à l’identification de


l’utilisateur lorsqu’elle est utilisée sans arguments.

Exemple : Créer un utilisateur nommé bana, mot de passe : Ali123 ; Nom complet : Kaneza
Bana ; Numéro de chambre : 14 ; Tél de bureau : 79 574 864 ; tél domicile : 14 789 645.

Figure 2: Ajout interactif d’un utilisateur

Si aucune option n’est précisée, les valeurs par défaut sont récupérées au sein du fichier /etc/
defaults/useradd.

La liste des principales options sont résumées dans ce qui suit :

Option Rôle

-m Permet de créer le répertoire personnel

-u Précise l’uid numérique de l’utilisateur. Cette valeur doit être unique

-g Précise le groupe principal de l’utilisateur par gid ou par son nom

Précise les groupes additionnels (secondaires, de l’utilisateur) séparés par


-G
des virgules (variable GROUPS).

Chemin du répertoire personnel. C’est généralement /home/<login>,


-d
mais n’importe quel chemin peut être précisé (variable HOME/<login>).

Un commentaire associé au compte. Il peut être quelconque mais est


-c parfois utilisé par certaines commandes comme finger. Son contenu peut
être modifié par l’utilisateur avec la commande chfn.

Chemin du répertoire contenant le squelette de l’arborescence du


-k
répertoire utilisateur. C’est généralement /etc/skell (variable SKEL).

Shell (commande de connexion) par défaut de l’utilisateur (variable


-s
SHELL). L’utilisateur peut le changer via la commande chsh.

-p Le mot de passe, crypté, de l’utilisateur.

Table 1: Synthèse des options de la commande d’ajout d’un utilisateur

22
Unité 1:Gestion des utilisateurs et des groups

La commande passwd permet de gérer les mots de passe mais aussi les autorisations de
connexion et la plupart des champs présents dans /etc/shadow. Tu peux changer ton mot de
passe, dans le délai précisé par le champ 4 de /etc/shadow. L’action par défaut change le
mot de passe de l’utilisateur courant. Pour question de sécurité l’ancien mot de passe lui sera
demandé. Le changement de mot de passe est présenté ci-dessous. La commande id permet
d’afficher l’identité de l’utilisateur.

Figure 3: Changement du mot de passe

Pour question de sécurité, les mots de passe sont masqués. Raison pour laquelle ils
n’apparaissent pas sur la figure ci-dessus.

Les modules PAM (Pluggable Authentification Module) imposent certaines contraintes de mot
de passe (longueur, pas basé sur un mot du dictionnaire, etc). L’utilisateur root a le droit de
modifier le mot de passe de n’importe quel utilisateur sans connaître au préalable l’ancien mot
de passe. Il peut également outrepasser les contraintes PAM

1.1.2.2 Suppression d’un compte d’utilisateur


Pour supprimer un utilisateur on utilise la commande userdel. Il faut que l’utilisateur à
supprimer ne soit pas connecté. Par défaut le répertoire personnel n’est pas supprimé. Pour
cela il faut passer l’option -r.

Ex : # userdel -r jordie

Cette commande supprime l’utilisateur jordie. Son répertoire personnel et ses fichiers sont
supprimés. La commande supprime toute trace de l’utilisateur dans le fichier de configuration
: /etc/passwd y compris dans les groupes d’utilisateurs. Lorsque l’on n’est pas logé comme
root, il faut faire précéder la commande par sudo (voir les détails sur https://doc.ubuntu-fr.org/
sudo#pseudo-root_une_console_superutilisateur).

23
Administration des systèmes d’exploitation

1.1.2.3 Modification d’un compte d’utilisateur :


La commande de modification d’un utilisateur est : usermod. Elle a la même syntaxe et les
mêmes options que la commande useradd. Des syntaxes complémentaires existent. Il s’agit
notamment de:

• passwd –l nomutilisateur pour désactiver un utilisateur


• passwd –u nomutilisateur pour activer un utilisateur
• etc ;

Conclusion
Tout au long de cette activité nous avons exploré la gestion des utilisateurs. Nous nous
sommes rendu compte que l’ajout d’un utilisateur implique l’ajout d’une ligne dans un fichier.
Une fois l’utilisateur créé on peut le modifier ou le supprimer via un ensemble de commande.
Les modules PAM imposent des contrôle de restriction de choix de mots de passe afin d’avoir
un mot de passe. L’utilisateur root a le droit de faire ce qu’il veut sur les autres utilisateurs. Il
peut même ne pas respecter les contraintes imposées par PAM.

Evaluation de l’activité :
1. Que comprenez-vous par la gestion des utilisateurs ?

2. Donner les caractéristiques d’un bon mot de passe.

Question 3:

1. Créer les utilisateurs Ali et Alice

2. Effectuer des vérifications : possibilité immédiate de se loguer sous


ces comptes, création de leur répertoire personnel dans /home.

3. Changer le mot de passe d’Alice.

4. Essayer de créer un compte déjà existant et déduire ce qui se passe.

5. Supprimer le compte d’Ali. Est-ce que son répertoire personnel a été


supprimé ?

24
Unité 1:Gestion des utilisateurs et des groups

Activité 1.2 Gestion des groupes

Introduction
Sous Linux, un groupe est un ensemble d’utilisateurs qui partagent les mêmes fichiers et
répertoires. Un utilisateur doit appartenir au moins dans un groupe (groupe initial défini au
moment de la création). Il peut appartenir dans un ou plusieurs groupes secondaires mais le
rôle du groupe initial reste prépondérant.

Comment sont alors gérer les groupes ? Quelles sont les commandes de gestion des groupes
? Toutes ces questions seront touchées dans cette activité.

1.2.1 Création d’un groupe


Vous pouvez créer un groupe directement dans le fichier /etc/group ou bien passer par les
commandes associées. Si vous éditez le fichier à la main, utilisez la commande vigr (ou vipw g).

La commande groupadd permet de créer un groupe. Sa syntaxe simple accepte l’argument -g


pour préciser un GID précis.

Le fichier /etc/group comprend 4 champs, séparés par le symbole « : »

• nom du groupe
• x pour remplacer un mot de passe non attribué maintenant
• numéro de groupe, c-à-d l’identifiant gid
• la liste des membres du groupe

1.2.2 Modification d’un groupe


Pour modifier un groupe, utiliser la commande groupmod. Cette commande admet les
paramètres suivants :

• -n<nom>: pour renommer le groupe


• -g <GID>: Modifie le GID. NB le groupe d’appartenance des fichiers concernés
reste inchangé
• -A<user>: ajoute l’utilisateur spécifié dans le groupe.
• -R<user>: pour supprimer l’utilisateur spécifié du groupe

25
Administration des systèmes d’exploitation

1.2.3 Suppression d’un groupe


La suppression d’un groupe est faite avec la commande : groupdel. Pour que la suppression
soit possible, il faut que le groupe à supprimer ne soit pas le groupe principal de l’utilisateur.
Cette commande va la ligne correspondante dans /etc/group. Il revient à l’utilisateur de vérifier
le système de fichiers (et la configuration des applications si besoin) pour supprimer toute
trace de ce groupe.

Ex : # groupdel ABC

Conclusion
Un groupe est une unité d’administration permettant de regrouper un ensemble d’utilisateurs
partageant les mêmes droits. Comme pour les utilisateurs, Linux gère les groupes sous
forme d’enregistrements d’un fichier (/etc/group). La gestion des groupes passe par l’ajout
(groupadd), la modification (groupmod) et la suppression (groupdel).

Evaluation de l’activité :
1. Que comprenez-vous par la gestion des groupes ?

2. Quand est-ce qu’un groupe ne peut pas être supprimé ?

Question 3:

1. créer le groupe comptabilite

2. ajouter deux comptes de votre choix dans ce groupe

3. vérifier le résultat avec la commande groups  

Activité 1.2.3 : Conversion des fichiers de mots de passe et


actions de l’utilisateur

Introduction
Dans les deux activités précédentes nous avons essentiellement touchés les actions de gestion
(ajout, modification et suppression) des utilisateurs et des groupes. Il existe cependant d’autres
activités importantes en l’occurrence la conversion de fichiers, la vérification de la cohérence
des fichiers de groupes et de mots de passe, les actions des utilisateurs (changer de shell, de
groupe, etc.), etc. Dans cette activité, vous apprendrez les commandes y relatives.

26
Unité 1:Gestion des utilisateurs et des groups

1.2.3.1 conversions de fichiers


Les fichiers /etc/shadow et /etc/passwd peuvent être convertis en un seul et unique /etc/
passwd, particulièrement lors de la migration de serveur. La commande utilisée est : pwunconv.
Une fois la conversion faite, il ne reste plus de trace de /etc/shadow (voir l’exemple ci-dessous).

Figure 4: Exemple de conversion de fichiers

Par la suite, en listant le fichier /etc/shadow on nous dit que celui-ci n’existe pas.

Remarque : avec la commande pwunconv, les durées de validité des mots de passe sont
détruites. La commande pwconv fait l’inverse : elle crée le fichier /etc/shadow associé à /etc/
passwd, y déplace les mots de passe et y place les réglages par défaut tels que définis dans le
fichier /etc/login.defs.

1.2.3.2 Vérification de cohérence


Il peut être utile de lancer des outils de vérification de la cohérence des fichiers des groupes et
des mots de passe. La commande pwck effectue une vérification des fichiers /etc/passwd et /
etc/shadow et reporte les erreurs.

Voir les détails de cette commande sur : http://manpages.ubuntu.com/manpages/gutsy/fr/


man8/pwck.8.html

La commande grpck permet de faire la même chose pour les groupes. Pour ce cas les
contrôles se limitent aux doublons et à l’existence des utilisateurs pour les groupes
secondaires.

1.2.3.3 Actions de l’utilisateur


Sur son propre compte, l’utilisateur a le droit de faire plusieurs actions en l’occurrence :

• la modification de son shell de connexion ;


• la modification des informations le concernant ;
• la modification du groupe principal ;
• la prise de l’identité de quelqu’un d’autre.

27
Administration des systèmes d’exploitation

1. Modification du shell

La commande chsh permet à l’utilisateur de modifier définitivement (ou jusqu’à la prochaine


commande chsh) de shell de connexion. Le shell (ou toute autre commande) doit être présent
dans /etc/shells. Cette liste est accessible via le paramètre -l de la commande. La modification
est faite au sein de /etc/passwd. Seul root a le droit de le modifier pour d’autres utilisateurs. Le
nouveau shell est précisé avec le paramètre -s.

Voir les détails de la commande sur le lien suivant : http://manpages.ubuntu.com/manpages/


precise/fr/man1/chsh.1.html

2. Modification du commentaire

Utiliser chn pour modifier le commentaire du fichier /etc/passwd. Il est préférable de l’utiliser
de manière interactive (le passage de paramètre en mode non interactif est réservé à root).

Figure 7: La commande chfn

3. Changement du groupe principal

Pour changer votre groupe principal, utiliser la commande newgrp suivi du nom du nouveau
groupe. Le nouveau groupe précisé doit être un groupe secondaire de l’utilisateur et/ou
l’utilisateur dispose du mot de passe du groupe. Utilisée seule, newgrp revient au groupe
d’origine. Les modifications sont temporaires, le fichier des mots de passe n’est pas modifié.
Les détails sont indiqués sur le lien ci-contre :

http://manpages.ubuntu.com/manpages/precise/fr/man1/newgrp.1.html

4. Changement d’identité

L’utilisateur peut endosser, le temps d’une commande ou de toute une session, l’identité d’une
autre personne. Il s’agit généralement de root, car vous savez qu’il ne faut jamais (ou au moins
éviter) de se connecter en permanence en tant que root. Donc pour les tâches administratives
il faut pouvoir devenir root (ou un autre utilisateur) le temps nécessaire.

La commande su (substitute user) permet d’ouvrir une session, ou d’exécuter un shell ou une
commande donnée avec une autre identité. Évidemment, vous devez connaître le mot de
passe de cet utilisateur.

su [-c commande] [-s shell] [-] [utilisateur]

28
Unité 1:Gestion des utilisateurs et des groups

Si aucun utilisateur n’est précisé, c’est root qui est utilisé.

Dans ubuntu le compte root est par défaut bloqué. Pour faire les tâches administratives il faut
utiliser la commande sudo.

Pour les détails sur cette commande, visiter le lien : https://doc.ubuntu-fr.org/


sudo#pseudo-root_une_console_superutilisateur

Conclusion :
Au cours de cette activité, nous avons exploré l’utilisation de quelques commandes
supplémentaires d’administration notamment la conversion de fichiers, la vérification de la
cohérence ainsi que quelques opérations sur le compte d’un utilisateur. Une autre liste des
commandes d’administration peut être trouvée sur la page suivante :

http://hautrive.free.fr/linux/page-commandes-linux.
html#Les_commandes_de_gestion_des_utilisateurs

Linux all-in-one for dummies 4th Edition, by Emmett Dulaney

Evaluation de l’activité
1. Expliquer les opérations pouvant être faites par un utilisateur et donner
des exemples.

2. Dans quel cas a-t-on besoin de faire la conversion de compte ? Quelle est
l’inconvénient d’une telle opération ?

3. Quelle est l’importance de la vérification des cohérences de fichiers ?

Résumé

Tout utilisateur du système doit être identifié. Les éléments d’identification d’un utilisateur
permettent de déterminer son profil afin de connaître ce à quoi il a le droit. Un groupe est
une unité d’organisation qui regroupe les utilisateurs ayant les mêmes droits. En Linux, chaque
utilisateur appartient à un groupe. Il peut cependant appartenir dans plusieurs groupes. Au
cours de cette unité d’apprentissage, nous avons passé en revue les principales commandes
de gestion des utilisateurs et des groupes. La gestion des utilisateurs et des groupes n’est
qu’une simple manipulation des entrées des fichiers correspondantes.

29
Administration des systèmes d’exploitation

Evaluation de l’unité :
Donner des réponses aux questions suivantes:

1. Créer un utilisateur appelé jordie

2. Modifier jordie pour lui donner un nouvel identifiant : UID 1112.

3. Changer la date d’expiration de jordie pour qu’elle soit le 17 mars 2016

4. Verrouiller le compte de jordie

5. Déverrouiller le compte de jordie.

6. Créer un groupe appelé TD

7. Mettre jordie dans le groupe TD

8. Créer l’utilisateur ali

9. Donner un mot de passe pour ali

10. Mettre ali dans le groupe TD

11. Supprimer jordie

12. Afficher les informations du compte jordie et conclure

Système de notation
L’évaluation de cette unité compte pour 10% de l’évaluation du module. L’évaluation des
activités compte pour 6% et l’évaluation de l’unité compte pour 4%.

Critères d’évaluation

• Questions/Evaluation non répondues ou mal répondues : Echec


• Questions/Evaluation répondues partiellement ou réponse partiellement correcte
: Moitié de point pour la question/évaluation correspondante
• Toutes les évaluations sont faites avec des réponses correctes : Totalité des points
• Lectures et autres ressources
• Linux System Administration, Vicki Stanfield, Roderick W. Smith, Sybex., 2nd
Edition, 2002, Chapter 5
• LPI – Linux System Administration, Revision 1.0, 2000, Chapter 6
• http://www.control-escape.com/linux/users-groups.html, Users and Groups,
February 24, 2006
• http://www.tldp.org/HOWTO/Shadow-Password-HOWTO-2.html, Why shadow
your passwd file?, February 24, 2006

30
Unité 2:Système de fichiers et gestion des disques

Unité 2:Système de fichiers et


gestion des disques
Introduction
Toutes les données manipulées sont conservées sur le disque dur de la machine. Il est naturel
que plusieurs utilisateurs puissent utiliser la même machine. Ce qui fait que chacun aura
ses fichiers sur le même disque. La gestion des disques constitue alors un autre challenge.
Au moment de la gestion des disques des quotas peuvent être fixés afin de garantir une
répartition équitable entre les utilisateurs.

Au cours de cette unité d’apprentissage, vous allez apprendre la notion de système de fichiers,
la gestion des fichiers ainsi que celle des disques et des quotas.

Objectifs :
A la fin de cette unité, l’apprenant devra :

• Démontrer une bonne connaissance du système de fichier Linux ;


• Gérer les fichiers
• Gérer les disques et les quotas

Mots Clé
Système de fichier : L’organisation logique de fichier sur
un système

Quotas : Taille disque allouée à un utilisateur

Partitionnement : Diviser l’espace disque en plusieurs


espaces disques logiques.

Swap : Terme général désignant l’espace disque utilisé


pour augmenter la quantité apparente de la mémoire
disponible dans la machine

31
Administration des systèmes d’exploitation

Activité 2.1 : Système de fichiers

Introduction
Suivant le type de contrôleur et d’interface sur lesquels les disques sont connectés, Linux
donne des noms différents aux fichiers spéciaux des périphériques disques. Chaque disque est
représenté par un fichier spécial de type bloc.

Les disques reliés à des contrôleurs IDE (appelés aussi PATA, Parallel Ata, ou ATAPI) se
nomment hdX :

• hda : IDE0, Master


• hdb : IDE0, Slave
• hdc : IDE1, Master
• hdd : IDE1, Slave
• etc.

Par contre les disques reliés à des contrôleurs SCSI, SCA, SAS, FiberChannel, USB, Firewire
(et probablement d’autres interfaces exotiques comme les lecteurs ZIP sur port parallèle) se
nomment sdX. L’énumération des disques reprend l’ordre de détection des cartes SCSI et des
adaptateurs (hosts) associés, puis l’ajout et la suppression manuelle via hotplug des autres.

• sda : premier disque SCSI


• sdb : deuxième disque SCSI
• etc.

Au cours de cette activité, nous allons aborder la notion de structure de fichier et donner
quelques exemples de systèmes de fichiers. Vous apprendrez à monter et démonter les
systèmes de fichiers.

2.1.1 Principe
a. Définition

Pour un système d’exploitation, un fichier est une suite d’octets. Chaque fichier est identifié
par un nom auquel on associe un emplacement sur le disque (une référence) et possède un
ensemble de propriétés : ses attributs. Le formatage d’un disque ou d’une clé USB consiste à
créer l’organisation logique permettant d’y mettre des données. Cette organisation logique est
ce que l’on appelle système de fichiers.

32
Unité 2:Système de fichiers et gestion des disques

b. Représentation

Le système de fichier est conçu de telle sorte que les utilisateurs puissent accéder aisément à
leur donnée et effectuer des traitements via des commandes. De même le système de fichier
doit permettre aux programmes d’y accéder.

Sous Linux, le système de fichiers est organisé sous forme d’un arbre de répertoires et de
sous-répertoires à partir d’une racine commune.

c. Qualifications d’un système de fichiers

Plusieurs attributs (métadonnées) définissent un système de fichiers. Sous linux, les principaux
sont :

• la taille maximale ;
• les droits d’accès ;
• les dernières dates d’accès et de modification ;
• le propriétaire et le groupe ;
• le nombre de blocs utilisés ;
• le type de fichiers ;
• le compteur de liens ;
• un arbre d’adresses de blocs de données.

Voir les détails sur : https://doc.ubuntu-fr.org/systeme_de_fichiers

2.1.2 Comparaison de systèmes de fichiers


Il existe plusieurs systèmes de fichiers. Le tableau ci-dessous donne une comparaison des
systèmes de fichiers les plus utilisés.

Tableau 1: Comparatif des systèmes de fichiers

33
Administration des systèmes d’exploitation

Source : https://doc.ubuntu-fr.org/systeme_de_fichiers

Des informations complémentaires peuvent être trouvées sur le lien ci-contre :

http://langevin.univ-tln.fr/cours/UPS/extra/chapitre3_sgf.pdf

2.1.3 Création d’un système de fichiers


Utiliser la commande mkfs pour créer un système de fichiers sur un disque ou sur une partition.
La création d’un système de fichier est similaire au formatage.

Par exemple, la commande ci-dessous permet de créer un système de fichier en ext3, avec
pour label « sys_data »: mkfs -t ext3 -L sys_data /dev/sda5

L’option -t sert à spécifier le type du système de fichier, tandis que -L permet de définir le
label du volume. Par défaut le système de fichier est : ext2

2.1.4 Montage d’un système de fichiers


Un système de fichiers Linux est accessible uniquement si elle est montée sur la hiérarchie du
système de fichiers (structure arborescente). Le répertoire utilisé pour monter le système de
fichier est appelé le point de montage. Tout répertoire peut agir comme un point de montage
pour tout type de système de fichiers, et les systèmes de fichiers montés peuvent contenir
d’autres systèmes de fichiers montés. Le montage d’un système de fichiers masque le contenu
précédent du répertoire de point de montage, d’où il est préférable d’utiliser un répertoire
vide pour le montage. Le répertoire / mnt est fourni comme point de montage temporaire.
Utiliser la commande mount pour manipuler les systèmes de fichier.

Ex :

# mount -t ext2 /dev/hda2 /home

# ls /home

Lorsqu’un système de fichiers n’est plus nécessaire, il peut être démonté. Pour cela utiliser la
commande unmount.

Ex :

# umount /home

# ls /home

Visiter le lien ci-contre pour les détails sur le montage/démontage de système de fichiers :

http://www.linux-france.org/article/memo/node139.html

34
Unité 2:Système de fichiers et gestion des disques

Conclusion
L’organisation logique des systèmes de stockage constitue un système de fichier. Il existe
plusieurs systèmes de fichiers. Le système de fichiers doit fournir à l’utilisateur une vision
structurée de ses données, permettant de les distinguer, de les retrouver, de les traiter et de
les manipuler, par exemple sous forme de fichiers au sein d’une arborescence de répertoires
avec les commandes associées.

Sous Unix le système de fichier est organisé sous forme d’un arbre de répertoires et de sous-
répertoires à partir d’une racine commune. Chaque répertoire fait partie d’une organisation
et propose lui-même une organisation : le système de fichiers dispose d’une hiérarchie de
données.

Pour plus d’information, consulter le lien : https://doc.ubuntu-fr.org/systeme_de_fichiers

Evaluation
1. En quoi consiste le formatage d’un disque sous linux

2. Comment sont-ils organisés les fichiers sous Linux ?

3. Créez un système de fichiers ext2 sur un disque hda5 (200 MB).

4. Monter ce système de fichiers dans / usr.

Activité 2.2 : Partitionnement

Introduction
Le partitionnement consiste en un découpage logique du disque. C’est-à-dire que le support
de stockage sera considéré comme un espace de données pouvant être découpé en plusieurs
entités logiques et indépendantes disposant chacune de leur propre système de fichiers.

Un disque peut être vu comme une longue bande d’espace de stockage découpée en cases
pouvant contenir une quantité donnée d’informations. Le disque peut être utilisé tel quel
comme espace de stockage, rien n’empêche de créer un système de fichiers sur un disque
sans passer par l’étape de partitionnement. Il est cependant important de donner une
organisation logique à cet espace et aux systèmes de fichiers qu’il contiendra, ne serait-ce
qu’au nom de la séparation des données (les fichiers de données) et des traitements (les
programmes les utilisant et le système). Au cours de cette activité, nous allons détailler
l’organisation d’un disque et la manière de le scinder en plusieurs partitions logiques.

35
Administration des systèmes d’exploitation

2.2.1 Organisation d’un disque


a. MBR

Le premier secteur est le MBR, Master Boot Record, ou zone d’amorce. D’une taille de 512
octets il contient dans ses 444 premiers octets une routine (un programme) d’amorçage
destiné soit à démarrer le système d’exploitation sur la partition active, soit un chargeur de
démarrage (bootloader), puis 4 octets d’une signature optionnelle (Windows), 2 octets nuls, et
les 64 octets suivants contiennent la table des quatre partitions primaires. Le tout finit par une
signature 0xAA55 sur deux octets.

Figure 10: Format d’un MBR

b. Les partitions

Une partition est un découpage logique du disque. Il en existe trois sortes :

• Les partitions primaires : ce sont celles décrites dans le MBR.


• Les partitions étendues (primaires étendues), une seule par disque (bien que
théoriquement il soit possible de créer des partitions étendues au sein d’autres
partitions étendues).
• Les partitions ou lecteurs logiques.

Un disque peut contenir jusqu’à 63 partitions en IDE, 15 en SCSI (c’est une limite de
l’implémentation officielle du SCSI) ou via la libata. La limite actuelle est de 15 partitions pour
tous les disques avec les derniers noyaux et l’API libata. Cependant quelques distributions
permettent d’utiliser l’ancienne API (PATA) pour revenir à l’ancien système.

Il faut noter qu’il s’agit d’une limite par disque, et pas du nombre total de partitions gérées par
le système.

Remarque :
Pour dépasser la limite des 15 partitions, il est possible d’utiliser le « device mapper » de Linux,
faisant appel notamment à la gestion du LVM (Logical Volume Management). Le LVM permet
de regrouper plusieurs disques (Physical volumes) en une seule unité (Volume Group) vue par
le système comme un énorme disque unique que vous pouvez découper en partitions (Logical
Volumes), sans être limité par le nombre. Et en plus, vous pouvez rajouter des disques dans le
groupe après coup, augmenter et réduire la taille des partitions à la volée, sans vous soucier
de leur emplacement physique réel...

36
Unité 2:Système de fichiers et gestion des disques

Les partitions sont numérotées de 1 à n (15 ou 63). Une partition d’une valeur supérieure ou
égale à 5 indique qu’il s’agit forcément d’une partition logique. Comme il ne peut y avoir que
quatre partitions primaires, la dernière (la 4) est souvent créée comme étendue :

• Partitions 1 à 3 : primaires
• Partition 4 : étendue
• Partitions 5 à n : logiques

Le numéro de la partition apparaît à la suite du nom du fichier périphérique de disque :

• hda1 : première partition primaire du premier disque IDE ;


• hdb5 : cinquième partition, première partition logique du second disque IDE ;
• sda3 : troisième partition primaire du premier disque SCSI / libata ;
• sdc8 : huitième partition, soit quatrième partition logique du troisième disque
CSI/libata.

Figure 11: Description schématique d’un disque

c. EBR

Chaque partition étendue devant décrire les partitions logiques qu’elle contient, elle doit aussi
disposer d’une table de partition. L’EBR (Extended Boot Record) reprend la structure du MBR
sauf qu’il n’y a que deux enregistrements possibles dans la table des partitions. Le premier
indique effectivement la position et la taille d’une partition logique, tandis que le second est
vide si c’est la seule partition logique, ou pointe sur un autre EBR. Il peut donc y avoir plusieurs
EBR dans une partition étendue.

• Les EBR forment une liste chaînée, la seconde entrée de partition pointant sur
l’EBR suivant.
• Il n’y a qu’une seule partition logique décrite par EBR.

d. PBR

Le PBR (Partition Boot Record), aussi appelé VBR (Volume Boot Record) ou Partition Boot
Sector est le premier secteur de chaque partition primaire ou logique. Il peut contenir une
routine de démarrage d’un système d’exploitation, un chargeur de démarrage, voire rien du
tout si la partition n’a pas vocation à être bootée. Quand le MBR ne contient pas de routine, le
bios tente de démarrer et d’exécuter la routine du PBR de la partition marquée active.

37
Administration des systèmes d’exploitation

e. Types de partitions

Chaque partition dispose d’un type permettant de déterminer son contenu. C’est un identifiant
numérique codé sur un octet généralement présenté en hexadécimal.

Comme le type de partition devrait refléter le système de fichiers qu’elle contient, une partition
de type 0x0c devrait contenir un système de fichiers de type FAT32 LBA (gros disques). Une
partition de type 0x83 devrait contenir un système de fichiers Linux. Mais lequel ? Vous avez vu
qu’il en existe plusieurs...

Notez la prédominance des types de partition pour Windows. Windows se base


essentiellement sur ce type pour en déterminer le contenu. Rien n’empêche de créer une
partition de type Linux et d’y placer un système de fichiers FAT32. Cependant si vous faites
ceci, Windows ne reconnaîtra pas la partition (considérée de type inconnu) et vous ne pourrez
pas accéder au contenu.

Linux reconnaît généralement (des exceptions sont possibles) le contenu d’une partition
par le système de fichiers qui y réside. Vous pouvez créer un système de fichiers ext3 dans
une partition de type 0x0e et constater que tout fonctionne. Le type 0x83 peut accueillir
tout système de fichiers Linux : ext2, ext3, reiserfs, jfs, xfs... Cependant pour des raisons de
compatibilité veillez à respecter l’association type de partition ó système de fichiers, à rester
cohérent.

2.2.2 Manipulation des partitions


Les outils fdisk, cfdisk, sfdisk ou encore parted permettent de manipuler les partitions. Notons
également que des outils graphiques existent aussi.

–– fdisk : C’est le plus ancien et le plus utilisé des outils de partitionnement. Il n’a
aucun rapport avec le fdisk de Microsoft. Il est à base de menus et raccourcis
textuels.
–– Cfdisk : Il est un peu plus « visuel » et s’utilise avec les flèches directionnelles. Il
permet les mêmes opérations que fdisk mais de manière plus conviviale.
–– Sfdisk : Il fonctionne en interactif ou non, est assez compliqué mais plus précis.
–– parted : Il permet des opérations très avancées sur les partitions comme par
exemple leur redimensionnement. Il est soit interactif (c’est un interpréteur de
commandes) soit scriptable. Il existe des interfaces graphiques comme qtparted
ou gparted.

38
Unité 2:Système de fichiers et gestion des disques

Ci-dessous, nous présentons le schéma de partitionnement avec gparted

Figure 12: Partitionnement avec gparted

L’outil le plus généralement utilisé est le fdisk. Il se lance en tant que root et sa syntaxe est la
suivante : fdisk [-l] [disque]

Chaque paramètre est optionnel. Lancé tel quel fdisk se place sur le premier disque du
système. Le paramètre –l permet de lister les partitions du disque donné, ou de tous les
disques. Les informations obtenues sont les mêmes qu’en mode interactif avec l’entrée p
(print) du menu.

Remarque :
Les manipulations effectuées avec fdisk ne sont prises en compte qu’à la fin, une fois que vous
sauvez vos modifications, et non au fur et à mesure. Si vous pensez vous être trompé, n’hésitez
pas à quitter sans sauver ou à faire un [Ctrl] C. Vos modifications seront perdues, mais vous
aurez sauvé vos partitions.

2.2.2 Le swap
1. Pourquoi créer un swap ?

Dans un environnement 32 bits un processus peut théoriquement accéder à 4 Go d’espace


mémoire. Il dispose de 4 Go de mémoire virtuelle, rien qu’à lui et à laquelle aucun autre
processeur ne peut accéder. Dans la pratique il y a plusieurs freins à cette possibilité :

• L’espace mémoire adressable d’un processus est partagé entre zone de code et
zone de données dont la taille peut varier selon le noyau utilisé.
• Les ordinateurs ne disposent pas tous de 4 Go de mémoire (bien qu’il soit
courant de trouver des serveurs Linux disposant de 16, 32 ou même 64 Go de
mémoire).

39
Administration des systèmes d’exploitation

• Tous les processus doivent se partager la mémoire de l’ordinateur.

Que se passe-t-il si un processus n’a plus assez de mémoire pour traiter ses données ? Le
système d’exploitation va décharger des segments de la mémoire physique dans une zone
d’échange sur disque qui fera office de mémoire virtuelle tampon. Il y a donc un échange
entre la mémoire physique et cette zone d’échange, appelé l’espace de swap. Ce processus
permet d’utiliser plus de mémoire que l’ordinateur n’en dispose réellement, au prix d’un net
ralentissement si le programme est très gourmand.

2. Taille optimale

Il n’y a pas de règles strictes sur la taille du swap. Cependant les quelques règles courantes
suivantes sont valables dans la plupart des cas :

• Moins de 512 Mo de RAM : deux fois la RAM.


• 1 Go à 4 Go : la taille de la RAM.
• Plus de 4 Go : 4 Go, plus ou moins, selon l’utilisation des processus.

3. Créer une partition de swap

• Créer une partition ou fichier destinée à accueillir l’espace swapp (commande


fdisk) ;
• Générer un fichier de swap (commande dd) ;
• Synchronisez la table des partitions avec partprobe ;
• Formater la zone à l’aide de la commande mkswap.

Voir les détails sur : http://www.linux-france.org/article/memo/node141.html

Si vous créez plus de 1 ou 2 Go de swap, vous devriez penser à créer plusieurs partitions de
swap sur des disques différents situés sur des contrôleurs matériels différents. Linux répartira la
charge sur chacune de ces partitions, ce qui garantira des accès plus rapides.

4. L’activation et la désactivation d’un swap

a. Activation dynamique

Linux permet d’activer et de désactiver le swap, ou des morceaux de swap, directement sans
avoir à redémarrer le système.

La commande swapon permet d’activer une partition de swap :

# swapon /dev/sda5

Le paramètre -p permet de modifier la priorité du swap. Plus la valeur, comprise entre 0 et


32767, est élevée, plus la priorité d’une zone de swap est élevée. Le système l’utilisera en
priorité.

40
Unité 2:Système de fichiers et gestion des disques

Ce paramètre est utile si plusieurs partitions de swap existent sur des disques différents. Dans
ce cas, privilégiez soit le disque le plus rapide, soit indiquez une priorité égale pour une
meilleure répartition.

Comme avec mount, le paramètre -L permet d’activer une zone de swap grâce à son étiquette.

La commande swapoff désactive une zone de swap. Veillez à disposer de l’espace mémoire
libre nécessaire, sinon la commande ne fonctionnera pas.

Le contenu de /proc/swaps reflète l’état actuel des zones de swap actives.

b. Dans /etc/fstab

Les zones de swap se placent dans le fichier /etc/fstab. Voici un exemple :

/dev/sda5 swap swap defaults 0 0

Les options noauto et pri=X peuvent être précisées. L’option pri permet de définir la priorité
de la zone de swap.

Lors du démarrage, le système exécute swapon a qui active toutes les partitions de swap
présentes dans la fstab sauf si noauto est précisé. Lors de l’arrêt, le système exécute swapoff a
qui désactive complètement le swap.

Conclusion
Au cours de cette activité, nous avons passé en revue la notion de partition ainsi que les
principales commandes de manipulation de partition.

Evaluation :
1. Discuter de la notion de partition

2. Qu’est-ce qu’un swap et quel est son rôle ?

3. Donner les détails pour les actions suivantes :

–– Se connecter en tant que root


–– Lancer l’outil de partitionnement fdisk.
–– Afficher la liste des commandes intégrées à fdisk.
–– Afficher la liste des partitions actuellement définies sur le disque dur.

41
Administration des systèmes d’exploitation

Activité 2.3 : Les quotas

Introduction
Les quotas permettent de poser des limites à l’utilisation de systèmes de fichiers. Ces limites
sont de deux types :

• inodes : limite le nombre de fichiers.


• blocs : limite la taille disque.

Les quotas sont implémentés par système de fichiers individuel et pas pour l’ensemble des
systèmes de fichiers.

Chaque utilisateur peut être géré de manière totalement indépendante. Il en est de même
pour les groupes. Pour chaque utilisation (inode ou bloc), vous pouvez mettre en place deux
limites dans le temps :

–– Limite dure (hard) : quantité maximale d’inodes ou de blocs utilisés que


l’utilisateur ou le groupe ne peuvent absolument pas dépasser. Dans ce cas, plus
rien ne sera possible (création de fichier ou fichier dont la taille dépasse la limite).
–– Limite douce (soft) : quantité maximale d’inodes ou de blocs utilisés que
l’utilisateur ou le groupe peuvent temporairement dépasser. Dans ce cas, les
créations et modifications seront possibles jusqu’à un certain point : limite dure et
délai de grâce.
–– Un délai de grâce est mis en place. Durant ce temps, l’utilisateur peut continuer à
travailler sur le système de fichiers. Le but est qu’il revienne à terme sous la limite
douce. Le délai dépassé, la limite douce devient la limite dure. Quoi qu’il arrive,
l’utilisateur ne pourra jamais dépasser la limite dure.

Les quotas sont implémentés dans le noyau Linux et au sein des systèmes de fichiers. Pour les
utiliser, les outils de quotas (packages quota) doivent être installés. Dans cette activité, nous
allons présenter quelques en rapport avec la mise en place de quotas.

2.3.1 Mise place de quotas


Vous allez mettre en place les quotas sur la partition /home en respectant les étapes suivantes :

• Modifiez les options de partition dans /etc/fstab. On rajoute dans les options
usrquota (utilisateur) ou grpquota (groupe), ou les deux.

LABEL=/home /home ext3 defaults,usrquota 1 2

• Remontez le système de fichiers.


# mount -o remount /home

42
Unité 2:Système de fichiers et gestion des disques

• Créez les fichiers contenant les informations de quota (base de données de


quotas).
# cd /home

# touch aquota.user aquota.group

• Mettez à jour la base de données avec la commande quotacheck.


# quotacheck -c /home

• Démarrez (ou arrêter) les quotas. Cette opération n’est pas nécessaire après
un redémarrage de Linux car la mise en place des quotas est comprise dans
les scripts de démarrage. La commande quotaon démarre les quotas pour le
système de fichiers indiqué (-a pour tous). La commande quotaoff stoppe les
quotas.

#quotaon /home

• Éditez les quotas pour les utilisateurs ou les groupes. La commande edquota
est utilisée. En pratique, si tous les utilisateurs doivent avoir les mêmes quotas
ou avec quelques variantes, on crée un utilisateur lambda dont on recopiera les
propriétés.

• Établir les quotas pour roger :

# edquota roger # = edquota -u roger

• Les quotas de arthur sont identiques à ceux de roger :


# edquota -p roger arthur

• Établissez le délai de grâce. Le délai accepte les unités « seconds », « minutes », «


hours», « days », « weeks », « monthes ».

# edquota -t

• Vérifiez les quotas. Les utilisateurs peuvent vérifier l’état de leurs quotas avec la
commande quota. L’administrateur peut générer un rapport avec repquota. Enfin
la commande warnquota qui peut être exécutée via cron peut envoyer un mail
aux utilisateurs pour les prévenir en cas de dépassement.

L’édition des quotas se fait avec l’éditeur par défaut du système qui est généralement vi (le
comportement peut être modifié via les variables EDITOR et VISUAL). Les blocs de quotas sont
des blocs de 1 Ko.

43
Administration des systèmes d’exploitation

Figure 15: Edition de quotas

Avec l’éditeur, on peut modifier les valeurs soft et hard qui correspondent aux limites douces
et dures pour le nombre de blocs et le nombre d’inodes. Ci-dessus, il a été établi une limite
douce à environ 2,4 Go (2500000 ko) et dure à environ 2,9 Go (3000000 ko) d’occupation du
système de fichiers pour roger. Il n’y a pas de quotas sur le nombre d’inodes (valeur à 0).

Le contenu des champs blocks et inodes est dynamique et ne doit pas être touché, ce qui n’a
de toute façon aucun effet.

Figure 16: Modification de quotas

Une dernière nécessité est d’utiliser régulièrement la commande quotacheck pour maintenir
la cohérence des informations de quotas des systèmes de fichiers. En effet, en cas arrêt des
quotas ou de problème (arrêt inopiné par exemple), il peut parfois être nécessaire de vérifier et
de réactualiser les informations.

# quotacheck –avug

Vérifier s’il faut mettre les droits d’accès

Conclusion
Les quotas sont implémentés par système de fichiers individuel et pas pour l’ensemble des
systèmes de fichiers. Cette activité a été une occasion de définir la notion de quotas et de
découvrir quelques commandes de gestion de quotas.

Evaluation
1. Discuter du rôle de quotas et de comment ils sont mis en place.

2. Par un exemple concret :

• Mettre en place les quotas


• Démarrer et arrêter les quotas
• Editer les quotas des utilisateurs

44
Unité 2:Système de fichiers et gestion des disques

Résumé

Au cours de cette unité d’apprentissage, nous avons défini la notion de système de fichier. Le
système de fichiers défini la structure logique de fichier à travers laquelle on saura comment
accéder au fichier. Sous Linux, les fichiers sont structurés sous forme d’arbre. L’ensemble de ces
fichiers étant stockés sur disque, il a été également question de la gestion des disques et des
quotas. Les quotas permettent de fixer da taille maximum que l’utilisateur ne doit pas dépasser.

Evaluation de l’unité
Répondre aux questions suivantes en indiquant les étapes suivies :

1. Créer système de fichiers ext2 sur un disque hda6 150 MB.

2. Monter ce système de fichiers dans / usr / lib. Si le répertoire n’existe pas


il faudra le créer.

3. Créer ext3 de 100 MB sur le disque hdb2 et monter sur / home.

4. Démonter tous les trois systèmes de fichiers.

Système de notation
L’évaluation de cette unité compte pour 10% de l’évaluation du module. L’évaluation des
activités compte pour 5% et l’évaluation de l’unité compte pour 5%.

Critères d’évaluation

• Questions/Evaluation non répondues ou mal répondues : Echec


• Questions/Evaluation répondues partiellement ou réponse partiellement correcte
: Moitié de point pour la question/évaluation correspondante
• Toutes les évaluations sont faites avec des réponses correctes : Totalité des points

Lectures et autres ressources

• Linux System Administration, Vicki Stanfield, Roderick W. Smith, Sybex., 2nd


Edition, 2002, Chapter 6
• LPI – Linux System Administration, Revision 1.0, 2000, Chapter 5
• http://www.lifl.fr/~forget/CoursSyst/disques.pdf
• http://public.loligrub.be/contrib/tlepoint/BASE/node38.html
• http://www.linuxplanet.com/linuxplanet/tutorials/6666/1

45
Administration des systèmes d’exploitation

Unité 3: Sauvegarde et restauration


Introduction
La sauvegarde est un travail important de l’administrateur puisqu’en cas de gros problème, on
passe généralement par une restauration du système depuis une sauvegarde, ou une image
du système lorsque celui-ci était encore intègre (bon fonctionnement, pas de corruption).
Chaque Unix est fourni avec des commandes et des procédures de sauvegarde qui lui sont
propres. Dans cette unité, nous allons détailler la notion de sauvegarde et restauration, puis
nous présenterons quelques commandes en rapport avec la sauvegarde et la restauration des
données.

Objectifs
A la fin de cette unité, l’apprenant devra être capable de :

• Définir la sauvegarde et la restauration


• Décider quand est-ce qu’il faut faire la sauvegarde ;
• Effectuer la sauvegarde ;
• Restaurer les données sauvegardées.

Mots Clé
Backup: Processus de réplique des données (système)
sur un support. De préférence il faut que le support
soit différent du support où se trouvent les données
répliquées.

Restauration: Processus de recouvrement des


données (état d’un système) suite à un incident.

Incident: Evénement sur le système provoquant une


perte de données

46
Unité 3: Sauvegarde et restauration

Activité 3.1: Aperçu général

Introduction
En général, tout utilisateur d’un système informatique a connu une perte accidentelle de
données. De nombreuses raisons peuvent être identifiées pour lesquelles les données se
perdent: elle pourrait être due à la négligence, vol, catastrophe naturelle, etc. Le but d’une
sauvegarde est de faire une copie des données, afin de les recouvrer si elles venaient à être
perdues. Dans cette activité, nous allons définir la sauvegarde, comment elle se fait et indiquer
pourquoi il est recommandé de l’utiliser.

3.1.1 Définition de la sauvegarde


« En informatique, la sauvegarde (backup en anglais) est l’opération qui consiste à dupliquer et
à mettre en sécurité les données contenues dans un système informatique. »

La sauvegarde est donc la création d’une information en double d’un système pour le restaurer
à son fonctionnement normal en cas de panne ou de perte de données après sinistre. Cette
sauvegarde est utilisée lorsque la copie originale est perdue ou ne peut plus être récupéré.
Prendre des sauvegardes de toutes les données apparaît comme la solution évidente pour
surmonter la perte de données.

3.1.2 Importance de la sauvegarde


Les trois points ci-dessous résument l’importance de la sauvegarde :

• permet la récupération de données en cas de défaillance du système ;


• permet aux utilisateurs de récupérer les fichiers accidentellement (ou
volontairement) supprimés ou qui sont corrompus ;
• est utilisée pour le transfert de données entre les machines non-réseau

De ces trois points, nous constatons que la sauvegarde est d’une importance capitale. Elle doit
se faire sur des supports différents du support de stockage des données à sauvegarder. Alors
quand faut-il faire de a sauvegarde ?

Idéalement, nous avons besoin de sauvegarder notre système aussi souvent que possible
ou même tous les jours. Toutefois, afin de répondre à cette question, il faut tenir compte
de l’importance des données à sauvegarder ainsi que son taux de variation, disponibilité
des ressources sur lesquelles il faut faire la sauvegarde et aussi la fréquence requise de la
sauvegarde qui conduit à un plan de sauvegarde . Avoir un plan de sauvegarde permet
de spécifier toutes les tâches et activités qui doivent être fait avant, pendant et après une
sauvegarde. En réalité, tous les systèmes informatiques peuvent connaître des défaillances et
entraîner la perte ou la corruption de certaines données. Avoir un plan de sauvegarde régulière
et efficace permet à l’administrateur du système pour récupérer les données du système à
l’état où il se trouvait lors de la dernière.

47
Administration des systèmes d’exploitation

3.1.3 Quels fichiers doivent être sauvegardés ?


En général, la sauvegarde de tout le système est la plus utile et aussi facile à gérer. Toutefois,
la sauvegarde des fichiers du système tous les jours n’a pas de pertinence, car elle ne change
pas souvent. La sauvegarde des fichiers systèmes tous les jours serait une perte de temps et
de ressources cars de tels fichiers ne changent pas fréquemment. La sauvegarde fichiers des
utilisateurs ne permettent pas aussi de recouvrer le système après de graves incidents.

En conclusion, on peut dire qu’il faut faire la sauvegarde régulière des ressources qui changent
fréquemment, y compris les fichiers journaux.

3.1.4 Fréquence et support de sauvegarde


D’une manière générale, afin de maintenir la santé du système, l’écart entre les sauvegardes
doit être maintenu minimal. En outre, l’administrateur du système doit être en mesure de
déterminer le niveau d’acceptation de la perte de données et de retarder la tolérance de
l’entreprise pour déterminer la fréquence de sauvegarde.

Quant aux supports de sauvegarde, ils peuvent être des supports physiques ou virtuels (cloud).

Lorsque l’on utilise l’on utilise les supports physiques, il est déconseillé de conserver les
données sur le même support que les données sauvegardées. En cas d’incidents les données
ne pourront pas être recouvrées. Les supports de sauvegarde doivent être conservés dans un
endroit différent de celui qui abrite les données sauvegardées. L’office dans lequel on a mis les
supports de sauvegarde doit être fermé à clé pour éviter que ça soit volé. Bref il faut prendre
le plus de précaution possible pour protéger les données sauvegardées.

La sauvegarde dans le cloud (nuage) paraît la meilleure des solutions. Elle lève toutes les
inquiétudes soulevées ci-dessus et permet d’accéder aux données en étant n’importe où.

A quelle période de la journée faut-il effectuer la sauvegarde ?

Idéalement, la sauvegarde doit être fait dans les heures où il y a moins d’activité. Cependant,
pour une entreprise très exigeante qui fonctionne 24h/24 et7jours/7, l’administrateur système
doit identifier le temps pendant lequel l’exécution normale de l’entreprise est le moins affecté.

3.1.4 Restauration
La restauration est le processus qui consiste à recouvrer les fichiers (système) perdus, à partir
de la sauvegarde faite. Notons que la sauvegarde en soi n’est que la moitié de la solution. Il
faut que, à partir des sauvegardes, l’on soit capable de restaurer ce qui a été perdu. Raison
pour laquelle l’administrateur système doit s’entrainer et tester régulièrement ses sauvegardes
afin de s’assurer que ses données peuvent être restaurées.

48
Unité 3: Sauvegarde et restauration

Conclusion
Une des tâches importantes attendues d’un administrateur système est d’effectuer des
sauvegardes aussi souvent que possible. La sauvegarde est un processus de conservation des
données de manière redondante pour récupérer une perte en cas d’un incident désastreux
qui se passe sur le système actuel. Un plan de sauvegarde bien planifiée et efficace permet à
l’administrateur d’identifier les fichiers à sauvegarder, à quelle fréquence de sauvegarde, où
garder la sauvegarde et aussi quand effectuer la procédure de sauvegarde?

Évaluation

1. Définir la sauvegarde à long terme

2. Comparer la sauvegarde dans le cloud et la sauvegarde sur des supports


physiques.

3. Quels sont les avantages de la sauvegarde

Activité 3.2: Méthodes et stratégies de sauvegarde

Introduction
Dans l’activité précédente, nous avons vu l’importance d’effectuer une sauvegarde. Existe-t-il
une méthode de sauvegarde ? Dans cette activité, nous allons passer en revue les méthodes
et stratégie de sauvegarde.

3.2.1 Méthode de sauvegarde


De toute évidence, faire des sauvegardes de tous les fichiers est une activité infaisable car elle
nécessite beaucoup d’espace et c’est aussi un processus de longue haleine. Les principaux
types de backup sont les suivants :

• Sauvegarde complète: copies tous les fichiers, les fichiers système, les fichiers
logiciels et les fichiers de données sur un support de source vers un support
de sauvegarde chaque fois qu’une sauvegarde est prise indépendamment de
toute modification apportée aux données lui-même. Ceci présente un avantage
de restaurer tout, à son état précédent si un problème survient. Mais il est très
gourmand en ressources.
• La sauvegarde incrémentale: est une méthode de sauvegarde partielle qui
inclut uniquement les fichiers qui ont changé depuis la dernière opération de
sauvegarde de toute nature.
• Sauvegarde différentielle: ceci est un type spécial de sauvegarde incrémentielle,
souvent désigné comme système de sauvegarde cumulative et comprend tous
les fichiers modifiés depuis la dernière sauvegarde complète, si elles ont été
modifiées depuis la dernière opération de sauvegarde ou non.

49
Administration des systèmes d’exploitation

3.2.2 Stratégie de sauvegarde


Une fois la méthode de sauvegarde appropriée sélectionnée, nous avons également besoin
d’avoir une stratégie de sauvegarde qui prend régime la rotation la plus appropriée à nos
besoins d’organisation, ce qui peut réduire les coûts des médias et de prolonger la longévité
de nos bandes tout en veillant à ce que chaque fichier soit protégé. Une stratégie de
sauvegarde est une approche planifiée à la protection des données et à leur récupération.

Pour les détails sur la sauvegarde et restauration consulter la référence ci-contre :

https://msdn.microsoft.com/fr-fr/library/ms191253%28v=sql.120%29.aspx

Conclusion
Pour toute organisation, la sauvegarde de données est une tâche importante qui doit être bien
réfléchie et exécutée. Pour cela, des méthodes et stratégies de sauvegarde existent. Ainsi on
peut opter pour une sauvegarde complète, incrémentale, différentielle, etc.

Une fois la méthode choisie, il faut adopter une stratégie pour mettre en place votre
sauvegarde.

Évaluation

1. Discuter des principales méthodes de sauvegarde.

2. Que comprenez-vous par stratégie de sauvegarde ?

Activité 3.3 Quelques commandes utiles pour la sauvegarde et


la restauration

Introduction
Au cours de cette activité, vous apprendrez à utiliser quelques commandes de sauvegarde et
de restoration de données à savoir :

• dump
• restore
• tar
• cpio
• dd

50
Unité 3: Sauvegarde et restauration

3.3.1 La commande dump


Elle permet de faire une sauvegarde complète ou incrémentale du système. Rappelons que la
sauvegarde incrémentale concerne les fichiers et les répertoires qui ont été modifiés ou créés
depuis la dernière sauvegarde. Un ensemble de niveau, de 0 à 9, détermine la stratégie de
sauvegarde.

• Pour le niveau 0, c’est une sauvegarde complète ;


• Pour le niveau 1, c’est une sauvegarde des fichiers et répertoires créés et/ou
modifiés depuis la dernière sauvegarde de niveau 0.
• Pour le niveau 2, c’est une sauvegarde des fichiers et répertoires créés et/ou
modifiés depuis la dernière sauvegarde de niveau 1, ou de niveau 0 si le niveau 1
n’existe pas.

Cela continue jusqu’au niveau 9.

Les informations sur les sauvegardes sont enregistrées dans le fichier /etc/dumpdates. On
retrouve les informations tels que (système de fichier, niveau de dump, date).

La cinquième colonne du fichier /etc/fstab, est utilisée par la commande dump pour
déterminer quels sont les systèmes de fichiers à sauvegarder. Si cette colonne est absente ou
vaut zéro, dump supposera qu’il ne faut pas sauvegarder ce système.

Les options de la commande dump sont résumées dans ce qui suit :

-[0,9] Détermine le niveau de sauvegarde

-f file/device Indique le fichier de sauvegarde ou le périphérique

-u Mettre à jour le fichier /etc/dumpdates en cas de succès

-w Analyse le fichier /etc/fstab pour déterminer les systèmes


de fichiers à sauvegarder

-W Analyse le fichier /etc/fstab et /etc/dumpdates pour


déterminer les systèmes de fichiers à sauvegarder

Tableau 2: Option de la commande dump

51
Administration des systèmes d’exploitation

3.3.2 La commande restore


Une fois la sauvegarde faite, restore permet de faire la restauration. Cette commande extrait
les fichiers ou répertoires de la sauvegarde fait par dump et les place dans le répertoire
courant. Les options de la commande restore sont résumées ci-dessous :

-C Vérifier la sauvegarde

-i Entrer en mode interactif pour restaurer

-r Restaurer un système de fichier

-t Lister le contenu de la sauvegarde

-x Extraire les fichiers ou répertoires spécifiés

-f file/device Restaurer à partir d’un fichier ou un périphérique

-h Extraire les répertoires spécifiés sans les sous-répertoires

-N Afficher les noms des fichiers et répertoire sans les extraire

-T Spécifier le répertoire temporaire. Par défaut c’est le /tmp

-v Afficher le nom de chaque fichier pendant son extraction

-y par défaut, en cas d’erreur, restore demande à l’opérateur s’il veut


continuer. Avec cette option restore continue automatiquement en cas
d’erreur.

Tableau 3: Les options de la commande restore

3.3.3 La commande tar


La commande tar (tape archive) crée des archives des fichiers, y compris l’arborescence de
fichiers, sur tout type de support y compris dans un autre fichier (archive à l’extension .tar).

Les options de la commande tar sont les suivantes :

c Créer une archive

t Lister le contenu de l’archive

r Ajouter des fichiers à l’archive

U Mettre à jour l’archive

w Attendre confirmation avant d’archiver chaque fichier

x Extraire des fichiers de l’archive

m Ne pas assigner de nouveau timestamp (extraction)

52
Unité 3: Sauvegarde et restauration

M Créer une archive multivolume

f file Sauvegarder l’archive dans un fichier

f device Sauvegarder l’archive sur un périphérique

v Afficher le nom de chaque fichier archivé

z Compresser/ décompresser en utilisant gzip

j Compresser/décompresser en utilisant bzip2

Tableau 4: Les options de la commande tar

Pour les détails, consulter la source ci-dessous :

http://loulergue.free.fr/docs/HowToBackup.html

http://www.nncron.ru/nnbackup/help/FR/working/modes/dump.htm

3.3.4 La commande cpio


La commande cpio (CoPy Input to Output) sauvegarde sur la sortie standard les fichiers dont
on saisit les noms sur l’entrée standard, par défaut l’écran et le clavier.

A la différence de tar, cpio stocke les chemins d’accès aux fichiers tels qu’ils sont indiqués sur
son entrée lors de la sauvegarde. Ainsi, si un chemin est donné en absolu, le fichier ne pourra
être restauré qu’à son emplacement original. Ceci dit, il est possible de sélectionner les fichiers
à restaurer en utilisant les caractères génériques pour indiquer les noms de fichiers concernés.

La syntaxe générale de cpio est la suivante :

cpio <options> [<répertoire>] [<fichier…>]

Une des trois options suivantes sera obligatoire pour indiquer le mode de fonctionnement de
la commande :

-o (output) ou --create : Lecture des noms de fichiers à partir de l’entrée standard et envoie de
leur contenu sur la sortie standard. Cela permet donc de créer une archive.

-i (input) ou --extract : Lecture des données à partir de l’entrée standard. Combinée avec
d’autres options, cela permettra de consulter ou d’extraire les fichiers d’une archive.

-p (porting) ou –pass-through : Copie des fichiers dont le nom est transmis sur l’entrée standard,
dans le répertoire donné en paramètre. Ce mode permet la copie d’arborescences.

Pour restaurer la sauvegarde utiliser la commande : cpio -i[umd]

53
Administration des systèmes d’exploitation

√√ -u : restauration inconditionnelle, avec écrasement des fichiers qui existent déjà.


Par défaut les fichiers ne sont pas restaurés si ceux présents sur le disque sont
plus récents ou du même âge.
√√ -m : les fichiers restaurés conservent leur dernière date de modification.
√√ -d : cpio reconstruit l’arborescence des répertoires et sous-répertoires manquants.

Détails sur la commande cpio:

http://www.dauphin.free.fr/unix/shell/cmd/cpio.txt

3.3.5 La commande dd
La commande dd (device to device) est destinée à la copie physique, bloc par bloc, d’un fichier
périphérique vers un fichier périphérique ou quelconque. À l’origine elle était utilisée pour la
lecture et l’écriture sur bande magnétique, mais elle peut être employée avec n’importe quel
fichier. La commande dd permet de réaliser des copies physiques de disques et de systèmes
de fichiers.

Figure 20:Arguments de la commande dd

L’option conv admet les paramètres suivants :

• ascii : convertir l’EBCDIC en ASCII.


• ebcdic : convertir l’ASCII en EBCDIC.
• block : compléter les blocs se terminant par un saut de ligne avec des espaces,
jusqu’à atteindre la taille mentionnée par bs.
• unblock : remplacer les espaces en fin de blocs (de taille cbs) par un saut de ligne.
• lcase : transformer les majuscules en minuscules.
• ucase : transformer les minuscules en majuscules.

54
Unité 3: Sauvegarde et restauration

• noerror : continuer même après des erreurs de lecture.


• notrunc : ne pas limiter la taille du fichier de sortie.
• sync : compléter chaque bloc lu avec des NULs pour atteindre la taille ibs.

Ici vous allez placer le secteur de boot de la partition (où est installé lilo ou grub) dans un
fichier. Le fichier ainsi créé pourra être utilisé avec le chargeur de NT/2000/XP pour démarrer
sous Linux.

# dd if=/dev/sda1 of=boot.lnx bs=442 count=1

Pour créer un fichier vide d’une taille de 1Mo :

$ dd if=/dev/zero of=vide bs=1024 count=1024

1024+0 enregistrements lus

1024+0 enregistrements écrits

1048576 bytes (1, 0 MB) copied, 0, 0199192 s, 52,6 MB/s

Des détails sur la commande dd peuvent être trouvés sur : https://doc.ubuntu-fr.org/dd

Conclusion
La sauvegarde est une activité indispensable pour tout organisation afin d’éviter de se
retrouver dans des situations chaotiques : perte de données sans espoir de les retrouver. Une
fois les données sauvegardées, on peut les restaurer à tout moment avec des techniques
appropriées. Dans cette activité, nous avons vu comment effectuer la sauvegarde et la
restauration de données via certaines commandes.

Évaluation

1. Comparer les commandes Tar et cpio

2. En utilisant la commande dd, copier la partition sda2 sur sdb2

3. En utilisant la commande dd, comment faire pour copier un disque sur un


autre disque plus petit ? Donner un exemple.

55
Administration des systèmes d’exploitation

Résumé

Cette unité a été l’occasion d’explorer les aspects de sauvegarde et restauration. Nous
avons pu nous rendre compte que la sauvegarde ne se fait pas au hasard. Des méthodes de
sauvegarde doivent être choisies et des stratégies adoptées. Une fois tout cela fait de variété
de commandes peuvent être utilisées pour effectuer la sauvegarde et la restauration de
données.

Evaluation de l’unité
Vous êtes administrateur système d’une société. Indiquer la méthode de sauvegarde
que vous allez adopter et justifier pourquoi. Il faudra aussi indiquer où seront conservés
vos sauvegardes. En appliquant cette méthode, donner les différentes étapes pour
sauvegarder et restaurer le dossier appelé comptabilite se trouvant sur le bureau.

Système de notation
L’évaluation de cette unité compte pour 10% de l’évaluation du module. L’évaluation des
activités compte pour 4% et l’évaluation de l’unité compte pour 6%.

Critères d’évaluation

• Questions/Evaluation non répondues ou mal répondues : Echec


• Questions/Evaluation répondues partiellement ou réponse partiellement correcte
: Moitié de point pour la question/évaluation correspondante
• Toutes les évaluations sont faites avec des réponses correctes : Totalité des points

Lectures et autres ressources


1. http://www.pcmag.com/article2/0,2817,899676,00.asp; Backup Methods
and Rotation Schemes; BY MATTHEW D. SARREL; FEBRUARY 21, 2003

2. www.tandbergdata.com/us ;Tape Rotation BEST PRACTICES The Tandberg


Data SMB Guide to Backup Data Protection Strategies for the Small-to-
Medium Size Business p.10 Basic Backup Guide

3. http://public.loligrub.be/contrib/tlepoint/BASE/node38.html

4. https://doc.ubuntu-fr.org/quota

5. http://www.labo-microsoft.org/articles/win/quotas_disque/

56
Unité 4: Sécurité

Unité 4: Sécurité
Introduction
Les objectifs principaux de la sécurité informatique concernent :

1. La sécurité de la connexion : il s’agit de contrôler que les utilisateurs qui


se connectent sont bien autorisés à le faire et de leur interdire l’accès au
système dans le cas contraire.

2. L’intégrité des données : il s’agit de faire en sorte que les fichiers et les bases
de données ne soient pas corrompus et de maintenir la cohérence entre les
données.

3. La confidentialité des données : l’accès aux données en consultation et en


modification doit être limité aux seuls utilisateurs autorisés.

Au cours de cette unité, nous allons voir les différents moyens permettant de garantir les
différents aspects de sécurité ci-dessus invoqués.

Objectifs
A la fin de cette unité l’apprenant devra être capable de :

• Démontrer une bonne connaissance de la politique de mots de passe ;


• Interdire les connexions ;
• Contrôler les droits d’endossement.

Mots Clé
L’intégrité : Principe qui consiste à faire en sorte que les
fichiers et les bases de données ne soient pas corrompus
et de maintenir la cohérence entre les données.

Toolkit: Logiciel se dissimulant sur la machine en vue de


permettre son contrôle.

Authentification : L’authentification l’identification d’un


utilisateur afin de lui donner accès aux fonctionnalités
d’un système.

Mot de passe : Un code secret utilisé pour s’authentifier.

57
Administration des systèmes d’exploitation

Activité 4.1: Contrôle des droits d’endossement

Introduction
Le droit d’endossement est une technique qui consiste à donner les droits d’accès à une
commande. Au moment de l’exécution de la commande, le kernel endosse l’identité du
propriétaire ou du groupe de la commande au lieu de celle de l’utilisateur qui a lancé la
commande.

Au cours de cette activité, nous allons expliquer le principe d’endossement et voir de long en
large le contrôle des droits.

4.1.1 Contrôler les droits d’endossement


Les droits d’endossement (bits SUID et SGID) sont souvent une cause d’insécurité du système.
En effet un utilisateur mal intentionné profitant de l’inattention ou de l’absence d’un collègue
ou d’un administrateur n’étant pas déconnecté de sa console peut modifier les droits de
certaines commandes à son avantage. L’exemple le plus courant est de recopier un shell en
tant que programme peu utilisé (par exemple sx) et de lui donner les droits SUID. En lançant
cette commande vous pouvez devenir root.

1. Pour obtenir le droit de lister tous les fichiers il faut lancer la commande suivante :

# chmod u+s cat

2. Pour obtenir un shell root

# cp /bin/sh /bin/sx

# chmod u+s /bin/sx

...

$ sx

# ...

4.1.2 Politique de mot de passe


Les mots de passe sont à la base de l’authentification d’un utilisateur. Ils doivent être sûrs.
C’est pourtant généralement une grosse lacune, tant au travail qu’à la maison, et même sur
Internet :

–– mot de passe présent sur des autocollants ;


–– l’emploi d’un gestionnaire de mot de passe automatique lui-même sans mot de
passe ;
–– même mot de passe pour tous les sites Web et logiciels ;

58
Unité 4: Sécurité

–– mot de passe qui ne change jamais ;


–– mot de passe et/ou compte communs à toute la famille/service ;
–– mot de passe pas assez complexe ;
–– etc ;

Sans être exhaustif tels sont les principales lacunes de la plus part des mots de passe.

Etant donné ce qui précède, quelles solutions faut-il prendre? Changer régulièrement
de mot de passe ?

Choisir des mots de passe difficile à casser (mot de passe long comprenant de variétés de
caractères, éviter certaines évidences nom des enfants, de sa femme/son mari, date de
première rencontre, lieux de travail, etc). En adoptant des mots des passes très compliqués, et/
ou en changeant le plus souvent des mots de passe, ça risque d’entrainer les lacunes énoncer
ci-dessus. D’où le plus important est de trouver des compromis.

Les modules PAM influent sur la politique de gestion des mots de passe, forçant
éventuellement à en choisir un plus ou moins complexe. De manière surprenante, un mot de
passe doit être assez facile à retenir par un utilisateur, ce qui n’implique pas forcément qu’il
soit facile à pirater (par John the Riper par exemple). Il existe des mots de passe qui peuvent
se retenir par des moyens mnémotechniques. Vous pouvez aussi générer des mots de passe
automatiquement avec l’outil pwgen.

Vous pouvez demander à générer des mots de passe totalement aléatoires d’une longueur
donnée, ici de 10 caractères :

$ pwgen -s -1 10

ER9BAgHsZH

4.1.3 Interdiction des connexions


a. /bin/false

Certains comptes ne doivent pas être interactifs : les connexions depuis une console devraient
leur être interdites. Ces comptes peuvent être dédiés à une application, à un service, à une
connexion FTP, etc., mais la connexion devrait être refusée : pas de shell !

Dans la liste des shells autorisés, un attire l’attention :

$ cat /etc/shells

/bin/ash

/bin/bash

/bin/bash1

/bin/csh

59
Administration des systèmes d’exploitation

/bin/false

/bin/ksh

/bin/sh

/bin/tcsh

/bin/true

/bin/zsh

/usr/bin/csh

/usr/bin/ksh

/usr/bin/passwd

/usr/bin/bash

/usr/bin/tcsh

/usr/bin/zsh

Le shell /bin/false interdit les connexions interactives. Dès que login tente d’exécuter le shell
de connexion l’utilisateur est refoulé.

b. /etc/nologin

Avant même de passer par un pseudoshell de connexion, les modules PAM autorisent de
nombreuses limitations. Parmi eux le module « pam_nologin » qui vous permet d’interdire la
connexion des utilisateurs sauf root. Si un utilisateur tente de se connecter le contenu du fichier
/etc/nologin est affiché. C’est utile en cas de maintenance : seul root peut alors se connecter.

c. /etc/securetty

Dans le même genre, le fichier /etc/securetty contient la liste des terminaux considérés comme
sûrs. Pour le service donné, la connexion sera interdite si le terminal de la personne tentant de
s’y connecter n’apparaît pas. Dans l’exemple suivant les logins (via la commande login) sont
autorisés uniquement depuis les pseudo-terminaux locaux, c’est-à-dire seulement depuis les
consoles directement accessibles sur l’ordinateur via les combinaisons [Alt][F1] à [Alt][F7].

$ grep securetty *

login:auth [user_unknown=ignore success=ok ignore=ignore

auth_err=die default=bad] pam_securetty.so

$ cat /etc/securetty

# This file contains the device names of tty lines (one per line,

# without leading /dev/) on which root is allowed to login.

60
Unité 4: Sécurité

tty1

tty2

tty3

tty4

tty5

tty6

Conclusion
Les droits d’endossement (bits SUID et SGID) sont souvent une cause d’insécurité du système.
En effet un utilisateur mal intentionné profitant de l’inattention ou de l’absence d’un collègue
ou d’un administrateur n’étant pas déconnecté de sa console peut modifier les droits de
certaines commandes à son avantage. Cette activité a été l’occasion d’explorer l’endossement,
les problèmes qu’il peut occasionner, la politique des mots de passes et les restrictions d’accès.

Évaluation

1. Que comprenez-vous par l’endossement ?

2. Expliquer la bonne politique de mot de passe.

3. Par une commande appropriée, générer un mot de passe aléatoire de 15


caractères.

Activité 4.2: Mots de passe et rootkits

Introduction
Un mot de passe fort est un mot de passe difficile à deviner. Cela constitue une des clés
de sécurité d’un système informatique. Il en va de soi que les mots de passe sont cibles de
plusieurs attaques. Comment parvient-on à deviner un mot de passe ? Par quel moyen utilise-
t-on pour contrôler un ordinateur cible. L’ensemble de ces questions sont détaillées dans cette
activité.

61
Administration des systèmes d’exploitation

4.2.1 Test de mot de passe


Les outils crack et « John the ripper » tentent de décrypter vos mots de passe, tant depuis
un dictionnaire que par la force brute (les uns après les autres). Dans le pire des cas, ils les
trouvent en quelques secondes. Dans le meilleur, en plusieurs jours, voire semaines. Dans
ce cas, le mot de passe peut être considéré comme sûr. “John the ripper” s’utilise très
simplement. La commande est : john. Par exemple, pour tester l’intégralité de votre fichier /
etc/shadow , on écrit la commande suivante:

# john /etc/shadow

Loaded 5 password hashes with 5 different salts (OpenBSD Blowfish [32/64])

Dans le mode par défaut, john :

–– tente une détection simple via des combinaisons courantes liées au compte,
–– passe au mode dictionnaire avec application de règles,
–– puis tente une recherche incrémentale.

Une recherche peut prendre de quelques secondes à quelques semaines. Pour tester un seul
utilisateur :

# john -user:seb /etc/shadow

Pour tester les utilisateurs avec un dictionnaire:

# john -user:seb /etc/shadow

Pour tester les utilisateurs avec un dictionnaire :

# john -users:seb -wordlist:/var/lib/john/wordlists/all /etc/shadow

Pour reprendre une recherche interrompue ([Ctrl][C]) :

# john -restore

John place ses résultats dans le répertoire ~/.john, généralement chez root qui seul, en
principe, devrait pouvoir lancer cet outil :

$ ls -l .john

total 4

-rw------- 1 root root 70 mai 23 21:58 john.pot

-rw------- 1 root root 124 mai 23 21:54 john.rec

Le fichier john.pot contient les résultats trouvés par John. Ici le fichier n’est pas vide. C’est
problématique : john a trouvé un mot de passe. Le fichier john.rec contient l’état actuel de la
recherche, utilisé en interne et en cas de reprise après interruption.

62
Unité 4: Sécurité

Sur une machine basée sur un Intel Core 2 duo 64 bits à 3.4 Ghz, le mot de passe de seb (celui
de l’auteur) a été cracké en 4 minutes et 22 secondes. Il était (volontairement cette fois) basé
sur un mot du dictionnaire. Si vous appuyez sur une touche durant la recherche, john affiche
son état.

Soit un compte henri dont le propriétaire a pour mot de passe le même mot que son nom de
compte, à savoir « henri » :

$j o hn - u s e r s :he n r i / e t c/ s ha d o w

C r e a t e d d i r e ct o r y : / r o o t / .j o hn

L o a d e d 1 p a s s w o r d ha s h ( O p e n B S D B l o w fi s h [ 3 2/ 6 4] )

he n r i ( he n r i )

gu es s es :1 t i m e:0:00:00:00100% (1) c/s :4.3 4 t r y i n g:hen r i

Pour plus de détails sur la commande john visitez le lien ci-dessous:

http://www.openwall.com/john/doc/

4.2.2 Recherche des rootkits

4.2.2.1 Principe du rootkits


Une fois qu’un pirate quelconque aura réussi, via une faille ou un mot de passe trop simple,
à pénétrer votre machine, il cherchera probablement à s’aménager une porte d’entrée plus
importante, ou plutôt une porte de derrière, une backdoor, afin de pouvoir revenir se servir de
votre machine à des fins douteuses ou y puiser ou stocker des données (certains PCs se sont
retrouvés comme cela à contenir des milliers de fichiers mp3 ou divx et à servir de serveur pour
des personnes peu scrupuleuses). Cela passe généralement par le service ftp mal configuré ou
via ssh.

Les pirates parviennent à placer des scripts, de modifier l’environnement, de remplacer un


fichier par un autre de manière à obtenir un accès privilégié (root) à une machine. Ce procédé
s’appelle installer un rootkit. Une fois celui-ci en place, il garantit, tant qu’il n’a pas été détecté,
un accès root à la machine.

4.2.2.2 chkrootkit
L’outil chkrootkit est un outil simple permettant de rechercher la présence des rootkits les plus
connus et les plus courants. Il est efficace seulement s’il est mis à jour régulièrement, lancé
régulièrement, et ne se substitue pas aux contrôles déjà cités précédemment.

63
Administration des systèmes d’exploitation

Conclusion
La force d’un mot de passe réside dans la difficulté de le deviner. Des technique de crack
de mot de passe existe (commande john). Une fois les mots de passe devinés les hackers
peuvent contrôler votre machine par l’intermédiaire de petits programmes dissimulés dans
votre ordinateur (toolkits). Cette activité a été l’occasion d’explorer le fonctionnement de la
commande john et de voir la notion de toolkit et la manière de détecter les toolkit.

Evaluation

1. Parler brièvement de la commande john?

2. Par de commandes appropriées de test de mot de passe, effectuer les


opérations suivantes :

1. Tester un seul utilisateur

2. Tester les utilisateurs avec le dictionnaire ;

3. Afficher le résultat de la commande john.

Activité 4.3: Sécurité des services et des réseaux

Introduction
L’une des tâches les plus importantes en matière de sécurité est de protéger le réseau contre
les intrusions. Chaque fois que vous avez un réseau, en particulier celui qui est connecté à
Internet, les menaces d’intrusion sont nombreuses. Un certain nombre de choses peuvent être
faites pour minimiser le danger, mais on ne peut pas avoir une méthode fiable à 100%. Dans
cette activité, vous apprendrez comment vérifier les ports ouverts et comment supprimer les
services inutiles afin de minimiser les attaques réseaux.

4.3.1 Vérification des ports ouverts

4.3.1.1 Les sockets


Les connexions réseau entre deux machines s’effectuent par des sockets. Un socket est une
connexion entre deux points via un réseau. Une machine dispose d’une adresse IP et de
ports (virtuels) de connexion numérotés, auxquels sont rattachés des services (voir pour cela
le chapitre Le réseau). Un client établit une connexion depuis un port de sa machine (port >
1024, généralement choisi aléatoirement parmi les ports libres) vers un port donné d’une autre
machine, par exemple un serveur Web sur le port 80. La communication établie entre les deux
passe par un socket.

64
Unité 4: Sécurité

Le système peut être configuré pour accepter ou rejeter des connexions depuis ou vers
certains ports locaux ou distants, idem pour les adresses IP. C’est le rôle du firewall (mur de
feu) comme Netfilter. Sur une installation Linux de base, sauf si l’option était présente lors
de l’installation, le firewall n’est pas toujours activé par défaut. Les ports ne sont pas filtrés et
toute machine extérieure peut tenter d’établir une connexion sur un port de votre machine : ce
qui s’appelle ouvrir un socket.

Cela ne signifie pas forcément qu’il y a un trou de sécurité : si aucun service n’est à l’écoute,
la connexion est impossible. C’est cependant rarement le cas. De nombreux services sont
présents et démarrés par défaut. Si certains souffrent de vulnérabilités, ou sont configurés de
manière trop laxiste, il existe un risque réel d’intrusion.

4.3.1.2 Informations depuis netstat


La commande netstat( network statistics) permet d’obtenir des informations et des statistiques
réseaux sur une machine locale. Notamment vous pouvez vérifier quels sont les ports à
l’écoute sur votre machine, qui a établi une connexion, et quels sont les processus (services)
locaux à l’écoute. Les paramètres de cette commande sont les suivants :

√√ -a : affichage des connexions TCP actives et ports (TCP et UDP ) sur lesquels
l’ordinateur écoute.
√√ -b : Affichage du nom du programme auteur de et ports ouverts (Windows
uniquement).
√√ -p : Affiche le nom du programme impliqué dans la création de chaque connexion
et le PID associé (Linux uniquement).
√√ -e : Affiche les statistiques ethernet comme le nombre d’octets et de paquets
envoyés et reçus. Ce paramètre peut être combiné avec -s.
√√ -n : Affiche les connexions TCP actives, cependant les adresses et les ports sont
affichés au format numérique, sans tentative de résolution de nom.
√√ -o : Affiche les connexions TCP actives et inclut l’identifiant du processus (PID)
pour chaque connexion. Vous pouvez retrouver la correspondance entre les PID
et les applications dans le gestionnaire des tâches de Windows. Ce paramètre
peut être combiné avec -a, -n et -p. Ce paramètre est disponible sous Windows
XP, et Windows 2003 Server mais pas sous Windows 2000.
√√ -i : Affiche les interfaces réseaux et leur statistiques (non disponibles sous
Windows).
√√ -r : Affiche le contenu de la table de routage (équivalent à route print sous
Windows).
√√ -s : Affiche les statistiques par protocole. Par défaut, les statistiques sont affichées
pour IP, IPv6, ICMP, ICMPv6, TCP, TCPv6, UDP et UDPv6. L’option -p peut être
utilisée pour spécifier un sous-jeu de la valeur par défaut.

Source : https://fr.wikipedia.org/wiki/Netstat

65
Administration des systèmes d’exploitation

4.3.1.3 L’outil nmap


nmap est un outil d’exploration réseau et d’audit de sécurité. Il permet de tester les
connexions réseaux d’une machine donnée. Notamment, en analysant les trames, il arrive
souvent à déterminer le type et la version du système d’exploitation distant.

Lorsque nmap n’est pas installé, ~$ sudo apt-get install nmap

Visiter le lien ci-contre pour approfondir le mode d’utilisation de nmap : http://www.coyotus.


com/viewtopic.php?id=193

En quelques commandes il est possible de désactiver les services non nécessaires :

~ $ s e r v i ce v s ft p d s t o p

~ $ s e r v i ce s m b s t o p

En tapant de telles commandes une authentification sera demandée. Il faut alors saisir un mot
de passe d’un compte ayant les privilèges administrateur.

Dès qu’un service réseau est arrêté, le port n’est plus accessible. Le paramètre -A permet de
détecter en plus le système d’exploitation distant et sa version. Pour cela un ou plusieurs ports
doivent être ouverts. Mieux : nmap interroge chaque service associé aux ports trouvés quand
c’est possible pour récupérer des informations.

4.3.2 Suppression des services inutiles

4.3.2.1 Généralités
Si vous vous faites « hacker » votre système, c’est que la personne mal intentionnée a trouvé
le moyen de rentrer. Contrairement à l’idée répandue, l’installation d’un firewall ne résout pas
tous les problèmes, d’autant plus que sur un poste de travail la tendance est d’ouvrir plusieurs
ports réseaux vers Internet (ou plutôt depuis Internet) : ftp, http, p2p (réseaux eDonkey,
c’est-à-dire

eMule, Bittorrent, etc.), ssh et ainsi de suite. Or il suffit qu’un seul des services associés
présente un risque pour que votre machine soit attaquée avec les problèmes qui en découlent.

Même si le service en tant que tel n’a pas de trou connu, le paramétrage que vous avez
appliqué peut être trop simple ou laxiste. Il ne serait pas très malin de laisser votre serveur
ssh accepter les connexions depuis l’extérieur si votre mot de passe ou celui de root est
toto, password ou quelque chose de ressemblant. Lors d’une attaque l’auteur de ce livre
a eu l’occasion de constater que l’attaquant tentait en boucle de se connecter, via ssh, en
utilisant une série de logins/mots de passe prédéfinis parmi certaines combinaisons classiques
préconfigurées par défaut dans certains programmes. Un cas simple est une installation de
MySQL par défaut où le compte d’administration n’a pas de mot de passe.

66
Unité 4: Sécurité

Donc, pensez à désactiver tous les services dont vous n’avez pas besoin. S’il s’avère que
certains vous sont nécessaires à certains moments et pas à d’autres, n’hésitez pas à les
démarrer seulement à ce moment, et à les stopper ensuite. De même, sur votre firewall
(netfilter ou autre) ne laissez ouverts que les ports strictement nécessaires.

4.3.2.2 Services standalone


Les services standalone, c’est-à-dire lancés de manière indépendantes, sont contrôlés via la
commande service ou /etc/init.d/service.

Lister la liste des services disponibles sur la machine via la commande :

$ s e r v i ce – s t a t u s - a l l

Différentes actions peuvent être appliquées aux services. Pour cela utiliser la commande
suivante :

s u do s e r v i ce N o m S e r v i ce A C T I O N

Avec :

• NomService : le nom du service concerné


• ACTION : Action à appliquer au service. Il s’agit notamment du démarrage
(start), de l’arrêt (stop), de forcer l’arrêt (force-stop), du redémarrage (restart), du
rechargement (reload), etc.

Pour plus de détails, consulter le lien: https://doc.ubuntu-fr.org/script_sysv

Conclusion
La connexion d’une machine sur un réseau augmente les risques d’attaques. Afin de minimiser
ces attaques, quelques précautions peuvent être prises notamment la vérification des ports
ouverts et la fermeture des services inutiles. Un ensemble de commandes y relatifs ont été
détaillées dans cette activité.

Evaluation

1. Qu’est-ce qu’une attaque réseau ?

2. Pourquoi une machine connectée augmente les risques d’attaque ?

3. Expliquer les principales précautions à prendre pour minimiser les


attaques réseau.

4. En utilisant la commande appropriée, afficher le nom du programme


impliqué dans la création de chaque connexion.

67
Administration des systèmes d’exploitation

Résumé

Les principaux objectifs de la sécurité informatique concernent la sécurité de la connexion,


l’intégrité des données et la confidentialité des données. Au cours de cette unité
d’apprentissage, nous avons vu les différentes précautions à prendre et les commandes à
utiliser. Parmi les précautions à prendre, on citerait notamment : une bonne politique des
mots de passe, la vérification des connexions et la suppression des services inutiles sont un
ensemble des précautions à prendre.

Evaluation de l’unité
1. Détailler les précautions à prendre pour garantir la sécurité des mots de
passe.

2. Par une commande appropriée, vérifier les ports à l’écoute sur votre
machine, ainsi que les processus (services) locaux à l’écoute.

3. Lister les services disponibles sur votre machine.

4. A l’aide d’un exemple, arrêter un service donné.

Système de notation
L’évaluation de cette unité compte pour 5% de l’évaluation du module. L’évaluation des
activités compte pour 2% et l’évaluation de l’unité compte pour 3%.

Critères d’évaluation

• Questions/Evaluation non répondues ou mal répondues : Echec


• Questions/Evaluation répondues partiellement ou réponse partiellement correcte
: Moitié de point pour la question/évaluation correspondante
• Toutes les évaluations sont faites avec des réponses correctes : Totalité des points
• Lectures et autres ressources
• Linux System Administration, Vicki Stanfield, Roderick W. Smith, Sybex., 2nd
Edition, 2002, Chapter 15
• LPI – Linux System Administration, Revision 1.0, 2000, Chapter 9
• [Moore] Moore, Sonia Marie (Ed.). “MS Windows NT Workstation 4.0 Resource
Guide.” 1995. http://www.microsoft.com/technet/archive/ntwrkstn/reskit/default.
mspx.

68
Unité 4: Sécurité

Résumé du module

L’administration système est un champ vaste allant de l’installation du SE à l’utilisation et


maintenance du système. L’administrateur système doit garantir la bonne utilisation du
système par les utilisateurs et programmes ainsi que la disponibilité des données. Dans un
environnement connecté cette tâche se révèle souvent difficile car les systèmes sont souvent
cible de beaucoup d’attaques et les utilisateurs ne sont pas quelques fois suffisamment
sensibilisés sur l’importance de la sécurité de leur système.

Au cours de ce module, vous avez eu l’occasion de mettre en pratique les principales tâches
d’administration à savoir : la gestion des utilisateurs et des groupes, la configuration des
systèmes de fichiers et la gestion des disques, la sauvegarde et restauration des données ainsi
que l’application de quelques mesures de sécurité d’un système.

Examen Final
1. Donner les propriétés principales d’un système Linux

2. Lister le contenu de votre répertoire de connexion

3. A l’aide du manuel (man) et tenant compte des résultats des commandes


ci-dessous, dire en peu de mot ce que permet de faire chaque commande
Logname, id, tty, ls, who, pwd, cat, date

4. Construisez la sous arborescence suivante sous « rep » :

• Dans « rep » vous créez le répertoire « rep1 » et les fichiers « .c », « a » et « b ».


• Dans « rep1 » vous créez le répertoire « rep2 » et les fichiers « a1 », « b1 » et «
.c1 ».
• Dans « rep2 » vous créez le répertoire « rep3 » et les fichiers « a2 », « b2 » et «
.c2 ».
• Enfin dans « rep3 » vous créez le fichier « a3 ».

Donner les résultats de : « $ ls ; ls . ; ls .. ; ls -a ; ls -a . ; ls -a

69
Administration des systèmes d’exploitation

Siège de l’Université Virtuelle Africaine

The African Virtual University


Headquarters

Cape Office Park

Ring Road Kilimani

PO Box 25405-00603

Nairobi, Kenya

Tel: +254 20 25283333

contact@avu.org

oer@avu.org

Bureau Régional de l’Université


Virtuelle Africaine à Dakar

Université Virtuelle Africaine

Bureau Régional de l’Afrique de l’Ouest

Sicap Liberté VI Extension

Villa No.8 VDN

B.P. 50609 Dakar, Sénégal

Tel: +221 338670324

bureauregional@avu.org

2017 UVA

72

Vous aimerez peut-être aussi