标题说明了一切。
我的旧(超过 10 年)盒子坏了,而且由于外部存储设备变得非常大而且便宜,所以我决定将我的数据放到其中两个设备上。
是的,它们可能会比较慢,但无论如何我不会在高流量应用中使用它,并且在下一个搬家日我只需将存储器插入一个新盒子即可。
它运行了几个月都没问题,但现在设备大约每周会无缘无故断开(卸载)一次,然后自行重新连接或需要重新插入。
而且它们彼此独立断开,因此我不认为这是USB 设备断开连接/触摸板关闭。USB 鼠标和键盘看起来不受影响,或者它们重新连接的速度足够快以至于我没有注意到。
该盒子运行Ubuntu 18.04.04。
这可能是什么原因?我该如何避免这种麻烦?
编辑:刚才又发生了。
当插入我的 Android 设备进行开发/调试时,外部磁盘会发出声音关闭并重新连接(您现在可能会听到咔嗒声)。
即使通知显示“刚刚”连接,打开了外部设备的文件的程序也无法读取该设备中的文件。
我真的很担心这种不当行为会损坏我的存储设备并导致永久性数据丢失。
编辑2:
在过去的某个时候,此功能导致加密的 hsqldb 存储丢失,因为当系统断开存储设备时,加密所需的一些块未被写入。
答案1
最好的猜测是驱动器消耗了太多的电力,而主机或驱动器中的 USB 控制器正在限制电流消耗,以保护所有设备免受过流情况的影响。如果驱动器仅使用 USB 供电,则这种情况更有可能发生。如果可以选择从外部电源为驱动器供电,我建议使用它。如果您有供电的 USB 集线器,那么将设备插入集线器也可以解决此问题。即使在同一台计算机上,并非所有 USB 端口都相同,因此移动设备可以解决此问题。
您知道这些设备消耗多少电流吗?它们是 USB 2.0 还是 USB 3.x 设备?主机上的端口是 USB 2.0 还是 USB 3.x?
这是电源问题的一个重要线索是驱动器在插入另一个设备时会做出反应。驱动器不会同时断开连接并不意味着这不是电源问题。电缆上的电压会下降,这取决于电流消耗。驱动器,尤其是那些带有旋转盘片的驱动器,电流消耗会有所不同。当您插入耗电设备时,端口处的电压会下降,由于 USB 电缆的损耗,驱动器处的电压会下降更多,电压可能会下降到足以让电路认为它们已拔出。一旦驱动器停止旋转并且磁头停止寻道,电流就会下降,电压就会回到应有的水平,驱动器会认为它已重新插入。
USB 2.0 端口需要提供 500 mA 电流。USB 2.0 设备最多可吸收 1.5 安培电流,但前提是设备请求更多功率,并且主机同意该请求。某些 USB 2.0 端口将通过使用符合 USB-PD 规范的选项提供高达 2.4 安培的电流。
USB 3.x 端口需要提供 900 mA 电流,通常提供 1.5 安培电流以实现 USB 2.0 兼容性,并可为高功率 USB 3.x 和低功率 USB-PD 设备提供高达 3 安培的电流。
使用我给出的数字作为检查是否存在电源问题的起点。检查 USB 设备的电流消耗量。查看计算机上的 USB 端口是否列出了电源输出。如果您找不到其他信息,可以安全地假设任何给定端口都可以提供 1.5 安培的电流。这个 1.5 安培的预算可能由多个端口共享,因此相邻端口上的两个高电流消耗设备可能会产生电源问题。