事情是這樣的,今年5月我寫了一篇文章講到我那台在2011年中購買的Mac mini出現Thunderbolt埠故障的問題;當時我認為這是因為把作業系統更新到Mac OS 10.9 (Mavericks)所導致,後來我又把作業系統升級為Mac OS 10.10 (Yosemite),以閃避不再繼續支援更多應用程式的問題(例如AgileBits的1Password應用程式,還有想把Mac版Microsoft Office 2008升級到2016版,後者最小需求是Yosemite版本)。

作業系統的升級十分順暢,至少在這個特定系統以及我辦公室另外兩台Mac電腦(2011年中推出的13吋MacBook Air,以及2010年中推出的13吋MacBook Pro)是如此;在完成升級之後,我因為一種預感而決定再次嘗試使用Thunderbolt埠。

就像是我在上述那篇文章裡寫的,我已經被迫放棄使用Western Digital Thunderbolt Duo儲存系統,改用兩台Seagate的GoFlex Desk外接硬碟,透過Firewire 800纜線與我的Mac裝置配對(還有那台Mac mini)。將Seagate硬碟斷線、脫離Firewire埠之後,我讓它們改以Thunderbolt連線,先用一台跟Mac mini連結。

那台Mac專用GoFlex Desk順利啟動,並在Mac mini數次的休眠-喚醒以及重開機循環中淡定地存活下來;透過第二個Thunderbolt 埠以DisplayPort-HDMI轉接器連結的LCD顯示器也是如此。於是我又把第二台Seagate連上,結果也很順;因為感覺手氣不錯,我決定拔掉那兩台Seagate讓Western Digital Thunderbolt Duo重出江湖…一切果然非常順利!

顯然我想得沒錯,Mavericks版本作業系統是導致Mac出問題的原因,那些問題在升級到Yosemite版本之後都解決了...但或許不是?30年工程師生涯為我帶來的好處之一,就是對於發展太順利的事情會出現健康的懷疑論。

於是我仔細檢視我的設定,發現我現在是使用Apple的0.5公尺Thunderbolt纜線連結電腦與外接硬碟,而之前是用一條2公尺的線;於是我又拔掉0.5公尺線換回那條2公尺的,所有的老問題又都出現了!

這下子我真的無法確定問題根源所在…那條2公尺線我用了很多年而且常常熱插拔,運作都很正常,可見得它的問題「不嚴重」,只會在系統經歷休眠-喚醒或重開機的程序後才會發生功能故障;而因為Thunderbolt銅纜線的規格可支援到3公尺,長度應該不是元凶。在寫這篇文章的時候我突然想起來,Thunderbolt銅線的連接器內含主動電路,或許這就是發生故障問題的原因所在。

清除軟體設定也是一個方法

接著來說「清除設定」;我老婆最近在她的兩台筆記型電腦上混合安裝Mac OS 10.7 (Lion)以及10.8 (Mountain Lion)兩種作業系統,她也想裝Mac版Office 2016,特別是因為它對原生Google日曆以及聯絡人的支援。

我先處理她那台2013年中的11吋MacBook Air,那時執行中的作業系統是Mountain Lion版本;我執行了Yosemite的升級安裝程式,系統因此重新啟動並運作…但在升級過程半途,我卻看到以下的畫面(不好意思有點模糊…而且因為個人隱私,我遮蔽了產品序號):

20170920_ITporblem_NT01P1

再度嘗試重新開機,還是跳到自動更新OS的畫面而且出現相同結果,該系統的HFS+分層檔案系統看來發生異常;還好,在執行復原模式(Recovery Mode)之後,我還是透過Time Machine程式恢復了完整的系統功能,但也因此卡在Mountain Lion版本動彈不得。

去Google了PPM002參考代碼資訊,看到有人也在線上討論升級Mac OS遇到的問題;顯然從Yosemite版本開始,Apple已經在升級程序中採取了更嚴格的硬體檢查…因此很不幸的,如果在軟體升級跑到一半的時候測試失敗,系統就會整個掛掉。

有很多也遇過PPM002錯誤代碼的網友表示,他們先暫時換掉原有的Apple原廠配備DRAM、以第三方廠商的模組升級Mac電腦記憶體,之後就能解決問題並順利完成OS升級;可惜這種方法不適合我,那台MacBook Air的原廠記憶體是直接焊在主機板上、不能替換,而且早就過了保固期一年多,維修費用恐怕很高昂。

於是我打電話給Apple官方支援中心,想爭取一下延長保固;那時突然冒出一個想法:如果我嘗試重新設定Mac的系統管理控制器(system management controller)跟非揮發性記憶體呢?以前我曾經在其他系統這樣做過,因此緩解了不同的故障問題;我沒聽過有人用這種方法解決這個問題,電話那頭的Apple技術支援代表也沒聽過,但她認為值得一試,反正無論結果如何,情況也不會更糟。

所以我依序進行重新設定,然後執行硬體診斷…先前遇到的記憶體錯誤沒有再出現,而且我也重新執行了升級Yosemite,一切順利!

這讓我想到一部很偉大(至少對工程師來說)的電視劇《IT Crowd》(編按:中譯為《IT狂人》,是英國Channel 4製播的情境喜劇),常出現的一個畫面就是劇中某個主角(編按:是某個公司IT部門的三個成員)對電話那頭的人說:「你試過關機再重開嗎?」

雖然不能完全適合以上敘述的兩種情況(當然以前我也遇過好幾次只要關機重開就解決的問題),但或許我們可以照樣造句,當有人遇到以上的問題時,可以先問:「你試過拔掉電線換一條嗎?」還有「你試過清除軟體設定嗎?」在結論出你可能只有唯一(而且昂貴)的解決方案選項之前,先確定你是否試過各種更基本的選項;結果或許會讓你驚訝,就像我一樣!

編譯:Judith Cheng

(參考原文:Misbehaving hardware? Try swapping cabling or clearing settings,Brian Dipert)