Linux 通过ftrace跟踪当前系统操作的文件和进程

    1、cd sys/kernel/debug/tracing/events/android_fs
    2、echo 1 > enable
    android_fs_dataread_start
    android_fs_dataread_end
    android_fs_datawrite_start
    android_fs_datawrite_end
    android_fs_fsync_start
    android_fs_fsync_end
   3、 echo 'android_fs_dataread_start android_fs_dataread_end android_fs_datawrite_start android_fs_datawrite_end' > set_event
    4、cat trace

如下可以看到哪些pid在操作哪些inode:

log如下:  

 test-4677  [003] ....  7017.061333: android_fs_datawrite_end: ino 16, offset 4119400, bytes 94
    testbin-4677  [003] ....  7017.061394: android_fs_datawrite_start: entry_name /testbin.cap0, offset 4119494, bytes 94, cmdline testbin, pid 4677, i_size 4119494, ino 16
    testbin-4677  [003] ....  7017.061431: android_fs_datawrite_end: ino 16, offset 4119494, bytes 94
    testbin-4677  [003] ....  7017.061496: android_fs_datawrite_start: entry_name /testbin.cap0, offset 4119588, bytes 114, cmdline testbin, pid 4677, i_size 4119588, ino 16
    testbin-4677  [003] ....  7017.061526: android_fs_datawrite_end: ino 16, offset 4119588, bytes 114
    testbin-4677  [003] ....  7017.061588: android_fs_datawrite_start: entry_name /testbin.cap0, offset 4119702, bytes 114, cmdline testbin, pid 4677, i_size 4119702, ino 16
    testbin-4677  [003] ....  7017.061617: android_fs_datawrite_end: ino 16, offset 4119702, bytes 114

你可能感兴趣的:(Linux文件系统,linux,文件系统)