How can I spin down external hard drive?

win*_*ngs 26 spindown external-hdd

I want to spin down external hard drive from the terminal before unmounting.

It is an sata drive connected through usb.

Running hdparm gives this

 ry@G62x:/media$ hdparm -S10 937b2299-48ff-4a9c-8228-67ed4453e8fb/

 937b2299-48ff-4a9c-8228-67ed4453e8fb/:
 setting standby to 10 (50 seconds)
 HDIO_DRIVE_CMD(setidle) failed: Inappropriate ioctl for device
Run Code Online (Sandbox Code Playgroud)

小智 20

通过使用 的命令行功能,您可以最轻松地从终端安全地卸载和关闭外部硬盘udisks,如果您的系统设置正确,则不需要使用 sudo。(要列出您的设备名称,mount请先在终端中输入。)

找到外部驱动器后,请使用以下命令。您必须首先卸载分区(使用sdb1mount显示为位置的任何内容):

udisks --unmount /dev/sdb1
Run Code Online (Sandbox Code Playgroud)

然后要安全删除(即降速 - 您会听到咔哒声和降速),仅使用sdb,例如:

udisks --detach /dev/sdb
Run Code Online (Sandbox Code Playgroud)

注:这是至关重要这里您使用sdbsdc不使用时,分区号detach选项; 即sdb1sdc1不会工作。如示例所示,必须首先卸载分区,然后磁盘本身停止旋转。

这些udisks命令适用于我所有的 pata 和 sata 外部硬盘。

  • -1 表示使用 `udisks`。它绝不是任何标准,因此没有太大帮助。 (2认同)

小智 7

udisk 选项在我的情况下不起作用,但以下内容起作用:

sudo umount /dev/sdb1
sudo hdparm -y /dev/sdb
Run Code Online (Sandbox Code Playgroud)

在远程关闭带有外部 USB 驱动器的无头 Linux 服务器时,我会使用这些命令。就我而言,安全性不是问题,因此服务器密码在脚本中。

对于 Ubuntu 服务器和 Windows 客户端,以下批处理文件,假设安装了 PuTTY:

C:\"Program Files (x86)\PuTTY\plink.exe" -ssh -t -l SERVERUSERNAME -pw PASSWORD -noagent 192.168.2.22 "echo PASSWORD | sudo umount /dev/sdb1 ; sudo -S hdparm -y /dev/sdb; sudo -S halt -i now"
Run Code Online (Sandbox Code Playgroud)

对于 Debian 服务器,替换sudo halt -i nowshutdown -h -P; 在这两种情况下,网卡都保持唤醒状态,因此可以稍后唤醒。