Shell

監控文件更改 + 程序對文件的訪問

  • June 17, 2018

我想看看我的應用伺服器文件夾中發生了什麼,即程序 x 更改了哪些文件,或者*.war在過去 x 分鐘內更改了(替換/創建)了哪些文件。

Linux中是否有工具可以幫助解決這個問題?

根據您的具體需求,您可能需要研究inotify和/或FAM / GAMIN解決方案。

Strace(如上所述)是檢查指定執行軟體操作的一種方法。

某些命令watch find dir/ -mmin 1也可能有助於檢查某個目錄中過去一分鐘的更改。

根據您正在尋找的具體內容,inotify-tools可能是這裡的另一種交易工具。

例如,inotifywait -mr dir/監視給定目錄中的更改並立即為您提供任何嘗試打開/讀取/寫入/關閉文件的應用程序的回饋。但是,inotify 不會向您提供有關哪個應用程序或程序正在訪問該文件的回饋 - 這是 strace 所做的事情。

請注意,系統級監控對於在某些應用程序容器環境中執行的 Java 軟體通常用途有限,因為您只能看到與系統互動的容器(例如 Tomcat),而看不到實際的應用程序(例如 .war)。

引用自:https://unix.stackexchange.com/questions/92013