Formation Linux : cours serveurs Formation Unix et Linux Alexandre Kamoun [email protected] Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Sommaire 1 Partitionnement Les systèmes de fichiers Le swap 2 Démarrage du système Les niveaux d’exécution 3 Le noyau 4 Les sauvegardes 5 Le réseau Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Partitionnement Les systèmes de fichiers Introduction Un OS est installé sur un disque dur ou périphérique de stockage Ce dernier est constitué d’une suite d’octets non organisés Pour une bonne exploitation, on segmente le disque : partitionnement Puis on crée le système de fichier Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Partitionnement Les systèmes de fichiers Le système de fichier Il sert à organiser un espace de stockage brut pour y stocker des données On parle alors de créer un filesystem (ou très souvent de formatage) Il existe plusieurs types de filesystem, les plus courants sur Linux étant : ext reiserfs xfs Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Partitionnement Les systèmes de fichiers Filesystem ext : historique des systèmes Linux. 3 versions sont en production : ext2 : historique, sans journalisation ext3 : évolution du 2, implémentant le journal de transactions ext4 : dernière évolution, visant à pallier certaines limites, par exemple la taille maximale d’un fichier (16To au lieu de 2To) reiserfs : FS journalisé, certaines opérations ayant de meilleures performances que ext3. Principal concurrent de ext à la création, il était par défaut pour les distributions Suse. plus trop utilisé car fragilité ou manque de performances globales xfs : FS des serveurs IRIX. Sous GPL en 2000. A de bonnes performances et supporte les très gros espaces de stockages Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Partitionnement Les systèmes de fichiers Pseudo-Filesystems FS : exploite un espace de stockage physique par un utilisateur ou une application Pseudo-FS : utilisation en mémoire seulement, pas d’occupation d’espace disque. proc sys Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Partitionnement Les systèmes de fichiers proc FS virtuel proc Visualisation des éléments systèmes liés à la gestion des processus par le noyau Visualisation d’informations systèmes liés au matériel Il est généralement monté sous /proc Par exemple : visualisation des informations techniques du processeur : cat /proc/cpuinfo Type de processeur Vitesse réelle de l’horloge Capacités techniques (virtualisation, extensions au jeu d’instructions, . . . ) Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Partitionnement Les systèmes de fichiers sys FS virtuel sys Visualisation des éléments liés aux périphériques Par exemple : visualisation de capacités hotplug d’un DD : cat /sys/block/sda/removable Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Partitionnement Les systèmes de fichiers Création d’un FS Créés par l’administrateur sur des espaces de stockage bruts Par la suite, ils sont vérifiés ponctuellement ou régulièrement Commande à utiliser : mkfs Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Partitionnement Les systèmes de fichiers Vérification d’un FS A pour objectif de vérifier la cohérence entre la table des inodes et les blocs de données On utilise la commande fsck avec les options et paramètres nécessaires Type de FS à vérifier -f pour un FS journalisé semblant propre Le périphérique de stockage Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Partitionnement Les systèmes de fichiers Dénomination Des paramètres sont modifiables après création Parmi eux, on retrouve le label et l’uuid Permettent de monter un FS local via le label ou l’uuid, et non via le fichier spécial Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Partitionnement Les systèmes de fichiers Dénomination Pour ajouter un label, et avoir une désignation confortable tune2fs -L label périph reiserfstune -l label périph xfs_admin -L label périph L’uuid (Universal Unique IDentifier) : Comme le label, permet de désigner un périphérique par un identifiant Il est automatique à la création du FS Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Partitionnement Le swap Le swap Mémoire virtuelle : espace de stockage pour éviter un manque de mémoire physique Vieilles données des applications y sont stockées si manque de mémoire Attention : Sur un serveur ou poste de travail Linux, le swap ne devrait pas être utilisée ! Le swap permettait d’agrandir la mémoire qui coutait chère à l’époque La taille du swap est discutée suivant les auteurs. Généralement, on retient 1 à 2 fois la RAM Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Partitionnement Le swap Optimisation En quantité ou en qualité Agrandir la quantité, ou diminuer pour gagner en espace de stockage Déplacer le swap vers un espace disque plus rapide : SSD, baie de disque, SAN La nature du swap est aussi importante Fichier Partition : plus performant car pas de FS intermédiaire Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Partitionnement Le swap Création d’un swap Dans un premier temps, on prépare l’espace de swap : mkswap périphérique Ensuite, on le rend accessible au kernel : swapon périphérique Il est aussi possible de le désactiver : swapoff périphérique La visualisation des espaces de swap : swapon -s ou cat /proc/swaps Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Partitionnement Le swap Mise en pratique : création swap Nous allons ajouter un espace de swap sous le format d’un fichier Affichez le swap exploité Créez à la racine un fichier de 512Mo avec dd Donnez des permissions restrictives à ce fichier : lecture et écriture pour root Structurer le fichier afin que le noyau puisse l’exploiter Vérifier que tout s’est bien passé avec la commande file Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Partitionnement Le swap Mise en pratique : activation swap Configurez le noyau pour qu’il exploite le nouvel espace de swap Vérifiez la bonne opération Référencez le nouvel espace swap dans le fichier fstab Redémarrez le système Vérifiez que tout est fonctionnel Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Démarrage du système Les niveaux d’exécution Introduction Le système possède plusieurs niveaux d’exécution Système arrêté Tous les services sont démarrés mais pas d’interface graphique etc Chaque niveau d’exécution contient une liste de services à arrêter ou démarrer À l’entrée de ce niveau, le système vérifie alors l’état des services qu’il doit gérer Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Démarrage du système Les niveaux d’exécution Les niveaux d’exécution Niveau 0 Le système est arrêté. Ce niveau contient tous les services à arrêter avant l’extinction de la machine Niveau 1 Réservé aux opérations de maintenance Seule la connexion root est accessible Fonctionnement du système en mode minimal Niveau 2 Mode multi-utilisateur Pas de support réseau Seuls certains services sont démarrés Niveau 3 Mode de fonctionnement usuel Comme le niveau 2 mais avec le support réseau Pas d’interface graphique de disponible Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Démarrage du système Les niveaux d’exécution Les niveaux d’exécution Niveau 4 Comme le niveau 3 Permet de spécifier une configuration personnalisée Niveau 5 Tous les services sont démarrés L’interface graphique est fonctionnelle Niveau 6 Système en cours de redémarrage Détermine les services à arrêter Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le noyau Introduction Le coeur des Systèmes d’Exploitation Il est presque une application comme les autres Possède un code source Peut être compilé Contient toutes les procédures de configuration et d’installation Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le noyau Composants Il gère le matériel Il n’y a pas de pilotes pour les périphériques : les éléments de communication sont inclus directement dans le noyau Avantage ! Pas d’installation de pilote pour utiliser pleinement du système ! En revanche, noyau toujours plus imposant, et demande mémoire qui serait trop importante Pour cette dernière raison, le noyau a une structure modulaire Seuls les modules nécessaires sont chargés en mémoire Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le noyau Le coeur du noyau Partie irréductible du noyau Elle est chargée intégralement en mémoire Ne contient que les éléments nécessaires à l’utilisation Ce fichier est dans le répertoire /boot, et ne fait que quelques Mo Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le noyau Les modules Font partis des fonction essentielles Fichiers d’extensions .ko (ou .o pour les anciens), chargés en mémoire suivant les besoins Il est possible de les gérer à chaud, avec le système complètement initialisé Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le noyau Modules : manipulations Affichage des modules chargés en mémoire : lsmod Affichage des modules disponibles : modprobe -l Modules contenus par convention dans /lib/modules Retrait d’un module : rmmod fichier.ko ou modprobe -r module Chargement d’un module : insmod fichier.ko ou modprobe module Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le noyau Modules : chargement et configuration Suivant la détection matérielle, chargement ou non du module Pour forcer le chargement, éditer le fichier /etc/modules Tout module déclaré sera forcé à être chargé Ce fichier permet de configurer certains modules et de définir des associations avec périphériques ie : alias wlan0 ath9k Obtenir les informations complètes d’un module : modinfo module Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le noyau Compilation Voir le fichier README inclus avec les sources du kernel Les sources sont récupérables directement sur www.kernel.org Sources complètes Sous forme d’archive compressée Avant toute compilation, il faut configurer le noyau Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le noyau Configuration Toute la compilation se fera en fonction du fichier .config Ce fichier indique si un élément doit être Dans le cœur du noyau Sous forme de module Absent Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le noyau Configuration Il y a 4 méthodes de configuration Questionnement séquentielle de chaque module Interface texte améliorée Interface graphique Utilisation des valeurs de compilation par défaut ou d’un ancien fichier de configuration C’est ici que tout se passe : une erreur peut rendre le système non fiable ou inopérant Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le noyau Compilation La compilation inclus celle du noyau, et des modules Compilation du noyau très simple : make Durée de compilation dépendante des ressources du système (plusieurs heures parfois) Il est possible de compiler des modules supplémentaires avec make modules_install Copiés directement dans /lib/modules Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le noyau Installation Il suffit de copier le résultat de la compilation vers /boot L’image devrait être dans ./arch/i386/bzimage L’usage fait que l’on nommera l’image : /boot/vmlinux-3.10.1 Il faut ensuite configurer GRUB pour l’utilisation avec update-grub Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le noyau Mise en pratique Vous allez compiler le noyau Linux le plus récent et stable Prenez soin de ne désinstaller aucun ancien noyau Installer les outils de compilation : gcc et make Télécharger les dernières sources complètes Extrayez le contenu dans un répertoire de travail Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le noyau Mise en pratique Créez un fichier de configuration du noyau avec les valeurs par défaut Vérifiez que le fichier .config existe À partir d’une commande, donnez le nombre de ligne que contient ce fichier Compilez le noyau Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le noyau Mise en pratique Copiez le nouveau noyau dans /boot, dont le nom est de forme vmlinuz-version Installez les modules de noyau Dans quel répertoire sont-ils situés ? Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le noyau Mise en pratique Configurez le gestionnaire de démarrage Définissez le timeout à 10 secondes Modifiez le titre en ajoutant le terme BY-TSMIR Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Les sauvegardes Sommaire 1 Partitionnement Les systèmes de fichiers Le swap 2 Démarrage du système Les niveaux d’exécution 3 Le noyau 4 Les sauvegardes 5 Le réseau Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Les sauvegardes Introduction La sauvegarde des données est primordiale sur un serveur Il peut aussi être utile de créer une image du système complet Les types de sauvegardes sont multiples Complètes : sauvegarde de TOUS les fichiers à chaque fois Incrémentielles : sauvegarde UNIQUEMENT les fichiers ayant été modifiés depuis la dernière sauvegarde Différentielles : sauvegarde UNIQUEMENT les fichiers ayant été modifiés depuis la dernière sauvegarde complète Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Les sauvegardes Introduction On distingue plusieurs méthodes de sauvegardes Les utilitaires d’archivage Les logiciels de sauvegarde Les outils de duplication et de synchronisation Il existe aussi bien des outils historiques et modernes des plus sophistiqués que d’outils commerciaux Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Les sauvegardes Introduction Quelques outils permettant les sauvegardes rsync : outil de copie rapide, fiable et efficace, de copie de fichiers, en local ou à distance dd : outil utilisé particulièrement pour les copies de disque à disque par secteur, du MBR, etc tar : outil de stockage et d’extraction de fichier, depuis un disque ou un autre périphérique cpio : outil d’archivage sans compression Amanda, Bacula, BackupPC ... Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Les sauvegardes tar En utilisant la commande tar, nous allons sauvegarder le contenu des répertoires partagés /home/nfs et /home/ftp Sauvegarde de type complète sans compression Commande tar –cvf /mnt/sauvegardes/save.tar /home/nfs Afin de réaliser des sauvegardes incrémentales, on peut la combiner à find Commande find /home/nfs –newer reference –print | tar –c T - -f /mnt/sauvegardes/save.tar Pour la restauration Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Les sauvegardes cpio Tend à disparaître en environnement Linux Réalise des archives non compressées d’un ensemble de fichiers et répertoires Usage particulièrement non intuitif : utilisé dans des cas spécifiques tel que la sauvegarde très sélectives Particularité Elle n’accepte pas les éléments à sauvegarder en tant que paramètre Nécessité de lui indiquer sous forme de liste sur son entrée standard Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Les sauvegardes cpio Syntaxe de la commande Commande find rep critères -print | cpio options > archive Syntaxe de listage ou d’extraction Commande cpio options < archive Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Les sauvegardes cpio Exemple d’utilisation Commande find nfs -print | cpio -o > nfs.cpio cpio -i < nfs.cpio Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Les sauvegardes Logiciels de sauvegarde AMANDA : Créée sous licence BSD à l’université de Maryland Licence communautaire ou commerciale Sauvegarde locale ou en réseau Sur disques ou bandes Données UNIX/Linux ou Windows Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Les sauvegardes Logiciels de sauvegarde Bacula et BackupPC Licence GPL Sauvegarde locale ou en réseau Sur disques ou bandes Données UNIX/Linux ou Windows Logiciels commerciaux Souvent les systèmes UNIX/Linux sont proposés en option Nécessité alors d’installer un agent de sauvegarde sur chaque système Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Les sauvegardes dd Sauvegarder l’image complète d’un système Commande dd if=/dev/sda1 of=/mnt/sauvegardes/clone_sda1 Sauvegarder le MBR Commande dd if=/dev/sda of=/mnt/sauvegardes/MBR bs=512 count=1 Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Les sauvegardes mkisofs ISO : fichiers binaires de CD ou DVD Montables par la commande mount, ou peuvent être gravées ou exploitées depuis des VMs Commande mkisofs -J -o image rép -J améliore la compatibilité avec Windows en générant des enregistrements Joliet en plus de la structure iso9960 Commande renommée en genisoimage Exploitation de l’iso en la montant Commande mount -o loop image_iso /path/montage Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Les sauvegardes rsync : serveur Logiciel puissant de synchronisation ou de sauvegarde Très connu des systèmes UNIX/Linux Configuration par 2 fichiers /etc/default/rsync /etc/rsyncd.conf Démarrage automatique ou manuel de rsync en tant que service /etc/default/rsync RSYNC_ENABLE=true Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Les sauvegardes rsync : serveur Directives et paramètres /etc/rsyncd.conf uid = utilisateur #nom du compte réalisant les opérations d’écritures read only = false #rend possible l’écriture [instance] #nom au choix. Autant d’instance que de client à répliquer path = rép #répertoire dans lequel les données seront écrites Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Les sauvegardes rsync : client Synchronisation à la demande ou par une tâche planifiée Syntaxe Commande rsync -av –delete /rép/ serveur : :instance -a : archive, préserve à l’identique permissions, propriétaires -v : affiche le détail –delete : miroir, efface des données du serveur si non présentes sur le client Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Les sauvegardes rsync : sécurisation Possibilité de laisser SSH pour le transport des données Le démon rsync ne s’exécute pas sur le serveur L’exécutable est lancé à la volée par SSH pour toute connexion entrante Commande rsync -av –delete -e ssh rép_sync user@serveur :/rép_cible Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le réseau Introduction Configuration du réseau Par commande : souvent pour du dynamique Par fichier : souvent pour du statique ifconfig permet Afficher les interfaces réseau Afficher les adresses IP et MAC Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le réseau Configuration dynamique ifconfig iface ip ifconfig iface netmask mask ifconfig iface :ss-iface ip Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le réseau Configuration DNS /etc/resolv.conf Client DNS resolver Contient au moins une référence d’un serveur DNS C onfiguration search domaine nameserver ip Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le réseau Passerelle par défaut route Définit des routes statiques Permet alors de définir la passerelle par défaut route add -net réseau_cible netmask mask gw ip route add default gw ip Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le réseau Configuration statique Dans les répertoires /etc/network ou /etc/sysconfig/network-scripts Format auto interface iface interface inet static address ip netmask mask gateway ip Ou auto interface iface interface inet dhcp Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le réseau Configuration statique Format DEVICE=interface BOOTPROTO=none ONBOOT=yes IPADDR=ip NETMASK=mask GATEWAY=ip Ou DEVICE=interface BOOTPROTO=dhcp ONBOOT=yes Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le réseau TCP Wrappers Gestion des accès à un système Linux suivant les IP ou noms d’hôtes S’appuie sur la librairie libwrap Contrôle suivant deux listes Tous ceux autorisés Tous ceux interdits Sécurité toutefois légère Utilisation service : clients Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le réseau Configuration WIFI Utilisation par interface graphique intuitive Détermination des interfaces WIFI avec iwconfig Visualisation des réseaux disponibles : iwlist interface scan Connexion à un réseau libre : iwconfig iface essid nom Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le réseau Configuration DHCP Protocole client/serveur Affecte automatiquement une IP ainsi que d’autres paramètres Sur le client, demande DHCPDISCOVER par dhclient Pour libérer une adresse IP : paquet DHCPRELEASE par dhclient -r eth0 Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le réseau Diagnostic réseau Tester l’état du réseau, la connectivité, la résolution DNS : ping Voir les réseaux locaux et distants, le rejet d’une route par le noyau : route U : up H : cible est un hôte G : cible via passerelle D : route configurée par protocole de routage ! : rejeté par le noyau Tester la connectivité de tout le chemin jusqu’à la cible : traceroute Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le réseau Diagnostic transport et application Afficher les connexions établies, en écoute : netstat -n Afficher les connexions avec les processus responsables : netstat -p Envoyer des données brutes sur un port : nc ou netcat Voir les fichiers ouverts par des processus : lsof Afficher le log essentiel de toutes les applications : dmesg ou cat /var/log/syslog Analyse des paquets réseaux : wireshark ou tcpdump Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le réseau Routage Linux peut servir de routeur Supporte les principaux protocoles de routage routed : protocole RIP uniquement quagga : protocoles BGP, RIP, OSPF search Alexandre Kamoun Formation Linux : cours serveurs Formation Linux : cours serveurs Le réseau Mise en pratique Libérez l’adresse IP avec dhclient Avec un autre terminal, relevez les paquets de votre principale interface sur les ports 67 et 68 Utilisez tcpdump Lancez une requête DHCP et relevez les paquets avec tcpdump puis wireshark Relevez les requêtes DHCPDISCOVER, DHCPOFFER, DHCPREQUEST, DHCPACK Alexandre Kamoun Formation Linux : cours serveurs
© Copyright 2025 ExpyDoc