Cover2 當Mac OS X開機時出現「Invalid B-tree node size」,就該修復磁碟了。許多Mac使用者很少關機,因為閒置不用讓它進入睡眠模式就好。關不關機其實無啥大礙,但是如果長期使用不正確的關機方式,比如直接按著電源強制關機、或者是拔掉電源插頭,久而久之對系統就容易造成傷害。

這種習慣對系統會造成什麼傷害呢?這就要從頭說起了。我們都常常要求作業系統「跑得快」,求快的方式有很多,積極的利用快取處理就是在硬體效能有限的前提下、積極發揮系統I/O效率的一個捷徑,作業系統裡會有非常多種不同的快取,可能會放在記憶體或者是硬碟的某個區域,重開機、或者一段時間後就會消失不見。

快取本來就不該一直留存在系統裡浪費空間,定時抹除是天經地義的事,但是有些快取資料是非常重要的,比如檔案系統的變更記錄也會儲存在裡面,關機或抹除前如果沒有先經過「同步」動作,很可能就會遺失資訊、造成檔案系統的不正常。

為什麼呢?Mac OS X是使用HFS+檔案系統,只要磁碟區上有任何的變更,就會存成一筆記錄到檔案系統的目錄索引裡,以後當作業系統需要存取檔案時,就會依照這筆索引來按圖索驥。反過來說,如果磁碟區裡的資料產生了變更、記錄卻沒有被儲存到目錄索引裡(比如只存在快取、然後又被抹除了),下次作業系統就沒有辦法找到正確的資料,可能就會造成Kernel Panic或無法開機的慘劇。

現在的作業系統很聰明了,不必像以前Unix還要「sync、sync、shutdown」,只要按照正常程序關機,它就會自動把資料同步好。不過既然事情已經發生了,該如何挽救呢? 如果你還可以進入系統,那麼不妨開啟磁碟工具,選取「修復磁碟」,如果已經無法開機進入桌面,那麼請在重開機時按著「Command+S」,進入單人模式,照著畫面上的指示手動鍵入指令進行修復。

以上兩者都無法成功的話,那麼請先用另外一顆外接硬碟開機、把資料備份出來,再利用第三方的磁碟修復軟體來代勞吧!筆者推薦「DiskWarrior」這套修復工具。

軟體小檔案

DiskWarrior跟一般的磁碟修復工具不同,它會針對磁碟的目錄索引錯誤做修復,而不是像其它工具一樣盲目嚐試、測試磁碟區上的所有資料區段,所以可以比較快速的得到精準結果。DiskWarrior一開始會先對磁碟區進行「聽診」,畫出檔案系統的「心電圖」,最後再針對心電圖上的錯誤部份做處理,修復完成後會列出救援成功的檔案及目錄列表,你就可以一一檢查遺失的檔案是否已經回來。

不過在這裡還是要提醒各位讀者,修復磁碟會有一定風險,建議可以先利用外接硬碟開機,把受損磁碟區內仍然可讀的資料先備份出來比較好。DiskWarrior一套要價99.95元美金,可至官網購買並下載。

檔案系統怎麼修?

▲ 先用磁碟工具修復看看吧!雖然成功率不高,但能從這解決是最方便的。

▲ DiskWarrior的用法很簡單,選擇你要修復的磁碟區後,按下「Graph」是檢視磁碟區的健康情況,「Rebuild」則是重建目錄索引。

使用 Facebook 留言

發表回應

謹慎發言,尊重彼此。按此展開留言規則