P-IT Blog

macOS 應用提示「已損壞」解決方案

在 macOS 中安裝非 App Store 下載的應用程序時,可能會遇到「應用程序已損壞,無法打開」的錯誤提示。這通常不是文件本身損壞,而是 macOS 的 Gatekeeper 安全機制或文件隔離屬性 (Quarantine) 導致的。

本文檔提供兩種解決方案:開啟「任何來源」選項和手動移除隔離屬性。


1. 方案一:開啟「任何來源」

這是最基礎的解決方式,允許系統運行未簽名的應用程序。

操作步驟

  1. 打開終端機 (Terminal)。
  2. 輸入以下命令並回車(需要輸入管理員密碼):
    sudo spctl --master-disable
    
  3. 打開 系統設置 -> 隱私與安全性
  4. 在「安全性」區域,確認已選中 任何來源 (Anywhere)

如果開啟後應用程序仍提示損壞,請執行方案二。


2. 方案二:移除隔離屬性 (推薦)

當 App 被標記為可能不安全時,macOS 會阻止其運行。通過 xattr 命令清除該標記是解決「文件已損壞」問題最有效的方法。

通用命令

sudo xattr -d com.apple.quarantine /path/to/app

操作步驟

  1. 打開終端機。
  2. 輸入 sudo xattr -d com.apple.quarantine (注意命令後有一個空格)。
  3. 將無法打開的應用程序(圖標)從 Finder 拖入終端機窗口,路徑會自動補全。
  4. 按 Enter 鍵執行,輸入密碼。

常見應用示例

以下是一些常見軟件的修復命令示例,直接複製執行即可(前提是應用程序已移動到 /Applications 目錄):

# MindNode
sudo xattr -d com.apple.quarantine /Applications/MindNode.app

# XMind
sudo xattr -d com.apple.quarantine /Applications/XMind.app

# ChatGPT
sudo xattr -d com.apple.quarantine /Applications/ChatGPT.app

# Chromium
sudo xattr -d com.apple.quarantine /Applications/Chromium.app

3. 故障排除

錯誤:No such file or directory

  • 原因:應用程序路徑不正確,或者應用程序名稱包含空格但未轉義。
  • 解決:建議直接將 App 拖入終端機,以確保路徑準確。

錯誤:Permission denied

  • 原因:權限不足。
  • 解決:確保命令前加了 sudo,並正確輸入了管理員密碼。

安全建議

執行上述操作會繞過 macOS 的部分安全檢查。

  • 請確保您下載的應用程序來源可靠(官方網站或可信的第三方分發平台)。
  • 不要對來源不明的 Cracked/破 解 版軟件隨意移除隔離屬性,以免中毒。