GNU/Linux >> Linux Esercitazione >  >> Linux

Come tracciare le operazioni IO per file in Linux?

Potresti aspettare che i file vengano aperti in modo da poter apprendere fd e allegare strace dopo l'avvio del processo in questo modo:

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


Innanzitutto, probabilmente non hai bisogno di tenere traccia perché la mappatura tra fd e path è disponibile in /proc/PID/fd/ .

Secondo, forse dovresti usare il trucco LD_PRELOAD e sovraccaricare in C open , seek e read chiamata di sistema. Ci sono alcuni articoli qua e là su come sovraccaricare malloc/free.

Immagino che non sarà troppo diverso applicare lo stesso tipo di trucco per quelle chiamate di sistema. Deve essere implementato in C, ma dovrebbe richiedere molto meno codice ed essere più preciso dell'analisi strace uscita.


Linux
  1. Come usare BusyBox su Linux

  2. Come installare Python su Linux

  3. Come uso cron in Linux

  4. Come installare Java su Linux

  5. Come partizionare un disco in Linux

Come uccidere un processo in Linux

Come creare un file in Linux

Come rinominare le directory in Linux

Come tracciare l'esecuzione del programma utilizzando il comando Strace di Linux

Come usare il comando Linux Strace

Come tracciare e tracciare un processo Linux