Administration système avancée sous Linux
Objectifs de la formation
Le deuxième niveau de certification Linux Professional Institute, qualifié
de "Advanced Level Linux Professional", est constitué de deux modules
LPI 201 et LPI 202.
Cette formation aborde tous les objectifs Suivants; administrer, maintenir
et optimiser un système complexe ainsi qu'un réseau complexe sous
Linux .
Contenu du cours
Stockage avancé sous Linux
L'importance des choix physiques
L'alternative au stockage classique : SAN (Storage Area Network), NAS (Network-attached storage) , iSCSI
Pourquoi les utiliser plutôt qu'un serveur de fichiers sous Linux ?
Principes de mise en oeuvre d'un NAS
Limites du NAS (évolution, débits, filesystems supportés, ...)
Configuration d'une carte SAN
Les filesystems
Rappels sur les spécificités des différents filesystems (inode, répertoires, ext2, ext3, ext4, xfs, ...)
Comment le noyau « discute » avec les pilotes des filesystems (vfs) ?
Comparaisons techniques entre les différents pilotes
Installation ROOT-on LVM on RAID
Maîtriser les packages sous Linux
Exécution d'un programme sous Linux
Chargement des librairies (ld, ld.so.conf, LDPATH, ...)
Quand l'administrateur est-il concerné ?
Gestion des RPM
Structure interne d'un package RPM
Principes des sources RPM
Construire soit même un package (.src.rpm, .spec, rpmbuild)
Spécificités des packages Debian (.deb)
Exploitation
Utiliser un miroir local (synchronisation)
En quoi consiste l'application d'un patch ?
Les risques des mises à niveau
Maîtriser le noyau et les périphériques sous Linux
Le dialogue des périphériques avec le noyau
Rappel sur le fonctionnement du noyau et des modules
Evolution de la philosophie des concepteurs (/dev, devfs, udev)
Quand doit-on créer un fichier spécial (mknod, MAKEDEV, ...)
Quelles relations entre udev, hal, kudzu, discoverer ?
Périphériques USB
Quelles différences entre les interfaces UHCI et OHCI ?
Ajout d'un périphérique USB (démon USB, agents USB, hotplug, ...)
Imposer un /dev/xxx à un périphérique (règles USB, udevinfo)
Compilation du noyau
Bien comprendre le fichier .config
Compiler et installer un driver spécifique
Quand le noyau a-t-il besoin d'un fichier initrd (lecture et création avec mkinitrd) ?
Surveillance avancée du système sous Linux
Les logs
Les alternatives à syslog (syslog-ng, logcheck)
Les outils spécifiques par thème (Apache, Squid, firewall...)
La rotation des logs (logrotate)
Le réseau
Utiliser Nagios avec Nagat (Nagios Administration Tool)
Créer des graphiques avec CACTI (perte de paquets, latence...)
Surveillance des ports (netstat, nmap)
Quelques scripts
Système et processus
La richesse de /proc et /sys
Suivre les appels systèmes (programme actifs ou non)
Les fichiers utilisés (lsof)
Ressources utilisées (lsof, vmstat...)
« Troubleshooting » et dépannage sous Linux
GRUB mis à plat
Comprendre le fonctionnement détaillé de GRUB
Contenu du MBR (Master Boot Record)
Pourquoi tant de phases : stage1, stage1.5, stage2 ?
Peut-on déplacer la partition /boot ?
Booter manuellement sous grub
Reconstruire ce qui a été « cassé » sans réinstaller le système
Créer une clé USB bootable de réparation
Filesystems
En quoi consiste le checking d'un filesystem ?
Que peut-on « sauver » avec tune2fs et debugfs ?
La commande fsck à chaud ?
La « checklist » mount en cas de problèmes
Pourquoi certaines commandes se « gèlent » en accédant à certains fichiers ?
Affichage
Anticiper les problèmes d'affichage des caractères (utf-8, iso-...)
Comportement des programmes par rapport à LANG (locale, LC_ ???)
Les causes de « l'écran noir » suite au démarrage de X
Réglages de X (Xorg.conf)
Réseau
Carte réseau/wifi non reconnue
Les options de mount en réseau (SMBFS, CIFS, codepage, ...)
Problèmes posés par certaines copies réseaux (mémoire nécessaire, options de copie, ...)
L'exemple de rsync
Divers
Perte de mot de passe
Récupération de fichiers supprimés
Tuning (réglages) du système Linux
Noyau
Que peut-on attendre d'un autre noyau ?
Exemples de tuning dans le fichier .config
Démarrer rapidement (noyau léger, suppressions des modules et services « inutiles »)
Disques et filesystems
Evaluer les performances de ses disques
Les gains concrets avec les différentes technologies (tr/min, NAS, SAN, SCSI, ...)
Quel filesystem pour quel besoin ?
Les options de mkfs et tune2fs pour améliorer les performances
Mémoire
Gestion de la mémoire par le noyau
Différents types de mémoire
Décalage entre résultats de commande et état réel de la mémoire
Apports et limitations de l'ajout de mémoire
Stocker des fichiers en mémoire virtuelle avec les ramdisks (tmpfs, /dev/ram*)
Identifier les processus consommateurs (top, nice, time, vmstat, )
Comprendre les interactions entre les processus (noyau, thread, zombie...)
Réseau
Rappels sur la transmission d'une trame réseau
Tester les performances du réseau (débit, latence, ...)
Optimiser le MTU (Maximum Transmission Unit) sous Linux (tracepath, ifconfig)
L'impacte du hardware (câble FTP 5E, 6, ou 7, carte gigabit, full duplex...)
Virtualisation
Où en est-on ?
Que peut-on attendre de la virtualisation ?
Philosophie de fonctionnement (système hôte, hyperviseur, pilotes vraiment utilisés, bridging, ...)
Exemples d'architectures en production
Différences entre les principaux acteurs (Vmware, Xen, Virtual Box, Virtual PC, HyperV...)
Mise en oeuvre
La simplicité de Virtual Box (installation)
Gestion des pseudos-périphériques
Réalisation de snapshots
Retours à des états antérieurs
Installation d'images XP, 7 ...