詞彙表/你會看到的程序

syspolicyd

簡短回答

syspolicyd是macOS的系統原則程序。它決定軟體是否能被安裝、載入或執行,系統的其他部分會向它詢問這個判定,例如在你打開App時。

syspolicyd是macOS在App執行前加以檢查的機制之一,包括你打開從網際網路下載的App時會看到的Gatekeeper檢查。它負責維護存放系統原則的資料庫。

在你打開App、安裝軟體或解壓縮下載的檔案時,它短暫活動一下是正常的。

syspolicyd為什麼在使用CPU

它正在檢查程式碼。第一次打開大型App、安裝軟體,或解壓縮含有大量可執行檔的壓縮檔,都會讓它需要檢查的東西變多。開發者在建置和執行大量新的二進位檔時,可能會看到更多活動。

該怎麼處理

通常什麼都不用做。等安裝或第一次啟動完成,活動就應該會停止。不要試圖停用它或它執行的安全檢查。如果沒在做任何事,它卻長時間很忙,請重新啟動Mac。

syspolicyd什麼時候會忙

syspolicyd所支援的Apple功能會檢查App的簽署,對於下載的軟體,還會檢查是否經過公證。也就是說,它的活動會跟著來到你Mac上的程式碼出現。

你下載的檔案會帶有隔離標記,告訴macOS在第一次打開時要檢查它們。App一旦檢查過並獲准執行,之後啟動就不需要同樣的首次審查,所以活動都集中在新軟體出現的時候。

  • 第一次打開從網際網路下載的App。
  • 安裝或更新App,包括包含大量元件的大型App。
  • 解開含有App或命令列工具的壓縮檔或磁碟映像檔。
  • 會產生並執行大量新執行檔的開發工作,例如建置和安裝套件。

如何從「終端機」檢查Gatekeeper

有兩個唯讀指令可以顯示系統原則的判斷,不會更動任何東西。在打開某個App之前,想知道它是否已簽署並經過公證時,這兩個指令很好用。

  1. 執行spctl --status。Gatekeeper檢查開啟時(這是正常狀態),它會顯示assessments enabled。
  2. 對某個App的路徑執行spctl --assess -vv /Applications/AppName.app。輸出會說明該App是否為accepted,並有一行source=,例如Notarized Developer ID或Apple System,告訴你原因。
  3. 想查看下載的檔案是否仍帶有隔離標記,就執行xattr -l ~/Downloads/FileName。有com.apple.quarantine項目,表示macOS會在第一次打開它時進行檢查。

不要做的事

不要為了省CPU而關閉Gatekeeper、停用「系統完整性保護」或結束syspolicyd。這些更動會拿掉阻止不受信任軟體執行的檢查,而且syspolicyd反正也不會一直停著。

也不要用xattr拿掉下載檔案的隔離標記來跳過首次啟動檢查。正是這個標記讓macOS在執行來自網際網路的軟體之前先檢查它,拿掉它會繞過這項檢查,日常使用時Mac也不會因此變快。

如果macOS阻擋了你信任的App,請用官方支援的方式打開:試著打開一次後,前往蘋果選單>「系統設定」>「隱私權與安全性」,向下捲動,然後按一下「強制打開」。該App會被存為例外,之後就能正常打開。

syspolicyd的正常用量與異常情況

正常:打開、安裝或解開軟體時,CPU短暫活動,工作完成後就結束。開發者會看到更多這類活動,因為工具或App的每次新建置都是可能需要檢查的新程式碼。

值得檢查:你沒有在安裝或打開任何東西,syspolicyd卻長時間很忙。看看是否有東西在背景安裝,例如某個App的更新程式,並讓它完成。如果什麼都沒在進行,活動卻還在繼續,就將Mac重新開機。

大家常問的問題

Mac上的syspolicyd是什麼?

它是系統原則常駐程式。它決定軟體能否被安裝或執行,並支援macOS在打開App前進行的檢查。

syspolicyd是惡意軟體嗎?

不是。它是macOS安全機制的一部分。

應該停用syspolicyd嗎?

不應該。它執行的檢查能保護你的Mac不受不可信任的軟體侵害。讓目前的活動完成;如果它似乎卡住了,就重新啟動。

macOS更新後syspolicyd為什麼在用CPU?

更新之後常常緊接著App更新和App的首次啟動,每一項都可能涉及原則檢查。這些工作完成後,活動就會平靜下來。

syspolicyd和Gatekeeper是同一個東西嗎?

Gatekeeper是你看得到的功能,syspolicyd則是掌管背後原則的系統程序。macOS的其他部分會詢問syspolicyd軟體能不能執行。

如何打開被macOS阻擋的App?

先試著打開一次,然後前往「系統設定」>「隱私權與安全性」,按一下「強制打開」。只對來源可信的軟體這麼做。

相關詞條

逐步教學:Codex佔用大量CPU。

想找比活動監視器更好的工具?請參閱Mac上最好用的活動監視器替代方案,或瀏覽詞彙表中的所有詞條。