
我想了解過去一小時在我的系統上執行了哪些文件操作(失敗和成功)。有沒有辦法做到這一點?
答案1
除非您監視並記錄了文件操作的歷史記錄,否則您無法查看它們。有一些方法可以做到這一點,例如 ptrace() 系統呼叫或 strace 命令列實用程序,甚至可能DTrace,但如果您沒有記錄操作,則只能使用檔案時間戳記。
答案2
預設不會記錄此類資訊(這將是很多資訊)!
如果您想查看特定進程正在做什麼,請在下面運行它strace
(這是 Linux 實用程序,其他 Unix 變體也有類似的實用程序,例如truss
,dtrace
, ETC。預設情況下strace
記錄所有系統呼叫。您可以控制顯示什麼樣的資訊strace
;例如,該選項-efile
將日誌記錄限制為存取檔案的系統呼叫。
strace -o myprogram.log -efile myprogram --option
如果您想記錄對特定層次結構中所有文件的訪問,您可以使用記錄檔案系統。看是否可以找出哪個程式或腳本建立了給定檔案?取得使用範例。不要記錄正在寫入日誌的目錄!
Linux 是一種更普遍的日誌記錄機制審計子系統。它以 root 身份運行。看是否可以找出哪個程式或腳本建立了給定檔案?有關配置說明和使用範例。不要記錄正在寫入日誌的目錄!