cat /dev/sdd >/dev/null
如果磁盘不执行其他操作,我希望每秒提供大约相同数量的数据。
但在这个 USB 盘上我看到:
Device rkB/s wkB/s %util
sdf 628.39 0.00 2.12
sdf 29696.00 0.00 100.40
sdf 21368.00 0.00 72.40
sdf 0.00 0.00 0.00
sdf 19208.00 0.00 65.20
sdf 29184.00 0.00 99.60
sdf 13952.00 0.00 47.20
sdf 0.00 0.00 0.00
sdf 27264.00 0.00 92.80
sdf 29312.00 0.00 99.60
sdf 6016.00 0.00 20.00
sdf 5112.00 0.00 16.80
sdf 29824.00 0.00 99.20
sdf 27272.00 0.00 92.80
sdf 0.00 0.00 0.00
sdf 13560.00 0.00 46.00
sdf 29192.00 0.00 99.60
sdf 19456.00 0.00 66.40
sdf 0.00 0.00 0.00
sdf 21888.00 0.00 74.40
sdf 29568.00 0.00 99.60
sdf 11008.00 0.00 36.80
sdf 760.00 0.00 2.80
sdf 29448.00 0.00 99.60
sdf 29816.00 0.00 99.20
sdf 2432.00 0.00 8.40
sdf 8072.00 0.00 28.80
sdf 30208.00 0.00 100.40
sdf 24459.41 0.00 81.98
sdf 0.00 0.00 0.00
sdf 16768.00 0.00 56.40
sdf 29440.00 0.00 98.80
sdf 17536.00 0.00 58.40
如果我将 USB 磁盘移动到另一个系统,我会看到相同的行为。当它暂停时,它会发出好像在寻找的声音(“drrrrr”),然后是短暂的休息和另一个(“drrrrrr”)。
为什么?我怎样才能让它停止?
答案1
外部驱动器如何连接以及它是什么类型的磁盘?
我有几个 2.5 英寸外置 USB 硬盘驱动器,如果它们所连接的 USB 端口没有足够的电源,它们就会发出咔嗒声。有些操作有效,而另一些则失败 - 并且驱动器通常会开始发出咔嗒声。也许长时间的 SMART 自检会触发一些东西,使其实际上使用更少的电量(例如延迟磁头运动动作)?
但这确实是一个很大的“也许”。
我曾经有过两个来自同一供应商的非常相似的 SCSI 驱动器,但那是很久以前的事了。其中之一总是工作得很好。另一个在闲置固定时间段后(一段时间内没有 I/O,只是旋转)会重复失败。当时的症状是 I/O 完全停滞。每次读取或写入都会失败,只有重新启动才能解决停滞的 I/O。我个人的“修复”是编写一个简单的 shell 脚本,该脚本将创建一个临时文件,在其中放入一些随机数据并再次删除它,并让 cron 作业每 15 分钟运行一次。这为我解决了问题(驱动器不会进入“空闲”状态这么长时间,因此它不会完全停止),但它实际上只能解决症状,因为直到今天我仍然不知道在哪里原来的错误实际上是从一开始就出现的。我发现这两个驱动器没有差异(除了同系列的型号略有不同)。据我所知,使用hdparm
(我认为实际上是用于 SCSI 驱动器)它们是相同的。sdparm
即使切换连接器(其中一个连接器连接了 SCSI 终结器)和 SCSI ID 也没有改变任何内容。
长话短说:我不知道。您还可以考虑驱动器控制器发生故障的可能性。 SMART 并不总是能发现有故障的硬件。
答案2
目前还不清楚是什么原因造成的。但如果我运行它就会停止:
sudo smartctl -t long /dev/sdd
测试不必完成:测试开始的那一刻,我得到(如预期的那样):
Device rkB/s wkB/s %util
sdd 36864.00 0.00 100.00
sdd 37376.00 0.00 99.60
sdd 37752.00 0.00 99.60
sdd 37256.00 0.00 99.60
sdd 37496.00 0.00 98.80
sdd 37512.00 0.00 100.00
sdd 37752.00 0.00 100.40
sdd 38912.00 0.00 100.00
sdd 37888.00 0.00 98.80
sdd 38024.00 0.00 99.20