Maintenance du système Linux

1 705 vues

Publié le

0 commentaire
1 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
1 705
Sur SlideShare
0
Issues des intégrations
0
Intégrations
6
Actions
Partages
0
Téléchargements
105
Commentaires
0
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Maintenance du système Linux

  1. 1. 1 SYSTEME D’EXPLOITATION UNIX Chapitre 6. System Maintenance- Construction et installation de programmes à partir du code source - Opérations de sauvegarde
  2. 2. Objectif du cours 2 • Gestion des logs Objectif 1 • (Re)Construire ses propres packages Objectif 2 • Les sauvegardes sous Linux Objectif 3
  3. 3. Chapitre 1 3 Gestion des logs Objectif 1 Présentation de Syslog La configuration La Source Le filtrage Les message LOG Lire ses fichiers de logs
  4. 4. 4Gestion des logs Présentation de Syslog  Syslog-ng est en quelque sorte la version améliorée de syslog. La grande nouveauté est la possibilité dappliquer des filtres sur les messages de log générés. La partie log réseau a également été améliorée. Sysklog est une implémentation du protocol syslog plus ancienne mais encore utilisée sous certains UNIX.Composé de deux daemons: syslogd qui soccupe du logging du système et klogd qui soccupe du logging du noyau.
  5. 5. Configuration 5Le fichier de configuration de syslog-ng est /etc/syslog-ng/syslog-ng.conf.5 mots clés définissent le comportement de syslog-ng :• options : définit les options de syslog-ng• source : définit les sources doù syslog-ng récupèrera les messages de log• destination : définit lemplacement décriture final des messages de log• filter : les filtres à appliquer à la source• log : élément qui va lier les sources, un ou plusieurs filtres et une ou plusieursdestinations
  6. 6. La source 6Ce mot clé va nous permettre de définir une ou plusieurs "entrée" dans le système detraitement de syslog-ng.Cette source contient plusieurs entrées de types différents. Tout dabord, une entrée "internal()"spécifique à syslog-ng. Nous pouvons ensuite lire lintégralité des messages de log depuis le fichier /dev/log quinest rien dautre que le point dentrée et de sortie des messages envoyés par la fonctionsyslog() des librairies C.
  7. 7. 7Le kernel fournit un point de lecture de ses propres messages grâce au fichier /proc/kmsg.Si nous souhaitons que notre daemon syslog-ng agisse en tant que serveur réseau de logs, ilsuffit alors de placer la fonction "udp()". Comme indiqué dans le commentaire, ceparamètre agit comme loption -r de lancien daemon syslogd.
  8. 8. Le filtrage 8Cette section est très importante et fait la force de syslog-ng.Cest ici que nousdéfinissons les filtres qui seront appliqué (plus tard) aux messages sources. Il faut préciserou non un ou plusieurs levels séparés par des "," qui correspondent au niveau dumessage (debuggage, warning, information..etc.) à une facility précisée.Lexemple suivant permet de récupérer tous les messages en provenance de la facilitycron et applique une restriction sur le niveau du message en ne récupérant que leserreurs :
  9. 9. Le filtrage 9Les propriétés de filtrage
  10. 10. Les messages LOG 10 Cette section permet tout simplement de relier les différents éléments de la configuration . Cette section fait une liaison avec les deux dernières sections cest à dire la source, le filtre et la destination :
  11. 11. Lire ses fichiers de logs 11Pour lire les fichiers de logs dun système, on peut utiliser nimporte quellecommande vue précédemment comme cat, head, less, more, etc ... Vous pouvezaussi utiliser votre éditeur de texte préféré quil soit en disponible en CLI ou enmode graphique.Certaines commandes peuvent aussi se révéler plus pratiques que dautres pourlire les fichiers de logs comme tail qui permet dafficher uniquement la fin du fichierde log.Vous pouvez aussi voir les logs en temps réel grâce à loption -f de la commandetail.
  12. 12. Chapitre 2 12(Re)Construire ses propres packages Objectif 2  Objectifs  Avec le gestionnaire de packages RPM  Créer un package avec les sources dun programme
  13. 13. (Re)Construire ses propres packages 13 Objectifs Pourquoi construire ou reconstruire ses packages ? Tout dabord savoir construire ses paquets est un moyen dintégrer dans son système Linux une application non supportée par défaut. Par exemple si je possède une distribution linux debian et que je souhaite installer un lecteur vidéo mais que je ne dispose que des sources de ce dernier, la meilleure solution est de générer un package DEB et de lajouter ensuite avec la commande dpkg. Les avantages sont nombreux, on peut ensuite facilement le désinstaller, le mettre à jour, le distribuer, ...
  14. 14. Avec le gestionnaire de packages RPM 14 Introduction Le format Red hat Package Manager (RPM), est une archive contenant les binairesdun programme ainsi que des scripts dinstallation pour ce dernier. Ces RPM sontcréés à partir des sources dune application qui est dabord décompressée, patchéepuis compilée. Le résultat de cette compilation est donc notre fameux fichier RPMainsi quun fichier RPM source, par exemple : Binaire RPM : mc-4.6.1.i586.rpm. Ici larchive RPM contient les binaires compilés pour une architecture i586 du programme mc. Source RPM : mc-4.6.1.src.rpm. Ici larchive RPM contient les sources du programme mc ainsi que tous les fichiers, toute la configuration nécessaire pour la création du package RPM contenant les binaires.
  15. 15. Pour finir il est interressant de savoir que lors de la création dun package RPM, divers 15scripts sont exécutés pour automatiser la compilation et toutes les étapes quilaccompagnent . Voici donc les différents répertoires et dossiers qui contiennentces librairies, scripts : /var/lib/rpm : Ce dossier contient plusieurs petites base de données fichiers qui indexent tout les packages rpm du système. Voici quelques exemples : /var/lib/rpm/Packages : Base de données des packages installés /usr/lib/rpm : Contient les librairies et scripts utilisés par les archives rpm, contient également la configuration par défaut utilisée pour la création de packages. /usr/lib/rpm/rpmrc : configuration par défaut utilisé pour la création des packages RPM. On peut y définir larchitecture de sortie, par exemple i386, ou i586 ou 64 bits, ... /usr/lib/rpm/macros : contient lensemble des macros (scripts), variables, appelés par défaut lors de la création dun package. /usr/lib/rpm/* tout le reste des fichiers sont des scripts et des librairies utilisés par le gestionnaire de package rpm.
  16. 16. Recompiler un package RPM 16A présent que tout est prêt nous pouvons enfin créer des packages rpms. Notre premiertest va être de recompiler un package RPM ce qui est très simple car il nous suffit dutiliserle rpm source et pour cela, 2 choix soffrent à nous. Soit simplement recompiler le packagesans rien modifier ni patcher, à ce moment là on fera appel à la commande rpmbuild :Soit nous souhaitons modifier un peu le package avant de le recompiler, à ce moment lànous installons dabordle package rpm source :
  17. 17. Une fois installé, votre package de source est éclaté dans tous les dossiers que nousavons précédemment créé. Un fichier "package.spec" doit apparaître dans le dossierSPECS ainsi quune archive et tous les patchs du programme dans le dossier SOURCES. 17Admettons à présent que nous souhaitons intégrer un nouveau patch à notreprogramme : 1. Copiez le dans le dossier SOURCES 2. Modifier le fichier package.spec pour ajouter ci-dessous les lignes qui sont en gras : 3. Enfin dernière étape, la compilation :
  18. 18. Créer un package avec les sources dun 18programme Dans cette dernière partie nous allons détailler comment générer un package rpm à partirdes sources dun programme. Lobjectif est donc de créer nous-même un fichier de spec pourla commande rpmbuild. Ce dernier est organisé en plusieurs sections que voici: Une section globale qui renseigne le nom du package, le fichier contenant les sources, sa version, ... Une section où lon précise les étapes de compilation et les éventuels patches Une section où lon précise comment installer le programme sur le système, les répertoires de destinations, les permissions, ... Des sections post et pré installation où lon peut lancer des scripts, effectuer diverses actions Une section description et une section changelog pour renseigner le maximum dinformations à propos du package.
  19. 19. La section globale du fichier de spec 19Voici toutes les options que lon peut retrouver dans cette section : Name : le nom du package sans la version BuildRequires : la liste des packages nécessaires uniquement lors de la compilation Group : Utile pour le gestionnaire de package afin de classer le package dans un groupe (dépend de votre distribution). Requires : liste des packages requis uniquement pour lutilisation de la forme compilé du package Version : version du programme que lon souhaite compiler Release : version du package ( patchs, ... ) BuildRoot : répertoire utilisé pour la compilation du package Source : Url utilisé pour récupérer puis extraire le package dans le BuildRoot. On peut préciser une adresse ftp, http ou locale à la machine.
  20. 20. Chapitre 1 20 opérations de sauvegarde Objectif 3 Concepts Types de sauvegarde : les utilitaires de sauvegarde : Solutions de souvegarde :
  21. 21. 1-concepts : 21 La sauvegarde est une tâche importante. Elle doit être effectuée périodiquement sur des machines comportant des données sensibles. Les opérations de sauvegarde sont réalisées afin de pouvoir : restaurer la totalité dun système en état de fonctionnement suite à un incident (disqueen panne, feu, …) ; restaurer une partie du système (un fichier ou un répertoire) suite à une faussemanipulation telle qu’une suppression accidentelle dun fichier de configuration.
  22. 22. 2-types de sauvegarde : 22Les sauvegardes sont de trois types :  sauvegarde complète : consiste à sauvegarder la totalité du système.  sauvegarde différentielle : consiste à ne sauvegarder que les fichiers modifiés en se référant à une sauvegarde complète précédemment effectuée.  sauvegarde incrémentale : consiste à ne sauvegarder que les fichiers modifiés depuisla dernière sauvegarde.
  23. 23. 3-Utilitaires de sauvegarde : Commande mt :La commande mt contrôle une bande magnétique. 23 Syntaxe : mt [-f périphérique] opérationAvec :périphérique : le lecteur de la bande, par défaut cest /dev/tapeparmi les opérations possibles : rewind : rembobiner ; status : afficher létat de la bande ; erase : effacer la bande ; offline : embobiner et éjecter ; fsf [n] : avancer de n fichiers ; bsf [n] : reculer de n fichiers.
  24. 24. Commande tar :La commande tar sauvegarde des fichiers et des répertoires .Syntaxe : 24 tar cvf nom_archive FichierAvec : -c, --create : crée une archive ; -x, --extract : extrait une archive ; -t, --list : liste tous les fichiers de larchive ; -f, --file Fichier : précise le fichier archive qui peut être un fichier ordinaire ou unpériphérique ; -z, --gzip : (dé)compacte larchive tar avec gzip ; -j, --bzip2 : (dé)compacte larchive tar avec bzip2 ; -M, --multi-volume : crée une archive tar multivolumes ; -v, --verbose : active le mode daffichage détaillé.
  25. 25. Commande cpio :La commande cpio sauvegarde sur la sortie standard les fichiers dont les noms sontfournis par lentrée standard. 25Syntaxe : cpio -optionAvec : -i : extrait les fichiers de larchive ; -o : crée une archive ; -t : affiche une table du contenu de lentrée ; -B : utilise une taille de bloc dentrée/sortie de 5120 octets ; -c : utilise un vieux format darchive portable ; -v : active le mode daffichage détaillé.
  26. 26. Utilitaire rsync :rsync (remote synchronization) est un utilitaire de synchronisation de fichiers entre l’hôtelocal et un hôte distant. 26Syntaxe : rsync -optionAvec : -v : active le mode daffichage détaillé ; -a : active le mode archive, identique à -rlptgoD ; -z : compresse les données à envoyer ; -e commande : spécifie un shell distant ; -n : simule le fonctionnement de la commande ; --delete : supprime les fichiers qui nexistent pas sur l’hôte émetteur.
  27. 27. Commandes dump :La commande dump sauvegarde un système de fichiers de type Ext2/Ext3. 27Syntaxe : dump -optionAvec : -Niveau : spécifie le niveau de larchive. La valeur 0 précise une sauvegarde complète,une valeur différente de 0 précise une sauvegarde incrémentale ; -u : mise à jour du fichier dumpdates ; -f fichier : spécifie le fichier archive. Par défaut cest /dev/st0. La valeur « - » estutilisée pour la sortie standard ; -L étiquette : ajoute une étiquette dans len-tête de larchive ; -A fichier : crée un fichier contenant la liste des fichiers de larchive.
  28. 28. Commande restore : 28 La commande restore extrait des fichiers, des répertoires ou la totalité du système defichiers dune archive créée par dump.Syntaxe : restore -option Avec : -i : lance la commande en mode interactif ; -f fichier : spécifie le fichier archive ; -r : extrait le contenu de toute larchive dans le répertoire courant ; -t : liste le contenu du fichier archive.
  29. 29. Commande dd 29 La commande dd permet de faire une copie bloc par bloc. Elle est adaptée pour laduplication des périphériques de stockage tels quun disque, une partition, etc.Syntaxe : dd if=fichier-entrée of=fichier-sortie bs=taille count=nbAvec : if : spécifie le fichier source, par défaut cest le fichier entrée standard ; of : spécifie le fichier destination, par défaut cest le fichier sortie standard ; bs : spécifie la taille des blocs, par défaut cest 512 octets ; count : spécifie le nombre de blocs à copier, par défaut cest autant de blocs qu’encontient fichier-entrée.
  30. 30. 304-Solutions de sauvegarde : Les solutions de sauvegarde gèrent les opérations de sauvegarde, de restauration et devérification de données de différents systèmes tels que Linux, MacOS, Windows, etc. Ellesfonctionnent en réseau selon le modèle client/serveur en utilisant des protocoles detransfert de fichiers tels que NFS, SSH, SMB, etc.Ces solutions sont relativement faciles à utiliser, efficaces et offrent de nombreusesfonctions avancées de gestion de sauvegarde.Bacula, Amanda et BackupPC sont des solutions de sauvegarde libres distribuées souslicence GPL. Elles sont considérées comme des alternatives viables aux solutions desauvegarde propriétaires.

×