Profitez de -25 % pour toute nouvelle inscription à nos formations jusqu’au 31 décembre 2026

Formation en Réseaux et systèmes: Linux - Debugging avancé - Ascent Formation
Retour aux formations
Réseaux et systèmes

Formation Linux - Debugging avancé

5 jour(s) • 35h
Éligible OPCO
8,8/10 avis apprenants

Description

Objectif de formation : Maîtriser les techniques avancées de debugging sous Linux, en mettant l'accent sur l'observabilité, l'analyse de performance, et la sécurisation des systèmes. Développer une expertise dans l'utilisation d'outils modernes pour diagnostiquer et résoudre des problèmes complexes à tous les niveaux (système, utilisateur, noyau).

  • Comprendre et utiliser les outils de debugging avancés sous Linux
  • Diagnostiquer et résoudre des problèmes systèmes et applicatifs complexes
  • Analyser et interpréter les traces et logs pour le debugging
  • Utiliser des techniques de profiling pour optimiser les performances
  • Appliquer des méthodes de debugging pour les environnements de production
  • Analyser des mécanismes de synchronisation dans le noyau Linux
  • Débugger des systèmes post-mortem en analysant des crash dumps avec des outils avancés
  • Utiliser eBPF pour profiler et tracer des applications et systèmes

  • Administrateurs systèmes
  • Développeurs logiciels
  • Ingénieurs DevOps
  • Exploitants systèmes ou applicatifs

  • Bonnes connaissances de l’utilisation de Linux

  1. 1

    Introduction au debugging sous Linux (2 heures)

    • Concepts fondamentaux du debugging
    • Importance du debugging dans l'administration système et le développement
    • Présentation des outils de debugging disponibles sous Linux
    • Concepts d'observabilité et importance dans les environnements modernes
  2. 2

    Outils de debugging de base (5 heures)

    • Utilisation de gdb pour le debugging des applications
    • Utilisation de strace pour le suivi des appels système
    • Utilisation de lsof pour la surveillance des fichiers ouverts
    • Utilisation de dmesg et des logs du noyau pour le debugging système
    • Utilisation de top, htop et ps pour la surveillance des processus
    • Présentation de lsof, dmesg et des outils classiques en les reliant aux outils modernes
    • Illustration des bases avec un cas d’étude utilisant strace et dmesg
    • Travaux pratiques : Utilisation des outils de base pour diagnostiquer et résoudre des problèmes simples sur des applications et des systèmes
  3. 3

    Debugging avec GDB (4 heures)

    • Techniques avancées de gdb : breakpoints, watchpoints, et conditionnels
    • Analyse des core dumps pour le post-mortem debugging
    • Debugging de programmes multi-threadés avec gdb
    • Scripts et automatisation avec gdb
    • Mise en œuvre de scripts et d’automatisations pour des scénarios complexes
    • Travaux pratiques : Debugging avancé d'une application C/C++ multi-threadée avec gdb
  4. 4

    Tracing et logging avancé (4 heures)

    • Utilisation de ltrace pour le suivi des appels de bibliothèque
    • Utilisation de systemtap pour le tracing des événements noyau et utilisateur
    • Utilisation de perf pour le profiling et l'analyse des performances
    • Analyse avancée des logs avec journalctl et rsyslog
    • Utilisation d’eBPF et de ftrace pour des analyses détaillées
    • Tracing global du système avec Kernelshark et LTTng
    • Travaux pratiques : eBPF et perf pour profiler une application critique
    • Travaux pratiques : Tracing d'une application avec systemtap et analyse des performances avec perf
  5. 5

    Debugging des problèmes système (4 heures)

    • Analyse et résolution des problèmes de mémoire avec valgrind et memcheck
    • Debugging des problèmes de disque et de fichiers avec iostat, iotop et blktrace
    • Analyse des pannes système et utilisation des outils de crash dump (kdump, crash)
    • Debugging des problèmes de démarrage avec bootchart et systemd-analyze
    • Résolution d’erreurs mémoire avec massif et libefence
    • Études approfondies des mécanismes de synchronisation du noyau
    • Travaux pratiques : Résolution des problèmes de mémoire et de disque sur un système Linux
  6. 6

    Debugging des problèmes réseau (4 heures)

    • Utilisation de tcpdump et wireshark pour l'analyse des paquets réseau
    • Debugging des problèmes de connectivité avec ping, traceroute et netstat
    • Analyse des performances réseau avec iftop et bmon
    • Debugging des applications réseau avec nc et telnet
    • Travaux pratiques : Analyse des paquets réseau avec tcpdump et résolution des problèmes de connectivité
  7. 7

    Debugging des applications (4 heures)

    • Utilisation de strace et ltrace pour le debugging des applications
    • Analyse des performances des applications avec gprof et perf
    • Debugging des applications Java avec jstack, jmap et jconsole
    • Debugging des applications Python avec pdb et py-spy
    • Debugging d’applications multilingues (C++, Python) en utilisant Valgrind et py-spy
    • Travaux pratiques : Debugging d'une application Java et Python avec les outils appropriés
  8. 8

    Debugging et sécurité (4 heures)

    • Analyse des attaques et debugging des problèmes de sécurité
    • Utilisation de auditd pour le suivi des événements de sécurité
    • Debugging des politiques de sécurité avec SELinux et AppArmor
    • Utilisation de chkrootkit et rkhunter pour la détection des rootkits
    • Étude approfondie des politiques SELinux, AppArmor, et leurs implications
    • Utilisation avancée d’auditd pour suivre les événements critiques
    • Travaux pratiques : Mise en place et debugging des politiques de sécurité avec SELinux et AppArmor
  9. 9

    Méthodologies de debugging (4 heures)

    • Approche systématique du debugging : identification, reproduction, isolation, résolution et prévention
    • Utilisation de scripts et d'automatisation pour le debugging
    • Collaboration et communication efficace dans le processus de debugging
    • Documentation et partage des connaissances
    • Travailler sur des cas simulés post-mortem (crash dumps)
    • Documentation des analyses avec outils adaptés (Kernelshark, perf)
    • Travaux pratiques : Application des méthodologies de debugging sur des cas pratiques

Ils nous font Confiance

Nos partenaires de confiance

Ministère des armées
Thalès
Dassault Systèmes
Ariane Group
EDF
SNCF
Orange Cyberdefense
Total
Société Générale
Ministère de l'Intérieur
Boston Consulting Group
Crédit Agricole
Capgemini
Sopra Steria
Ministère de l'économie
Bouygues Télécom
Devoteam
Imprimerie Nationale
Business France
Ordre National des Pharmaciens
Abeille Assurances
Macif
Service Public Fédéral Finances
ANFH
Bruxelles Formation
Atlas OPCO
Uniformation
Adeo
Positive Thinking Company
Sogelink
Septeo
HN Services
Infotel
Ercom
Neosoft
Klaxoon
Asus
Linkvalue
Suneris
Datadocké

Questions fréquentes

FAQ : Formation Linux - Debugging avancé

  • Oui, mais la prise en charge d'une formation professionnelle par un OPCO dépend de votre opérateur de compétences, de votre branche d'activité et des critères de financement applicables. Ascent Formation vous accompagne dans l'identification des possibilités de financement adaptées à votre entreprise.

  • Une formation inter-entreprises réunit des participants issus de différentes organisations, tandis qu'une formation intra-entreprise est organisée pour les collaborateurs d'une même entreprise. Le format intra permet notamment d'adapter le contenu et les modalités aux besoins spécifiques de vos équipes.

  • Selon la formation proposée, il est possible de suivre une formation professionnelle à distance, en présentiel ou selon d'autres modalités disponibles. Consultez les informations de la session concernée ou contactez-nous pour connaître les formats possibles.

  • Oui, une formation professionnelle peut être adaptée aux objectifs, au niveau des participants et aux besoins opérationnels de votre entreprise. Ascent Formation vous propose des parcours personnalisés pour accompagner le développement des compétences de vos équipes.