lsof出力のファイルオフセットは正確に何ですか?

lsof出力のファイルオフセットは正確に何ですか?

私はこれを使ってlsofまだスペースを占めている削除されたファイルを追跡していますが、ファイルに対する相対的なオフセットが何であるかわからないことに気づきました。lsofマンページはこれに関してほとんど役に立たず、周辺を検索してもそれが何であるかはっきりわかりません。

ファイルオフセットとは何ですか?この情報を持つのはなぜ便利ですか?

答え1

オフセットは、指定されたファイル記述に対してカーネルによって保持されるファイルの現在位置です(参照:lseek(2)そしてopen(2)詳しくはマンページをご覧ください。)

の出力になぜこれがlsof役に立つのかはわかりません。すべてのケースをカバーするわけではありませんが、ファイルを介してプロセスの進行に関する情報を提供できます(メモリマッピングファイルはオフセットの変更を表示しません)。

答え2

Steven Kitの答え閉じていますが、読んでみると正確ではありません。検索(2)もっと詳しく見ると、実際には次のように表示されていることがわかります(太字で表示)。

これ探す() 関数はファイルのオフセットを再配置します。ファイル説明を開くファイル記述子に関連付けられているFD[...]

それでは、「オープンファイルの説明」とは何ですか?「ファイル記述子」とはどのような関係がありますか?

さて、コメントセクションには、次のものがあります。

バラよりオープン(2)ファイル記述子、開かれたファイル記述、およびファイル間の関係について議論します。

完璧!ただし、マニュアルページのテキストを貼り付けるのではなく、次のリンクに直接リンクします。「開いたファイルの説明とは何ですか?」に対する良い答えです。これは同じことを説明します。

関連情報