怎么关闭移动硬盘的自动休眠

移动硬盘通常都会自动休眠,一段时间不用再次打开时都有一两秒卡顿,而且频繁启动和休眠对硬盘本身的影响也较大,因此想关闭其自动休眠。

Windows

Windows 下关闭移动硬盘自动休眠的步骤如下:

  1. 打开电源管理,关闭 USB 的自动关闭。
图片[1]-怎么关闭移动硬盘的自动休眠-不念博客
  1. 打开设备管理器 (Device Manager),关闭 USB 自动关闭。
图片[2]-怎么关闭移动硬盘的自动休眠-不念博客

在完成上述配置后,我发现移动硬盘的自动休眠问题并没有被关闭。原因未知。

在网上搜索后,找到一款软件 NoSleepHD。

NoSleepHD 每隔一段时间向硬盘写入一个小文件,然后立即删除它,以此来防止硬盘进入休眠模式。

图片[3]-怎么关闭移动硬盘的自动休眠-不念博客

该软件经实测有效。

Linux

Linux 下如何关闭移动硬盘的自动休眠的办法我没找到,但遵照 NoSleepHD 的思路,我想到可以写一个脚本,每隔一段时间向移动硬盘挂载的目录中的文件写入一个数字,从而使移动硬盘保持唤醒。

1 硬盘重新分区和挂载

  1. 插入移动硬盘后,首先查看是否被读取。
lsblk
# 我的移动硬盘
# sde       8:64   0 465.8G  0 disk
#  └─sde1   8:65   0 465.8G  0 part
  1. 我的硬盘之前是 MBR 分区,先需改为 GPT。
sudo apt update
sudo apt install gdisk -y
sudo gdisk /dev/sde
# 输入 w 写入
  1. 对硬盘进行分区。
sudo fdisk /dev/sde

按照以下情况处理:

Command (m for help): n
Partition number (1-128, default 1):
First sector (34-976773134, default 2048):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-976773134, default 976773134):

Created a new partition 1 of type 'Linux filesystem' and of size 465.8 GiB.

Command (m for help): w
The partition table has been altered.
Syncing disks.
  1. 将硬盘格式化。
mkfs.ext4 /dev/sde
  1. 创建一个被挂载的目录。
mkdir -p /home/ubuntu/mount3
  1. 查询硬盘 UUID。
blkid
  1. 编辑配置文件并挂载。
sudo vim /etc/fstab

在 /etc/fstab 中最后一行添加以下内容,注意更换对应的 UUID 号和目录。

UUID=094f82c1-a56e-4236-823c-aa717109b8ef /home/ubuntu/mount3 ext4 defaults 0 2
  1. 刷新挂载分区。
sudo mount -a

2 samba 共享

  1. 修改 samba 配置文件,添加新挂载的目录。
sudo vim /etc/samba/smb.conf
# 加入以下内容到 smb.conf 的最后
[mount3]
    path = /home/wang/mount3
    create mask = 760
    directory mask = 760
    writable = yes
    browsable = yes
    valid users = wang
  1. 重启服务。
sudo service smbd restart
  1. 在 windows 中映射目录。
\\192.168.5.99\mount3

3 持续唤醒移动硬盘

  1. 编辑一个保持唤醒的脚本。
sudo vim /home/wang/mount3/nosleep.sh

写入以下内容:

#!/bin/bash
# 指定文件路径
FILE_PATH="/home/ubuntu/mount3/nosleep.txt"
# 无限循环
while true
do
    # 生成一个随机数字并追加到文件中
    echo $RANDOM >> $FILE_PATH
    # 等待两分钟
    sleep 120
done
  1. 添加运行权限。
sudo chmod +x /home/wang/mount3/nosleep.sh
  1. 设置开机启动。

sudo crontab -e

添加以下内容:

@reboot sleep 30 && /home/wang/mount3/nosleep.sh

经测试我发现,在 samba 下,移动硬盘并不会休眠,因此这个脚本也多余了。

© 版权声明
THE END