Rav*_*ina 6 suspend hard-drive spindown external-hdd
我的 WD Element Drive 表现很奇怪。驱动器花了很长时间才停止旋转,而且我无法使用不同的方法为驱动器设置待机(停止旋转)超时。
例如使用会hdparm导致SG_IO错误:
$ sudo hdparm -S 25 /dev/sdx
dev/sdx:
setting standby to 25 (2 minutes + 5 seconds)
SG_IO: bad/missing sense data, sb[]: ...
Run Code Online (Sandbox Code Playgroud)
驱动器的控制器似乎不支持这些方法。
然而,奇怪的是我可以使用-y开关将驱动器置于待机模式:
$ sudo hdparm -y /dev/sdx
Run Code Online (Sandbox Code Playgroud)
它给出了相同的SG_IO错误,但驱动器转速下降。我对此很满意。
似乎暂停 Ubuntu 会产生类似于拔出和插入驱动器的效果。
当我想暂停 Ubuntu 时,请使用systemctl suspend:
停止运行的唯一方法是恢复 Ubuntu 并运行hdparm -y手动在驱动器上运行,如果我再次暂停 Ubuntu,也会发生同样的情况。
我尝试在挂起状态下运行hdparm -y以使驱动器处于standby模式:
$ cat /usr/lib/systemd/system-sleep/suspend_drive
#!/bin/sh
case $1 in
pre)
hdparm -y /dev/sdc ;;
esac
Run Code Online (Sandbox Code Playgroud)
它没有任何效果。正如我已经说过的,当 Ubuntu 即将进入睡眠状态时,驱动器首先会旋转一秒钟,然后它会再次开始工作。
有办法解决这个问题吗?
我正在寻找一种解决方案,以防止驱动器在系统进入睡眠状态时首先旋转。如果驱动器已经唤醒,它应该与系统一起进入待机模式。
笔记:
udiskctl poweroff。如果我用来udisksctl power-off /dev/sdc安全地删除驱动器,暂停 Ubuntu 的行为就像拔出并重新插入一样,我可以再次安装并使用该驱动器(这是不应该发生的事情)。
我能够为驱动器设置一个待机计时器,sdparm但它并没有解决问题,在暂停 Ubuntu 驱动器旋转后,即使计时器设置为一个小值(例如一分钟),也不会停止旋转。
由于我遇到了不同的结果,我不能 100% 确定,但似乎我只是在驱动器连接到 USB3 端口时才遇到该问题。
我可以确认我在 Windows 中也遇到了同样的问题。
当我发现将系统置于睡眠模式就像拔下并重新插入驱动器一样,我怀疑 USB 端口及其电源可能存在一些问题。
我通过 BIOS 并将“Always On USB”设置为“Enable”;看来将此参数设置为启用已经解决了该问题。