天天看點

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軟體都有緩存功能,就是為了減少硬碟讀取次數),是有根據的。

<a href="https://bugs.launchpad.net/ubuntu/+source/acpi-support/+bug/59695">https://bugs.launchpad.net/ubuntu/+source/acpi-support/+bug/59695</a>

<a href="https://wiki.ubuntu.com/danielhahler/bug59695">https://wiki.ubuntu.com/danielhahler/bug59695</a>

都有問題的分析及解決方法。不過是e文滴。一下是官網的wiki的解決方法部分原文。

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:

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

ubuntu對硬碟的“Load/Unload Cycle威脅”分析及官方解決辦法

簡 單的說,就是在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了多少,然後可以估計一下離變成咔咔咔的“拖拉機”還有多久。