使用“磁碟工具程式”和 fsck 解決啟動問題和執行磁碟維護
徵兆
如果您的電腦不能正常啟動,則您可能需要使用磁碟修復工具程式來修復問題。Mac OS X 包括兩套這類工具程式:“磁碟工具程式”和 fsck (命令列工具程式)。即使您的電腦啟動正常,但您想檢查磁碟是否有檔案系統問題,也可以使用這些工具。如果是 Mac OS X 10.4.3 或以上版本,請查看下面「關於 Mac OS X 10.4.3 或以上版本中的即時驗證」。
重要事項:如果您使用的是 Mac OS X 10.4 或以上版本,則您應盡可能使用磁碟工具程式,不要使用 fsck。
在某些情況下,檔案系統錯誤可能會讓電腦無法啟動。在不正確關機、强制重新啟動或電源中斷的情况下,就可能會出現這種情况。 如果您的電腦在啟動時出現下列任何症狀,則可以使用磁碟修復工具程式:
- 您的電腦部分啟動,但是之後在純文字環境下顯示了一個命令列。您可能會看到“file system dirty, run fsck”的訊息。您可以在下面看到所謂的命令列,標示成數字符號 (#),讓您輸入指令。如果您看到此內容,則需要從命令列執行 fsck (請參閱下面的「必要時使用 fsck」)。
- 您的電腦啟動了,但無法進入登入畫面,或可以進入登入畫面,但在您登入後没有載入桌面。不過您可以用單一使用者模式啟動。
如果您的電腦出現上述任何問題,您可以嘗試執行以下方法讓電腦恢復正常開機。如果您找不到電腦隨附的系統光碟,請參閱下面的「使用 fsck」。
受影響的產品
Mac OS X 10.4, Mac OS X 10.3, Mac OS X 10.2, Mac OS X 10.1
解決
嘗試安全開機
如果您使用的是 Mac OS X 10.2 或以上版本,可以用安全模式啟動電腦,該模式包含自動磁碟檢查和修復功能。如果您使用的是 Mac OS X 10.1.5 或較舊版本,請跳到下一節。安全開機會將您的電腦啟動進入安全模式,讓您使用系統軟體的簡化版本成功啟動電腦。請依照下列步驟來執行這個動作:
- 以安全模式啟動。
- 在系統完全啟動之後,正常重新啟動電腦。
如果電腦順利重新啟動,則不需要進行任何其他的疑難排解。如果問題仍然存在,請嘗試使用“磁碟工具程式”。
嘗試磁碟工具程式
- 從 Mac OS X 安裝光碟開機:放入安裝光碟,然後按住 C 鍵並重新啟動電腦。
- 電腦從光碟啟動完成時,從“安裝程式”選單中選擇“磁碟工具程式”(在 Mac OS X 10.4 或以上版本中,您必須先選擇語言)。
重要事項:請勿點按安裝程式第一個畫面中的“繼續”。如果您這麼做,則必須再度從光碟重新啟動才能存取磁碟工具程式。 - 點按“修理工具”標籤頁。
- 點按硬碟圖像左側的顯示三角形,以顯示硬碟卷宗及分割區名稱。
- 選擇您的 Mac OS X 卷宗。
- 點按“修復”。這時磁碟工具程式會檢查並修復磁碟。
秘訣:使用磁碟工具程式驗證或修復啟動卷宗時,請一律從安裝或回復磁片啟動電腦。否則您可能會看到一些磁碟錯誤訊息。
必要時使用 fsck
fsck 是一個命令列工具程式,可以驗證並修復磁碟。如果您可以順利使用安全模式開機,或在從光碟開機時使用磁碟工具程式,則不需要使用 fsck。以下是可能必須使用 fsck 的幾個情況。
- 沒有 Mac OS X 光碟。
- 無法使用光碟機。
- 開機期間按住 Shift 鍵也無法以安全啟動功能開機。
| 秘訣:如果您使用 Mac OS 擴充格式 (日誌式) 格式化卷宗,例如 Mac OS X 10.3 或以上版本,則可能不需要使用 fsck。如果您因故使用這項工具,請小心可能會出現溫和的錯誤訊息。 如果您不確定卷宗的格式化方式,而且無法從 Mac OS X 卷宗開機所以無法得知,請在命令列介面中輸入下列指令,然後按下 Return 鍵:diskutil info / |
如果要使用 fsck,您必須從命令列加以執行。您不是使用滑鼠游標開啟應用程式進行作業,而是必須在提示 (#) 後鍵入文字指令,告訴 fsck 要執行什麼動作。您可以在命令列介面中輸入這類指令,其中兩例就是“終端機”應用程式 (/應用程式/工具程式) 和單一使用者模式。如果要使用 fsck:
- 在單一使用者模式中啟動電腦,以便進入命令列。
注意:若有必要,請按照電腦隨附的「緊急疑難排解手冊」所述執行強制重新啟動。在桌上型電腦上,您可以按下“重置/中斷”按鈕 (如果有的話) 或按住電源按鈕數秒來強制重新啟動。在筆記型電腦上,則同時按下 Command-Control-電源鍵。如果使用這種方法無法重新啟動攜帶型電腦,則可能必須重置電源管理器。 - 在命令列提示後輸入:
/sbin/fsck -fy
- 按 Return 鍵。fsck 會進行五個“階段”,然後傳回磁碟使用和片段的相關資訊。完成後如果沒有發現問題,就會顯示下列訊息:
** The volume (name_of_volume) appears to be OK
如果 fsck 發現問題並且已更改、修復或修正任何項目,則會顯示下列訊息:
***** FILE SYSTEM WAS MODIFIED *****
重要事項:如果出現此訊息,請重複執行您在步驟 2 中所鍵入的 fsck 指令,直到 fsck 告知您卷宗應無問題為止 (一次通過的修復可能會揭露出其他的問題,因此這麼做是正常的)。
- fsck 回報卷宗正常後,在提示後輸入 reboot,然後按下 Return 鍵。
這時您的電腦應該能正常啟動並允許您登入。
其他資訊
關於 Mac OS X 10.4.3 或以上版本中的即時驗證
在 Mac OS X 10.4.3 或以上版本中,您可以在從 Mac OS X 卷宗啟動的同時加以驗證。 這項功能稱為即時驗證,使用方式有三種。
選項 1:從啟動磁碟啟動時以磁碟工具程式驗證磁碟。如果要瞭解如何進行,請參閱本文。請注意,即時驗證功能並不會修復磁碟,因此如果驗證功能發現應該要修復的事項時,請從 Mac OS X 安裝光碟啟動,並按照上述「嘗試磁碟工具程式」的內容使用磁碟工具程式。
選項 2 (進階):使用命令列和命令列工具程式 diskutil。
- 啟動電腦並以管理者的身份登入。
- 開啟終端機 (/應用程式/工具程式)。
- 在指令提示後鍵入下列指令,然後按 Return 鍵:
diskutil verify /
附註:請勿使用此方法來檢查非啟動卷宗。
在磁碟檢查期間,您應會看到諸如以下的訊息:
Could not unmount disk for verification, attempting live verify
Started verify/repair on volume disk0s3 Macintosh HD
Checking HFS Plus volume.
Checking Extents Overflow file.
Checking Catalog file.
Checking multi-linked files.
Checking Catalog hierarchy.
Checking Extended Attributes file.
Checking volume bitmap.
Checking volume information.
The volume Macintosh HD appears to be OK.
Mounting Disk
Verify/repair finished on volume disk0s3 Macintosh HD
選項 3 (進階):使用命令列和 fsck_hfs -l 指令。
- 啟動電腦並以管理者的身份登入。
- 開啟終端機 (/應用程式/工具程式)。
- 在指令提示後輸入下列指令,然後按下 Return 鍵確定檔案系統 ID:
df -hl - 尋找和以下類似的幾行文字:
Filesystem Size Used Avail Capacity Mounted on
/dev/disk0s3 37G 20G 17G 55% /
/dev/disk0s5 37G 37G 641M 98% /Volumes/Storage
- 記下出現在 /dev/ 後面的第一個“磁碟”名稱,例如“disk0s3”。這就是用於啟動卷宗的檔案系統 ID。
- 在指令提示後鍵入下列指令,然後按 Return 鍵:
df -hl - 然後輸入下列指令,其中“disk0s3”是您在步驟 4 中記下的檔案系統 ID,然後按下 Return 鍵:
sudo fsck_hfs -l /dev/disk0s3 - 當提示出現時,輸入您的管理者密碼,然後按下 Return 鍵開始驗證。
- 在磁碟檢查期間,您應該會看到類似以下的訊息:
** /dev/rdisk0s3 (NO WRITE)
** Root file system
** Checking HFS Plus volume.
** Checking Extents Overflow file.
** Checking Catalog file.
** Checking multi-linked files.
** Checking Catalog hierarchy.
** Checking Extended Attributes file.
** Checking volume bitmap.
** Checking volume information.
** The volume Macintosh HD appears to be OK.
進階資訊
如果您對 UNIX 型命令列語法感興趣,請參考以上所用的兩個旗標對 fsck 有何影響:
- -y 旗標:告知 fsck 對於所有關於修復的問題您都想回答“是”。這是最佳的方法,因為對任何問題回答“否”都可能會導致 fsck 停止。在 fsck 完成並提供最終報告之前,您無法確定是否完成所有必要的修復工作。
- -f 旗標:強制 fsck 在整理時檢查“乾淨的”檔案系統。
另請參閱: