天天看点

Linux记录读写硬盘的程序脚本

前言

自己用树莓派整了个NAS玩玩,但是经常听到硬盘在本应无访问的时候转来转去,遂想查明究竟为何转。

曾考虑使用fuser -mv /dev/sda这样的命令,但是奈何输出内容我不知如何输出到文件,用>或tee都无法重定向到文件里。

思路

使用lsof /dev/sda得到当前正在读写硬盘的进程,将内容输出至文件,并记录时间戳

实现

方法并不是最优解,也请大佬不吝赐教

使用方法 <code>python3 ./watch.py /dev/sda a 1</code>

参数1: 监控的硬盘

参数2: 写入文件的文件名(a.txt)

参数3: 每隔1s执行一次lsof

总结

最后这份代码也没有查明到底为何导致我的硬盘转,后猜测为OpenMediaValut的S.M.A.R.T开启所导致,虽说那是并无检查任务,但估计是Bug之类的问题吧。另外,在使用OpenmeidaVault管理界面时,也会莫名其妙唤醒硬盘,同时不会被上述代码记录。