我是NAS的所有者,运行一些Linux发行版。它有一个网络管理前端,在那里我可以管理几个服务,用户权限,以及它应该何时睡觉。我的问题是,由于某种原因,当NAS进入睡眠状态时,硬盘在几分钟后再次打开。然后它会旋转一段时间,然后再睡觉。这件事一直在无限期地进行。
我怎样才能确定原因呢?我对Linux非常陌生,但我设法获得了根访问,现在有了SSH连接。
发布于 2012-01-19 00:13:33
inotify-工具是一种简单的方法。在他们的站点上有几个例子可以做你想做的事情(参见inotifywatch示例中一个非常基本的例子)。
发布于 2012-01-20 16:09:57
试着运行iotop吗?我发现它在过去很有用。
发布于 2014-07-01 23:14:38
您需要告诉内核将所有读/写到磁盘的信息通知您,然后您需要查看该信息。
所以:
# sync
# echo 1 > /proc/sys/vm/block_dump
# dmesg -c | grep '/dev/sda'sync会刷新对磁盘的所有挂起的写入,以便只看到新的读或写。
dmesg -c向您展示内核消息,并清除它们(否则,每次运行dmesg时,您也会看到旧消息)。grep为您感兴趣的磁盘的活动过滤dmesg的输出。用实际设备替换/dev/sda。
我通常使用这样的方法向下旋转磁盘,然后检查磁盘何时再次旋转:
# sync
# hdparm -y /dev/sda
# while true; do hdparm -C /dev/sda ; sleep 600 ; donewhile循环每10分钟检查一次磁盘活动/空闲状态。当您看到它打开电源时,请在上面运行dmesg行以查看侦探小说。
https://unix.stackexchange.com/questions/29409
复制相似问题