![linux中如何不使用atime查找一段时间内未被访问的文件?](https://linux22.com/image/1259256/linux%E4%B8%AD%E5%A6%82%E4%BD%95%E4%B8%8D%E4%BD%BF%E7%94%A8atime%E6%9F%A5%E6%89%BE%E4%B8%80%E6%AE%B5%E6%97%B6%E9%97%B4%E5%86%85%E6%9C%AA%E8%A2%AB%E8%AE%BF%E9%97%AE%E7%9A%84%E6%96%87%E4%BB%B6%EF%BC%9F.png)
Linux 中是否有办法查找在计算机启动和工作期间访问过(读取、写入,无所谓)的文件?或者更好的是,在某个时间段内根本没有访问过的文件?我知道有一个find / -atime +60
(例如针对超过 60 天的文件)命令,但问题是在这个系统中,文件的 atime 属性的修改被禁用,因为它是从闪存卡工作的。所以我需要其他方法来查找这些文件。
答案1
对于启动过程中访问的文件,我首先要提前:
$ sudo ureadahead --dump | grep /
/var/lib/ureadahead/pack
它转储存储配置的启动文件访问的内容。
否则,有很多方法可以监视文件访问:
- inotify 工具, 看监控 Linux 上的文件和目录访问
- 已记录文件系统,但在启动时设置可能会比较棘手。
- 脂肪痕迹,报告系统范围的文件访问事件。
- 审计控制可能也一样。
启动图可能有助于直观地了解启动期间发生的情况。