strace 可以顯示讀取/寫入系統呼叫的檔案名稱/路徑嗎

strace 可以顯示讀取/寫入系統呼叫的檔案名稱/路徑嗎

如果在 Linux 上追蹤一個進程,則讀取和寫入會顯示檔案描述符句柄號。如果我查看,/proc/$PID/fd我可以看到與 fd 編號相對應的檔案的符號連結(如果適用)。

無論如何,有沒有辦法讓 strace 為我查找並(透過取消引用符號連結)向我顯示 strace 輸出中的檔案名稱?它已經查找 Linux errno 並截斷和編碼字串,那麼它也可以做到這一點嗎?

更新:我知道 strace 會顯示open顯示路徑和 fd 的呼叫。這對於短時間運行的進程來說是很好的。但假設我有一個非常長的運行過程(以天為單位),並且沒有在 strace 下運行整個過程,只是稍後使用strace -p.

答案1

快速瀏覽一下精美的手冊就會發現:

   -y          Print paths associated with  file  descriptor  argu-
               ments.

相關內容