ubuntu对硬盘的“Load/Unload Cycle威胁”分析及官方解决办法

由于ubuntu本身的问题,会导致大部分硬盘在使用过程中出现大量Load/Unload Cycle(磁头复位)动作,大概2-3次/分钟。

而 一个硬盘正常使用过程中 ,基本上一天也不会出现几次Load/Unload Cycle,而ubuntu的这个bug会使得本来可以忽略不计的Load/Unload Cycle变成巨大系统隐患,直接缩短硬盘寿命(通常硬盘可以Load/Unload Cycle 600,000次,然后就Over了)。

以上不是危言耸听,这就像早期BT下载软件会加重硬盘磁头负担一样(后来的BT软件都有缓存功能,就是为了减少硬盘读取次数),是有根据的。

https://bugs.launchpad.net/ubuntu/+source/acpi-support/+bug/59695

https://wiki.ubuntu.com/DanielHahler/Bug59695

都有问题的分析及解决方法。不过是e文滴。一下是官网的wiki的解决方法部分原文。

Force hdparm values in acpi hooks

Gilles posted the following workaround: Create a file called 99-fix-park.sh (keep the '99-' and the '.sh', but you can name the file as you like otherwise) with the following two lines:

 #!/bin/sh hdparm -B 254 $HDD

and copy it to the following directories: /etc/acpi/resume.d/ and /etc/acpi/start.d/

( https://launchpad.net/ubuntu/+source/acpi-support/+bug/59695/comments/10)

简 单的说,就是在ubuntu的 etc/acpi/resume.d/ 和 /etc/acpi/start.d/ 目录里放一个 99-fix-park.sh 文件(99-xx-xx.sh,xx部分可以随便写),内容就是那两行了。然后系统启动时会执行这个命令,这样就不会去做不必要的Load/Unload Cycle了,当然一天还是会有几次的,不过足以忽略掉了。

当然,那两个目录都是有权限限定的。

还是进入终端,输入 su ,回车,然后输入root密码,这样就获取了root权限,可以对/etc目录操作。

cd /Desktop进入桌面,然后在桌面建立那个文件,再用 cp xxx(文件名)  /etc/acpi/resume.d/

以及 cp xxx(文件名)  /etc/acpi/start.d/ 把文件复制过去(如果没有root权限,是无法复制的)。

然后可以删掉桌面的那个文件,去etc目录里看看是不是复制过去了。

 

注: 网上有的地方说要复制到三个文件夹,且文件内容不是 hdparm -B 254 $HDD,关于这个,上面两个帖子都有讨论,如果是内容是255(理论最大值),则程序可能不会被执行(硬盘电源管理被关闭),如果复制到三个文件夹而不 是上面两个,那么会有副作用。所以,相信官网的wiki,就按上面办。

然后,要是有时间,可以AIDA等系统硬件查看工具去看看自己的硬盘已经有了多少小时,启动过多少次,已经Load/Unload Cycle了多少,然后可以估计一下离变成咔咔咔的“拖拉机”还有多久。

 

你可能感兴趣的:(ubuntu对硬盘的“Load/Unload Cycle威胁”分析及官方解决办法)