accueil > Gestion des processus > ltrace

ltrace : Trace les appels de bibliothèques

ltrace est un utilitaire utilisé pour tracer et enregistrer les appels de fonctions de bibliothèques dynamiques effectués par un programme en cours d'exécution. Il permet de comprendre en détail quelles fonctions de bibliothèque sont appelées, avec quels arguments, et quels sont les résultats, ce qui le rend utile pour le débogage, l'analyse de performance et l'ingénierie inverse.

Aperçu

ltrace intercepte et affiche les appels de fonctions des bibliothèques partagées utilisées par un programme. Cela aide grandement à comprendre le fonctionnement du programme et à diagnostiquer les problèmes.

Utilisations principales

  • Débogage de programmes
  • Analyse des goulots d'étranglement de performance
  • Investigation des vulnérabilités de sécurité
  • Ingénierie inverse

Options principales

Les options principales de ltrace contrôlent la manière de tracer, le format de sortie, le filtrage, etc.

Contrôle du traçage

Sortie et filtrage

Commande générée :

Essayez de combiner les commandes.

Description:

`ltrace` Exécute la commande.

Essayez d'exécuter virtuellement les commandes avec l'IA en combinant les options ci-dessus.

Exemples d'utilisation

Comment tracer les appels de bibliothèques d'un programme dans divers scénarios à l'aide de ltrace.

Traçage des appels de bibliothèques de base

ltrace ls

Trace les appels de bibliothèques de la commande 'ls'.

Afficher les statistiques d'appels

ltrace -c ls

Affiche un résumé du nombre d'appels et du temps pour chaque fonction de bibliothèque de la commande 'ls'.

Enregistrer la sortie dans un fichier

ltrace -o ls_trace.log ls

Enregistre les résultats du traçage de la commande 'ls' dans le fichier 'ls_trace.log'.

Tracer uniquement des fonctions de bibliothèque spécifiques

ltrace -e 'malloc|free' ls

Trace uniquement les appels des fonctions 'malloc' ou 'free' dans la commande 'ls'.

Tracer également les processus enfants

ltrace -f bash -c "ls"

Lors de l'exécution de 'ls' dans le shell 'bash', trace les appels de bibliothèques de 'bash' et de 'ls'.

Installation

ltrace n'est peut-être pas installé par défaut sur la plupart des distributions Linux. Vous pouvez l'installer en utilisant les commandes suivantes.

Debian/Ubuntu

sudo apt update && sudo apt install ltrace

Installe ltrace sur les systèmes basés sur Debian ou Ubuntu.

CentOS/RHEL/Fedora

sudo dnf install ltrace

Installe ltrace sur les systèmes basés sur CentOS, RHEL ou Fedora.

Conseils et précautions

Points à considérer et conseils utiles lors de l'utilisation de ltrace.

Surcharge de performance

  • ltrace peut ralentir considérablement l'exécution d'un programme, il doit donc être utilisé avec prudence dans les environnements de production.

Différence avec strace

  • ltrace trace les appels de bibliothèques, tandis que strace trace les appels système. L'utilisation conjointe des deux outils permet une compréhension plus complète du comportement du programme.

Binaires liés statiquement

  • ltrace n'est efficace que pour les programmes qui dépendent de bibliothèques dynamiques. Les binaires liés statiquement n'ont pas d'appels de bibliothèques et ne peuvent donc pas être tracés par ltrace.

Permissions

  • Des privilèges root (sudo) peuvent être nécessaires pour tracer les processus d'autres utilisateurs ou les binaires système.

Commandes de la même catégorie