GNU/Linux >> Tutoriels Linux >  >> Linux

Comment tracer les opérations d'E/S par fichier sous Linux ?

Vous pouvez attendre que les fichiers soient ouverts afin de pouvoir apprendre le fd et joindre strace après le lancement du processus comme ceci :

strace -p pid -e trace=fichier -e read=fd


Tout d'abord, vous n'avez probablement pas besoin de suivre car le mappage entre fd et path est disponible en /proc/PID/fd/ .

Deuxièmement, vous devriez peut-être utiliser l'astuce et la surcharge LD_PRELOAD en C open , seek et read appel système. Il y a quelques articles ici et là sur la façon de surcharger malloc/free.

Je suppose que ce ne sera pas trop différent d'appliquer le même genre d'astuce pour ces appels système. Il doit être implémenté en C, mais il devrait prendre beaucoup moins de code et être plus précis que l'analyse strace sortie.


Linux
  1. Comment utiliser BusyBox sous Linux

  2. Comment j'utilise cron sous Linux

  3. Comment partitionner un disque sous Linux

  4. Comment utiliser la commande Su sous Linux

  5. Comment utiliser les commandes strace et ltrace sous Linux

Comment tuer un processus sous Linux

Comment créer un fichier sous Linux

Comment renommer des répertoires sous Linux

Comment suivre l'exécution d'un programme à l'aide de la commande Linux Strace

Comment utiliser la commande Linux Strace

Comment suivre et tracer un processus Linux