開いたファイルのファイルオフセットを見つけるには?

開いたファイルのファイルオフセットを見つけるには?

私の問題は、 lsof -p pid プロセスIDがpidのプロセスに対して開かれたファイルのリストを見つけることができることです。しかし、アクセスされた各ファイルのファイルオフセットを見つける方法はありますか?

アドバイスをしてください。

ベストアンサー1

Linuxでは、Nプロセス内のファイル記述子の場所を見つけることができます。例:PID/proc/$PID/fdinfo/$N

$ cat /proc/687705/fdinfo/36
pos:    26088
flags:  0100001

複数のファイル記述子を使用すると、同じファイルを異なる場所で複数回開くことができるため、複数のファイル記述子を持つ場合は、そのファイル記述子を選択する必要があります。使用:

$ readlink /proc/$PID/fd/$N

そのファイル記述子がどのファイルに添付されているかを確認します(シンボリックリンクがぶら下がっている場合はファイルではない可能性があります)。

おすすめ記事