指南/磁碟無法退出
Mac無法退出外接磁碟機?如何找出是什麼在使用它
簡短回答
只要有任何程序在磁碟上打開了檔案或檔案夾,磁碟就無法退出。結束用過它的App,關閉停在它檔案夾中的「終端機」視窗,然後再試一次。如果還是不行,在「終端機」中執行sudo lsof /Volumes/NAME,列出佔用它的每個程序,然後結束它們。Spotlight和時光機會自己放手,通常在一分鐘內。「強制退出」是最後的手段,因為正在寫入的檔案可能會損壞。Vitals是一款Mac活動監視器和程序檢查器,會列出每個磁碟和在上面佔用檔案的App,你確認後,它的「結束並退出」會結束它們並退出磁碟。
如何用「終端機」找出是什麼在使用磁碟
- 01 打開「終端機」,它位於「應用程式」→「工具程式」。
- 02 輸入
sudo lsof和一個空格,然後從Finder把磁碟拖到視窗中填入它的路徑,再按下Return。 - 03 輸入你的密碼。每一行是一個打開的檔案:第一欄是程序,第二欄是它的PID,最後一欄是檔案。
- 04 結束列表中的每個App。對於沒有視窗的程序,執行
kill <PID>並加上它的PID。 - 05 在Finder中再次退出磁碟,或執行
diskutil eject並加上同一個路徑。
如果列表是空的,磁碟卻還是退不出來,請等一分鐘再試:macOS可能正在完成寫入。mdutil -s加上磁碟的路徑,可以看出Spotlight是否開啟了對它的索引。
macOS拒絕退出正在使用的磁碟,是因為在程式使用中卸載它,可能會讓程式正在寫入的內容遺失。Finder中的訊息有時會寫出App名稱,但常常不會。下表列出常見的佔用者,以及讓它們放手的方法。
是什麼讓磁碟無法退出
| 佔用者 | 如何判斷 | 如何讓它放手 |
|---|---|---|
| 打開了文件的App | App出現在lsof列表中,或Finder寫出了它的名稱 | 關閉文件,或結束App |
| 「終端機」視窗 | 列表中有zsh之類的shell,FD欄位顯示cwd | 在那個視窗中執行cd ~,或關閉它 |
| Spotlight | 列表中有mds或mds_stores | 等待,或在「系統設定」→「Spotlight」→「搜尋隱私權」中加入該磁碟 |
| 時光機 | 列表中有backupd,或選單列顯示正在備份 | 等備份完成,或選擇「略過此備份」 |
| 快速查看或「預覽程式」 | 列表中有QuickLookUIService或Preview | 關閉預覽,或結束「預覽程式」 |
| 磁碟上有「照片」或「音樂」資料庫 | 列表中有Photos、photolibraryd或Music | 結束App,並給它的輔助程式幾秒鐘 |
| 從這個磁碟執行的App | App本身的路徑在這個磁碟上 | 結束App |
退出訊息是什麼意思
Finder會顯示兩種訊息之一。「磁碟未退出,因為有一或多個程式可能正在使用它」表示有某個程序在磁碟上打開了東西,而macOS沒說是哪個。知道是哪個App時,訊息會改為寫出它的名稱。兩種情況下,「再試一次」都是安全的,「強制退出」則不管打開了什麼都會卸載磁碟。
「強制退出」安全嗎?
「強制退出」會在程式還在使用時卸載磁碟。只是在讀取的檔案不會受損。正在寫入的檔案可能會不完整,打開中的「照片」、「音樂」或Final Cut資料庫,下次打開時可能需要修復。先找出佔用者,等它怎麼都不肯結束時再用,不要提早用。
用「磁碟工具程式」或diskutil退出
「磁碟工具程式」的「卸載」和「退出」遵循和Finder一樣的規則,有東西佔用磁碟時也會同樣失敗。在「終端機」中,diskutil eject /Volumes/NAME會退出磁碟,diskutil unmountDisk force /Volumes/NAME則會強制退出,風險和「強制退出」一樣。
看起來沒有東西在使用它時
登出再登入,這會結束你所有的App和輔助程式,然後再退出。如果這樣可行,就表示是某個背景輔助程式佔用了磁碟。如果還是不行,就將Mac關機,關機後再拔下磁碟:關機會安全地卸載每個磁碟。
如何避免這種情況
大多數退不出來的情況,都來自同樣幾個習慣。
- 退出磁碟前,先結束在上面打開過檔案的App
- 別讓「終端機」視窗停在磁碟的檔案夾中,或先關閉它們
- 如果你從不搜尋這個磁碟,就把它加入Spotlight的「搜尋隱私權」
- 拔下時光機備份磁碟前,先等備份完成
Vitals多了什麼
Vitals會指出是什麼佔用了磁碟,並替你退出它。
- 「開發者」標籤頁中的「打開的檔案」:每個磁碟上打開了幾個檔案,以及「已使用」或「可以退出」
- 磁碟底下是佔用它的每個App和程式,附上它工作所在的檔案夾和打開的檔案
- 「結束並退出」:Vitals會列出App、詢問你,像⌘Q那樣結束它們,然後退出磁碟
- Spotlight和時光機依正在做的事標示,在它們放手期間會再試一次
小提醒
- Vitals不會強制退出。如果有App不肯結束,它會說明是哪個,並讓磁碟保持裝載。
- 沒有「完整系統指標」時,macOS自己的程序所打開的檔案不會列出,Vitals會說明略過了幾個。
- 「打開的檔案」在視窗中,不在選單列下拉式面板中。
大家常問的問題
為什麼我的Mac說磁碟未退出,因為有一或多個程式可能正在使用它?
還有程序在磁碟上打開了檔案或檔案夾。可能是某個App、「終端機」視窗、Spotlight或時光機。執行sudo lsof /Volumes/NAME就能看出是哪個。
如何在Mac上找出是哪個程式在使用我的外接磁碟機?
在「終端機」中執行sudo lsof /Volumes/NAME。每一行是一個程序,以及它在磁碟上打開的一個檔案。Vitals會在「打開的檔案」中依App顯示同樣的內容。
在Mac上強制退出磁碟安全嗎?
只有在沒有東西寫入時才安全。「強制退出」可能會讓檔案不完整,或讓資料庫需要修復。先找出佔用者並結束它。
我可以直接拔掉磁碟機嗎?
裝載中時不行。macOS可能還在寫入,磁碟之後可能需要修復。先退出它,或先將Mac關機。
為什麼Spotlight在使用我的外接磁碟機?
Spotlight會為磁碟製作索引,好讓它可以被搜尋。它會自己完成。若要永久停止,請在「系統設定」→「Spotlight」→「搜尋隱私權」中加入該磁碟。
有沒有能顯示是什麼讓磁碟無法退出的App?
Vitals就可以。它的「打開的檔案」區塊會列出每個磁碟和在上面佔用檔案的App,「結束並退出」會在確認後結束它們並退出磁碟。
詞彙表中的相關條目
更多指南
- Mac為什麼這麼慢
- 是什麼在消耗Mac的電池
- 哪個App在使用我的CPU或記憶體
- Mac為什麼無法睡眠
- Chrome占用太多記憶體
- 為什麼Mac的風扇這麼吵
- 如何控制Mac的風扇轉速
- 如何釋放Mac的RAM
- Docker使用太多記憶體
- 如何停止Docker容器
- Mac音量混音器
- Cursor使用大量CPU
- Claude Code使用太多記憶體
- Claude Code和Codex的用量上限
- Claude App佔用大量CPU
- Codex佔用大量CPU
- Ollama佔用過多記憶體
- 透過SSH使用Vitals
- 哪個App在使用檔案
- 活動監視器替代方案
- iStat Menus替代方案
- Stats替代方案
- Mac版工作管理員
- 最佳Mac系統監控工具
- 最佳Mac選單列監控工具
- 最佳Mac音量混音器
- Mac上的htop
- Mac版Process Explorer
- 最好的Mac程序監控工具
- 最好的Mac溫度監控工具