• 那是云首页
  • 快捷导航
  • 更多
    设为首页收藏本站
  • |
花生壳

在威联通NAS上完美实现硬盘单独休眠

威联通 QNAP  / 教程分享  / 只看大图  / 倒序浏览   © 著作权归作者本人所有

#楼主# 2019-8-23 11:24

跳转到指定楼层
本帖最后由 dandelion 于 2019-9-5 19:01 编辑

NAS因为要长时间开机,对于我们这些使用不是那么频繁的家庭用户,硬盘休眠问题就变得很重要,硬盘休眠不仅可以降低功耗静音,而且还能延长硬盘寿命。我们说的硬盘休眠实际有两种情况。

第一种情况是硬盘整体休眠模式。也就是说要不同时运行,要不同时休眠。好像现在的威联通和群晖只能硬盘整体休眠。
第二种情况是单独休眠模式,只有数据访问某个硬盘硬盘的时候,这个硬盘才被唤醒,其它时间处于休眠状态。

第一种情况让NAS所有硬盘休眠很麻烦,考虑的因素有很多,即使好不容易休眠了,不知道什么系统程序又将硬盘唤醒。如果硬盘频繁地休眠和唤醒,反而缩短硬盘寿命。有时关闭太多服务和程序还影响我们的正常使用nas,以至于有些人关闭了硬盘休眠。

实际上我更希望在我的NAS实现第二种情况的休眠,我把系统装在SSD固态硬盘上,固态硬盘功耗很低,基本可以忽略,现在大容量ssd硬盘越来越便宜,完全可以把很多程序运行在ssd上,而空闲的机械硬盘处于休眠状态。如果只访问一块机械硬盘,其它机械硬盘也处于休眠状态。

我用的是TS-551,两个ssd硬盘盘位和三个普通硬盘盘位。5个盘我都设成独立的静态卷,ssd硬盘也没做高速缓存,也没做raid。我通过功率测定仪来检测机械硬盘是否处于休眠状态。在两块固态硬盘运行过程中,我的机械硬盘确实可以单独休眠,问题是几分钟后又被唤醒,我在网上查了很多种方法,都不能解决休眠问题。最后在qnap的论坛上发现了一篇文章,完美解决了我的机械硬盘单独休眠问题。文章的链接https://forum.qnap.com/viewtopic.php?f=55&t=130788。

文章说既然所有硬盘休眠非常困难,那不如让程序运行在SSD硬盘上,让其它空闲的机械硬盘休眠。硬盘不断唤醒是因为威联通创建了一个内部的RAID-1系统分区,这个系统分区横跨了所有硬盘(span all the drives),并不断访问所有硬盘的这个分区。所以说这个同步的RAID1分区是造成威联通的NAS不能单独休眠的原因,即使休眠,一会也会唤醒。所以要想空闲的硬盘休眠,可以让这块硬盘设成faulty状态,临时和这个系统RAID-1分开 ,因为系统不会再访问这个硬盘,硬盘就不会再唤醒。如果一直脱离RAID-1卷,nas可能会出问题,每天一次把分开的硬盘重新加入这个raiid-1,15分钟后再次分开,硬盘又可以单独休眠。作者分别做了两个脚本来实现硬盘和系统raid1的分开和加入。

一 准备工作:
putty登录NAS,运行命令:
mdadm -D /dev/md9
md9.jpg
证实所有硬盘都是系统RAID md9的一部分
mdadm -D /dev/md13
md13.jpg
证实所有硬盘都是系统RAID md13的一部分。

parted /dev/sdc print
sdc.jpg
查看我的机械硬盘sdc的所有分区,其它两个机械硬盘也是一样的。注意第一分区sdc1和其它硬盘组成了raid md9,第四分区sdc4和其它硬盘组成了raid md13。这两个分区是我们要系统raid-1分开的两个分区。

对于硬盘sdc来说,执行下面这两个命令,sdc硬盘和系统raid分开,硬盘可以独立休眠:
mdadm /dev/md9 --fail /dev/sdc1
mdadm /dev/md13 --fail /dev/sdc4

执行完上面两个命令,再用mdadm -D /dev/md9检查,注意/dev/sdc1显示已经移除(removed)。。
sdc1断开状态.jpg

执行mdadm -D /dev/md13,是一样的,不再上图。

执行下面这两个命令,硬盘加入系统raid,恢复原设置:
mdadm /dev/md9 --re-add /dev/sdc1
mdadm /dev/md13 --re-add /dev/sdc4


游客,如果您要查看本帖隐藏内容请回复









补充内容 (2019-9-14 18:18):
假如你想检查你的硬盘sdc是否处于休眠状态,可用命令检查:  hdparm -C /dev/sdc。如果显示idle/active, 硬盘没有休眠。 如果显示standby, 那么说明硬盘处于休眠状态。

补充内容 (2019-10-21 12:11):
对于4盘的NAS,假如你的第一个硬盘是固态硬盘, 如果想照搬我的教程,请将我教程里面的sdc, sdd, sde分别改为sdb, sdc, sdd.

补充内容 (2019-10-22 21:55):
如何恢复默认设置:

1 控制台 ->硬件->一般设置:启动时运行用户自定义的进程前面的勾取消,然后点下面的应用。

2 用vi或其它工具编辑 /etc/config/crontab,删除增加的两行计划任务。
15 08 * * * /share/homes/admin/rebuild_internal_raid.sh
30 08 * * * /share/homes/admin/disconnect_internal_raid.sh

3 重启。

补充内容 (2019-12-12 11:03):
原文也将硬盘的交换区关闭,重新建立了交换文件,使用交换文件做缓存,我没有改变交换区硬盘也能独立休眠,所以我认为这一步不是特别有必要。如果有人想改变交换区,请查看原文自行修改。

补充内容 (2020-2-4 08:19):
如果对分区不明白的网友,可以参考这篇文章。https://post.smzdm.com/p/301806/

补充内容 (2020-2-19 23:13):
vi 编辑命令的简单说明:
先输入i,进入编辑模式,在编辑模式可以将我的内容复制粘贴,按ESC,退出输入模式,切换到命令模式,然后按 :wq , 保存退出。
当然也可以有其它工具编辑

点评

确实是有效的。大家可以试试。 但有说法是休眠会导致硬盘寿命减少(频繁启停)我个人不太认可这种说法。  发表于 2020-3-11 08:26

评分

参与人数 1贡献 +1 收起 理由
wshuaity + 1 很给力!

查看全部评分

「真诚赞赏,手留余香」
那是云论坛 - 国内知名的NAS交流平台
http://www.nasyun.com
分享淘帖
回复 印象

使用道具

UFO

0

精华

19

回帖

1440

积分

发烧玩家

Rank: 2

云币
0
贡献
14
活跃
1360
精华
0
UFO 发表于 2019-8-23 23:34 来自 中国广东广州
4.4.1硬盘无法休眠,重新降级4.3.6硬盘依然无法休眠。只能重新做系统了,另外4.4.1权限管理有bug,根本无法实现权限管理。吃了巨亏。。。。。

点评

我就用的4.4.1版本,现在我用这个方法实现了休眠。我以前用的4.3.X的版本也不能休眠,即使休眠,也会唤醒。  详情 回复 发表于 2019-8-23 23:50
回复 支持 反对 印象

使用道具 举报

0

精华

22

回帖

501

积分

入门用户

Rank: 1

云币
0
贡献
6
活跃
459
精华
0
dandelion 发表于 2019-8-23 23:50 来自 中国浙江杭州
UFO 发表于 2019-8-23 23:34
4.4.1硬盘无法休眠,重新降级4.3.6硬盘依然无法休眠。只能重新做系统了,另外4.4.1权限管理有bug,根本无法 ...

我就用的4.4.1版本,现在我用这个方法实现了休眠。我以前用的4.3.X的版本也不能休眠,即使休眠,也会唤醒。

点评

UFO
另外问一下,你的硬盘休眠是如何识别的,我之前硬盘休眠是硬盘灯亮,但是前面那个信息灯熄灭,圈圈里有个i的灯熄灭  详情 回复 发表于 2019-8-24 22:05
UFO
4.4.1版本权限设置也有bugety,启用高级权限设置后,对子文件夹的权限就乱了。。。。我需要用到权限,降级到了4.3.6,之后container station 又挂了,重新安装都不行,想重做系统,结果无法实现。。。。  详情 回复 发表于 2019-8-24 21:11
回复 支持 反对 印象

使用道具 举报

UFO

0

精华

19

回帖

1440

积分

发烧玩家

Rank: 2

云币
0
贡献
14
活跃
1360
精华
0
UFO 发表于 2019-8-24 21:11 来自 中国广东广州
dandelion 发表于 2019-8-23 23:50
我就用的4.4.1版本,现在我用这个方法实现了休眠。我以前用的4.3.X的版本也不能休眠,即使休眠,也会唤醒 ...

4.4.1版本权限设置也有bugety,启用高级权限设置后,对子文件夹的权限就乱了。。。。我需要用到权限,降级到了4.3.6,之后container station 又挂了,重新安装都不行,想重做系统,结果无法实现。。。。
回复 支持 0 反对 1 印象

使用道具 举报

UFO

0

精华

19

回帖

1440

积分

发烧玩家

Rank: 2

云币
0
贡献
14
活跃
1360
精华
0
UFO 发表于 2019-8-24 22:05 来自 中国广东广州
dandelion 发表于 2019-8-23 23:50
我就用的4.4.1版本,现在我用这个方法实现了休眠。我以前用的4.3.X的版本也不能休眠,即使休眠,也会唤醒 ...

另外问一下,你的硬盘休眠是如何识别的,我之前硬盘休眠是硬盘灯亮,但是前面那个信息灯熄灭,圈圈里有个i的灯熄灭

点评

我把nas电源插头插在功率测定仪上,用功率检测。我的nas接2个ssd,没有休眠,3个hdd,设为休眠。平常nas功耗12-16瓦之间波动,如果我用电脑访问其中一个hdd,功耗马上跳到20瓦左右,hdd的功耗6瓦左右。我停止访问硬  详情 回复 发表于 2019-8-25 11:16
回复 支持 反对 印象

使用道具 举报

0

精华

22

回帖

501

积分

入门用户

Rank: 1

云币
0
贡献
6
活跃
459
精华
0
dandelion 发表于 2019-8-25 11:16 来自 中国浙江杭州
UFO 发表于 2019-8-24 22:05
另外问一下,你的硬盘休眠是如何识别的,我之前硬盘休眠是硬盘灯亮,但是前面那个信息灯熄灭,圈圈里有个 ...

我把nas电源插头插在功率测定仪上,用功率检测。我的nas接2个ssd,没有休眠,3个hdd,设为休眠。平常nas功耗12-16瓦之间波动,如果我用电脑访问其中一个hdd,功耗马上跳到20瓦左右,hdd的功耗6瓦左右。我停止访问硬盘。空闲5分钟(我设了5分钟休眠)后,功耗又变为15瓦。证明这个hdd休眠了。

硬盘指示灯常亮不闪,表示没有数据访问,处于空闲时期,不表示休眠。没有办法知道硬盘是否休眠

点评

UFO
是硬盘指示灯前面的那个状态灯,一个圈圈,里面是i  详情 回复 发表于 2019-8-28 10:39
回复 支持 1 反对 0 印象

使用道具 举报

0

精华

105

回帖

4762

积分

搞机大神

Rank: 3Rank: 3

云币
0
贡献
538
活跃
2019
精华
0
cjmlao5 发表于 2019-8-27 16:59 来自 中国天津
技术贴,前天关机了,等规划好新到的10t盘我要试一下,先支持感谢下
回复 支持 反对 印象

使用道具 举报

UFO

0

精华

19

回帖

1440

积分

发烧玩家

Rank: 2

云币
0
贡献
14
活跃
1360
精华
0
UFO 发表于 2019-8-28 10:39 来自 中国广东广州
dandelion 发表于 2019-8-25 11:16
我把nas电源插头插在功率测定仪上,用功率检测。我的nas接2个ssd,没有休眠,3个hdd,设为休眠。平常nas ...

是硬盘指示灯前面的那个状态灯,一个圈圈,里面是i

点评

正如我文章一开始说的,威联通的nas只能所有硬盘整体休眠。只有所有硬盘处于休眠状态的时候,系统状态灯灭,硬盘灯常亮。我这篇文章讨论的是让硬盘独立休眠,所以用状态灯没法显示。除了用功率测定仪的办法检查某个  详情 回复 发表于 2019-8-28 12:37
回复 支持 反对 印象

使用道具 举报

0

精华

22

回帖

501

积分

入门用户

Rank: 1

云币
0
贡献
6
活跃
459
精华
0
dandelion 发表于 2019-8-28 12:37 来自 中国浙江杭州
UFO 发表于 2019-8-28 10:39
是硬盘指示灯前面的那个状态灯,一个圈圈,里面是i

正如我文章一开始说的,威联通的nas只能所有硬盘整体休眠。只有所有硬盘处于休眠状态的时候,系统状态灯灭,硬盘灯常亮。我这篇文章讨论的是让硬盘独立休眠,所以用状态灯没法显示。除了用功率测定仪的办法检查某个硬盘是否休眠外,还可以用命令查看: hdparm -C /dev/sdc
回复 支持 反对 印象

使用道具 举报

0

精华

18

回帖

119

积分

入门用户

Rank: 1

云币
0
贡献
0
活跃
110
精华
0
yyzq315 发表于 2019-8-29 17:00 来自 中国甘肃兰州
非常好的解决办法,最近也在找群晖硬盘休眠被唤醒的原因,观察日志好几天,发现群晖也是这个原因,奈何是个LINUX小白
回复 支持 反对 印象

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关于作者

dandelion

入门用户

  • 主题

    2

  • 帖子

    24

  • 关注者

    15

etsme
快速回复 返回列表 搜索 官方QQ群
懒人地图| 手机版|小黑屋| 智能生活 , 上那是云 |闽ICP备2020018196号-1 |网站地图