如何才能使磁盘在写入备份时不旋转?

如何才能使磁盘在写入备份时不旋转?

我使用 1TB 硬盘来存储系统备份。我每晚都会备份一次。

我尝试将 hdparm.conf 配置为在 30 分钟不活动后停止运行

/dev/disk/by-uuid/783E797F3E7936EA {
    spindown_time = 254
}

创建备份并写入磁盘大约需要 20 分钟。在此写入过程中,我的磁盘会多次旋转并发出令人讨厌的噪音。

我怀疑这是因为 linux 将写入缓存到磁盘并时不时地写入它们,而不是连续地写入磁盘以使其保持活动状态。

如何才能使磁盘在开始备份写入时旋转一次,在整个作业过程中保持活动状态,并最终旋转减速直到下次尝试读取/写入?

我正在运行 Ubuntu 服务器 20.04.1。

编辑:

我确信我的 UUID 是正确的,我在运行中获得了它blkid,并且在我的系统中使用它,/etc/fstab运行没有任何问题。

运行hdparm -S 60 /dev/disk/by-uuid/783E797F3E7936EA可以实现我想要的结果,但我希望通过配置来实现。而不是时不时地运行命令。

编辑2:

我的备份只是主文件夹的简单 tar 存档。其中包含对我而言重要的所有文件。它每天以 cronjob 的形式运行一次。在我的备份脚本中执行工作的命令是tar -cJpf <archive name> /home

我知道磁盘正在减速。当磁盘短暂停止转动时,我可以用手感觉到它停止转动。每当我在磁盘减速后访问磁盘时,我都能听到磁盘速度从 0 RPM 加速到运行速度。

该磁盘刚刚分区,只有一个大分区,应该不会有任何碎片问题。

答案1

一个选择是编写一个包含hdparm更改的脚本并让你的 cron 作业调用该脚本。

例如:

#!/bin/bash
cd /backup/location
hdparm -S 0 /dev/disk/by-uuid/783E797F3E7936EA
ar -cJpf <archive name> /home
hdparm -S 60 /dev/disk/by-uuid/783E797F3E7936EA

使用将文件设置为可执行文件chmod +x,并在控制台中进行测试。

笔记:

  • 确保更改/backup/location为你实际想要写入备份的位置
  • 使用hdparm -S 60 {device}将在 5 分钟不活动后关闭该设备。30 分钟通常不可行,因为该数字以 5 秒为增量在 1 到 240 之间工作。有关更多信息,文档详细说明了如何使用这些数字

希望这能给你你想要的东西。

相关内容