Titre : | Linux : administration avancée maintenance et exploitation de vos serveurs |
Support: | Livre |
Editeur : | Paris : Editions ENI, 2019 |
ISBN/ISSN/EAN : | 978-2-409-01789-6 |
Langues: | Français |
Résumé : |
Ce livre s'adresse à un public de professionnels de l'informatique soucieux de consolider leurs connaissances de base sur le système d'exploitation Linux afin d'évoluer en compétences sur la maintenance et le support de ce dernier. Les distributions Linux traitées dans le livre sont Debian 9 et Red Hat Enterprise Linux/CentOS 7. Il est néanmoins possible d'adapter les sujets du livre à d'autres distributions. L'auteur commence par présenter l'architecture du système. Les chapitres suivants traitent chacun un sujet précis : la compilation et l'installation du noyau Linux (en version 4.19 au moment de l'écriture), le chargement et le déchargement de modules de noyau (Loadable Kernel Modules), les pseudos systèmes de fichiers procfs et sysfs, la détection du matériel, la gestion des disques, la séquence d'amorçage, la maintenance des applications, la configuration réseau d'un ordinateur, l'analyse de performances et les paramètres de sécurité à prendre en compte pour sécuriser un serveur. L'auteur détaille les commandes nécessaires, illustre ces dernières au travers d'exemples concrets et propose des exercices pour permettre au lecteur de travailler les points essentiels de chaque chapitre Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr. |
Sommaire : |
Introduction
1. Que contient ce livre ? 2. Prérequis 3. Obtenir les logiciels mis en œuvre 3.1 Image ISO des distributions Linux 3.2 Oracle VM VirtualBox 3.3 Machines virtuelles 3.4 Conventions Architecture du système GNU/Linux 1. Vue d'ensemble 1.1 Projet GNU 1.2 Distributions Linux 2. Identifier la distribution 2.1 Debian 2.2 Fedora, Red Hat et CentOS 3. Plates-formes matérielles 3.1 Sur quelles plates-formes ? 3.2 Identifier l'architecture matérielle 4. Anneaux de protection 4.1 Commutation de contexte 4.2 Architecture 32 bits 4.3 Architecture 64 bits 4.3.1 Sans virtualisation 5. Chargeurs d'amorçage 5.1 Définition 6. Grub legacy 7. GRUB-PC 8. Noyau Linux 8.1 Composants du noyau 8.2 Code source 8.3 Version du noyau 8.3.1 Historique des versions 8.3.2 Numéros de version 8.3.3 Comment connaître la version du noyau ? 8.4 Modules du noyau 9. Pilotes de périphériques 9.1 Fichiers spéciaux 9.2 Pilotes réseau 10. Bibliothèques 10.1 Bibliothèques statiques 10.2 Bibliothèques partagées 10.3 Emplacement des bibliothèques 11. Appels système 12. Gestion des services 12.1 System V init 12.2 Services 12.3 Debian 12.3.1 Red Hat 12.4 Systemd 13. Journaux système 13.1 Service rsyslogd 13.2 Service systemd-journald 14. Shell 14.1 Différents shells 14.1.1 Bourne Shell 14.1.2 Almquist Shell et Debian Almquist Shell 14.1.3 Korn Shell 14.1.4 C-Shell et Tenex C-Shell 14.1.5 Bourne Again Shell 14.2 Quel est le shell de connexion ? 15. Applications 15.1 Pages de manuel 15.1.1 Sections 15.1.2 Rechercher l'aide d'une commande 16. Exercice Noyau Linux 1. Introduction 1.1 Pourquoi compiler un noyau ? 1.2 Fichiers composant le noyau 2. Compiler et installer un noyau 2.1 Effectuer une compilation classique 2.1.1 Prérequis 2.1.2 Télécharger le code source du noyau 2.1.3 Outils pour configurer le noyau 2.1.4 Fichiers de configuration 2.1.5 Supprimer les fichiers d’une précédente compilation 2.1.6 Construire le noyau 2.1.7 Installer un module de noyau 2.2 Compiler un noyau façon Debian 2.2.1 Paquets nécessaires 2.2.2 Privilèges utilisateur 2.2.3 Supprimer les fichiers d’une précédente compilation 2.2.4 Construire un noyau 2.2.5 Installer un noyau 3. Désinstaller un noyau 3.1 Debian 3.1.1 Lister les noyaux installés 3.1.2 Désinstaller 3.2 Red Hat/CentOS 3.2.1 Lister les noyaux installés 3.2.2 Désinstaller 3.2.3 Limiter le nombre de paquets 4. Choisir un noyau au démarrage 4.1 Debian 4.2 Red Hat/CentOS 4.3 Délai pour choisir le noyau à exécuter 5. Kernel panic 5.1 Caractérisation 5.2 Fréquence du problème 5.3 Analyse de la source du problème 5.4 Analyse du matériel 5.5 Analyse des logiciels 5.5.1 Chargeur d'amorçage 5.5.2 Origine du noyau 5.5.3 Modules 5.6 Recherche de solutions 5.7 Appliquer la solution 6. Exercice Modules 1. Introduction 2. Compiler et installer un module 2.1 Prérequis à la compilation 2.1.1 Debian 2.1.2 Red Hat 2.2 Écrire un module « Hello world » 2.2.1 Rédiger le code source 2.2.2 Créer le fichier Makefile 2.2.3 Compiler le code source hello.c 3. Charger un module 3.1 Installer le module hello 3.2 insmod 3.3 Gérer les dépendances 3.4 modprobe 3.5 Charger un module au démarrage 3.5.1 Debian 3.5.2 Red Hat 4. Décharger un module 5. Lister les modules 5.1 Lister tous les modules disponibles 5.2 Lister les modules chargés 6. Obtenir des informations 7. Bloquer un module 8. Journaux système 9. Exercice Pseudo-systèmes de fichiers 1. procfs 1.1 Présentation 1.2 Principaux fichiers de /proc 1.2.1 /proc/acpi 1.2.2 /proc/apm 1.2.3 /proc/asound 1.2.4 /proc/asound/card0/ 1.2.5 /proc/asound/card0/codec97#0 1.2.6 /proc/asound/card0/id 1.2.7 /proc/asound/card0/intel8x0 1.2.8 /proc/asound/card0/pcmXX/ 1.2.9 /proc/asound/cards 1.2.10 /proc/asound/devices 1.2.11 /proc/asound/ 1.2.12 /proc/asound/modules 1.2.13 /proc/asound/oss 1.2.14 /proc/asound/pcm 1.2.15 /proc/asound/seq 1.2.16 /proc/asound/timers 1.2.17 /proc/asound/version 1.2.18 /proc/buddyinfo 1.2.19 /proc/bus 1.2.20 /proc/cmdline 1.2.21 /proc/cpuinfo 1.2.22 /proc/crypto 1.2.23 /proc/devices 1.2.24 /proc/diskstats 1.2.25 /proc/dma 1.2.26 /proc/driver et /proc/driver/nvram 1.2.27 /proc/driver/rtc 1.2.28 /proc/execdomains 1.2.29 /proc/fb 1.2.30 /proc/filesystems 1.2.31 /proc/fs 1.2.32 /proc/interrupts 1.2.33 /proc/iomem 1.2.34 /proc/ioports 1.2.35 /proc/irq 1.2.36 /proc/kallsyms 1.2.37 /proc/kcore 1.2.38 /proc/keys 1.2.39 /proc/key-users 1.2.40 /proc/kmsg 1.2.41 /proc/kpagecount 1.2.42 /proc/kpageflags 1.2.43 /proc/loadavg 1.2.44 /proc/locks 1.2.45 /proc/mdstat 1.2.46 /proc/meminfo 1.2.47 /proc/misc 1.2.48 /proc/modules 1.2.49 /proc/mounts 1.2.50 /proc/mtrr 1.2.51 /proc/net 1.2.52 /proc/pagetypeinfo 1.2.53 /proc/partitions 1.2.54 /proc/sched_debug 1.2.55 /proc/schedstat 1.2.56 /proc/scsi 1.2.57 /proc/self 1.2.58 /proc/slabinfo 1.2.59 /proc/softirqs 1.2.60 /proc/stat 1.2.61 /proc/swaps 1.2.62 /proc/sys 1.2.63 /proc/sysrq-trigger 1.2.64 /proc/sysvipc 1.2.65 /proc/timer_list 1.2.66 /proc/timer_stats 1.2.67 /proc/tty 1.2.68 /proc/uptime 1.2.69 /proc/version 1.2.70 /proc/vmallocinfo 1.2.71 /proc/vmstat 1.2.72 /proc/zoneinfo 1.3 Dossiers d'un processus 1.3.1 /proc/1/cmdline 1.3.2 /proc/1/cwd 1.3.3 /proc/1/environ 1.3.4 /proc/1/exe 1.3.5 /proc/1/fd 1.3.6 /proc/1/maps 1.3.7 /proc/1/smaps 1.3.8 /proc/1/mem 1.3.9 /proc/1/root 1.3.10 /proc/1/stat 1.3.11 /proc/1/statm 1.3.12 /proc/1/status 1.4 Modification des paramètres du noyau 1.4.1 Modification volatile 1.4.2 Modification permanente 2. sysfs 2.1 Présentation 2.2 Principaux fichiers de /sys 2.2.1 /sys/block 2.2.2 /sys/bus 2.2.3 /sys/class 2.2.4 /sys/dev 2.2.5 /sys/devices 2.2.6 /sys/firmware 2.2.7 /sys/fs 2.2.8 /sys/hypervisor 2.2.9 /sys/kernel 2.2.10 /sys/module 2.2.11 /sys/power 2.3 Utilitaire systool 2.3.1 Installation 2.3.2 Utilisation de systool 2.4 Modification des paramètres du noyau 3. Exercice Dépannage matériel 1. Types de problèmes matériels 1.1 Pannes matérielles 1.1.1 Non-fonctionnement du matériel 1.1.2 Fonctionnement erratique du matériel 1.1.3 Problèmes de firmware et de pilote 1.1.4 Autres considérations 1.2 Matériel non détecté par le système 2. Analyser le matériel 2.1 Lister le matériel 2.1.1 Installation de lshw 2.1.2 Utilisation de lshw 2.2 Système 2.3 CPU 2.4 Table DMI 2.5 Bus 2.5.1 lspci 2.5.2 lsusb 2.5.3 lsscsi 2.5.4 lspcmcia 2.6 Mémoire 2.6.1 Informations sur la mémoire 2.6.2 Diagnostiquer la mémoire 2.7 Carte graphique 2.8 Disques durs 2.8.1 Informations sur les contrôleurs 2.8.2 Informations sur les disques 2.8.3 Informations sur les volumes 2.8.4 Diagnostiquer un disque dur 2.9 Carte réseau 3. Exercice Maintenance des disques 1. Introduction 2. Partitions 2.1 Table de partition 2.1.1 Type msdos 2.1.2 Type GPT 2.1.3 Convertir du MBR vers GPT 2.1.4 Supprimer une table de partition 2.2 Outils de partitionnement 2.2.1 fdisk 2.2.2 cfdisk 2.2.3 GNU parted 2.2.4 GParted et QtParted 2.2.5 Live CD 3. Logical Volume Manager 3.1 Terminologie 3.1.1 Volume physique 3.1.2 Groupe de volumes 3.1.3 Volume logique 3.1.4 Métadonnées 3.2 Administration des volumes physiques 3.2.1 Créer un volume physique 3.2.2 Afficher les volumes physiques 3.2.3 Modifier la taille d'un volume physique 3.2.4 Supprimer un volume physique 3.3 Administration des groupes de volumes 3.3.1 Créer un groupe de volumes 3.3.2 Afficher les groupes de volumes 3.3.3 Ajouter un volume physique au groupe de volumes 3.3.4 Retirer un volume physique du groupe de volumes 3.3.5 Activer ou désactiver un groupe de volumes 3.3.6 Supprimer un groupe de volumes 3.3.7 Diviser un groupe de volumes 3.3.8 Fusionner des groupes de volumes 3.3.9 Renommer un groupe de volumes 3.4 Administration des volumes logiques 3.4.1 Créer des volumes logiques en mode linéaire 3.4.2 Créer des volumes logiques en mode stripe 3.4.3 Créer des volumes logiques en miroir 3.4.4 Créer des snapshots de volume logique 3.4.5 Afficher les volumes logiques 3.4.6 Augmenter la taille d'un volume logique 3.4.7 Réduire la taille d'un volume logique 3.4.8 Renommer un volume logique 3.4.9 Supprimer un volume logique 3.5 Déplacer des données 4. Systèmes de fichiers 4.1 ext2 4.1.1 Blocs 4.1.2 Superbloc 4.1.3 Inodes 4.1.4 Créer un système de fichiers ext2 4.2 ext3 4.2.1 La journalisation 4.2.2 Convertir une partition ext2 en ext3 4.2.3 Créer un système de fichiers ext3 4.3 ext4 4.3.1 Convertir une partition ext3 en ext4 4.3.2 Créer un système de fichiers ext4 5. Exercices 5.1 Partitionnement pendant l'installation 5.2 Partitionnement post-installation Séquence d'amorçage 1. Introduction 2. Processus d'amorçage 3. GRUB 2 3.1 Identifier la version de GRUB 3.2 Fichiers de configuration 4. L’unité cible (target) 4.1 Gestion de la cible par défaut 4.2 Contrôle des cibles 4.3 Sélection d'une cible différente au démarrage 4.3.1 Mode de secours (rescue) 4.3.2 Mode d’urgence (emergency) 4.4 Récupération du mot de passe de root 4.5 Analyser le processus de démarrage 5. Sauver et restaurer le MBR 6. Le journal du boot 7. Exercice Maintenance des applications 1. Introduction 2. Application ne s'exécutant pas 2.1 Description d'un paquet installé 2.2 Fichiers de configuration 2.3 Consulter les journaux 2.4 Filtrages réseau 2.5 Dépendances du programme 2.6 Emplacement des bibliothèques 2.7 Mode de débogage 3. Application ne répondant pas 3.1 Mode débogage 3.2 Terminer un processus 3.2.1 Rechercher un PID 3.2.2 Outils pour terminer un processus 4. Fonctionnement dégradé 5. Comportements inattendus 5.1 Supprimer les zombies 5.2 Fuite de mémoire 6. Exercices 6.1 Tuer un programme zombie 6.2 Identifier une fuite mémoire Maintenance de la configuration réseau 1. Modèles de communication 1.1 Rappel du modèle OSI 1.2 Modèle TCP/IP 1.3 Modèle OSI contre modèle TCP/IP 2. Interface physique 2.1 Détection du matériel et du pilote 2.2 Adressage physique 2.2.1 Identifier l'adresse MAC 2.2.2 Cache ARP 2.2.3 ARPing 3. Interface logique 3.1 CentOS 7 : changer le nom de l'interface 3.2 Activer/désactiver une interface 3.3 Configurer une interface 3.3.1 Configuration des interfaces sous Debian 3.3.2 Configuration des interfaces sous Red Hat 3.4 Adressage IPv4 3.4.1 Adresse IPv4 statique 3.4.2 Adressage IPv4 dynamique 3.5 Passerelle par défaut 3.6 Résolution de noms d'hôtes 3.6.1 Tester la résolution de noms 3.6.2 Fichiers de configuration 4. Outils d'analyse 4.1 Problèmes de connexion 4.1.1 Vérifier la configuration TCP/IP 4.1.2 Vérifier l'ajout au réseau 4.1.3 Vérifier la communication locale 4.1.4 Vérifier la communication distante 4.2 Bloquer/débloquer le ping 4.2.1 Bloquer ping avec /proc 4.2.2 Bloquer ping 4.3 Ports ouverts 4.4 Bande passante 5. Exercices 5.1 Collecter la configuration d'une carte réseau 5.2 Renommer l'interface réseau en eth0 Analyse des performances 1. Introduction 2. Goulet d'étranglement 2.1 Identifier les ressources 2.2 Capturer et stocker des données 3. Processeur 4. Mémoires 4.1 Mémoire physique 4.1.1 Architecture x86 4.1.2 Architecture x86_64/amd64 4.2 Mémoire tampon 4.3 Mémoire cache 4.4 L'espace d'échange 4.4.1 Swap en tant que partition 4.4.2 Swap en tant que fichier 4.5 Mémoire virtuelle 4.6 Afficher la mémoire du système 4.7 La carte mémoire d'un programme 4.8 Mémoire insuffisante 5. Disques 6. Interfaces réseau 7. Exercice 7.1 Création d'un fichier swap 7.2 Stress de la mémoire Sécurité 1. Introduction 2. Sécurité physique 2.1 Qui doit accéder à la machine ? 2.2 Alimentation électrique 2.3 Interfaces de communication 2.4 BIOS 3. Sécurité logicielle 3.1 Version des logiciels 3.2 Que faut-il installer ? 3.3 Mise à jour 3.4 Gérer des paquets deb avec apt 3.4.1 Installer un paquet 3.4.2 Rechercher des paquets 3.4.3 Afficher la description d'un paquet 3.4.4 Afficher les dépendances 3.4.5 Installer les dépendances 3.4.6 Afficher les informations d'un paquet 3.4.7 Identifier le dépôt d'un paquets 3.4.8 Provenance d'un fichier 3.4.9 Lister le contenu d'un paquet 3.4.10 Rechercher les versions des paquets disponibles 3.4.11 Mettre à jour les dépôts 3.4.12 Mettre à jour les paquets système 3.4.13 Désinstaller un paquet 3.4.14 Supprimer les paquets d'installation 3.5 Gérer des paquets deb avec dpkg 3.5.1 Lister les paquets installés 3.5.2 Reconfigurer un paquet 3.5.3 Traiter les paquets cassés 3.6 Gérer les paquets RPM avec yum 3.6.1 Mise à jour du système 3.6.2 Rechercher un paquet 3.6.3 Installer un paquet 3.6.4 Supprimer un paquet 3.6.5 Afficher les informations du paquet 3.6.6 Mise à jour sélective 3.6.7 Gérer les groupes de programmes 3.7 Gérer les paquets RPM avec rpm 3.7.1 Installer un paquet 3.7.2 Lire les informations d'un paquet 3.7.3 Afficher tous les paquets installés 3.7.4 Modifier le format d'affichage 3.8 Identification et authentification 3.8.1 Types de compte 3.8.2 Caractéristiques d’un compte 3.8.3 Caractéristiques du compte root 3.8.4 Authentification 3.8.5 Profil utilisateur 3.8.6 Session 3.8.7 Vérifier les fichiers de comptes 3.9 Configuration réseau 3.9.1 Identifier les ports ouverts 3.9.2 Pare-feu 3.10 Faut-il un antivirus ? Correction des exercices 1. Exercice du chapitre Architecture du système GNU/Linux 2. Exercice du chapitre Noyau Linux 3. Exercice du chapitre Modules 4. Exercice du chapitre Pseudo-systèmes de fichiers 5. Exercice du chapitre Dépannage matériel 6. Exercice du chapitre Maintenance des disques 6.1 Partitionnement pendant l'installation 6.2 Partitionnement post-installation 7. Exercice du chapitre Séquence d’amorçage 8. Exercice du chapitre Maintenance des applications 8.1 Tuer un programme zombie 8.2 Identifier une fuite mémoire 9. Exercice du chapitre Maintenance de la configuration réseau 9.1 Collecter la configuration d'une carte réseau 9.2 Renommer l'interface réseau en eth0 10. Exercice du chapitre Analyse des performances 10.1 Création d'un fichier swap 10.2 Stress de la mémoire Index |
Exemplaires (3)
Cote | Support | Localisation | Disponibilité | Emplacement |
---|---|---|---|---|
T8/6690 | Livre | Bibliothèque centrale El Allia | Disponible | Magazin |
T8/6690 | Livre | Bibliothèque centrale El Allia | Disponible | Magazin |
T8/6690 | Livre | Bibliothèque centrale El Allia | Disponible | Magazin |