CalendarAgent 吃滿 Mac OS X 的 CPU 和 RAM

原本自己最常使用的 Mac 機是去年新買的薄型 iMac 27″,因為記憶體上 16G 所以平常也不會有什麼記憶體不夠的問題。

不過這陣子因為需求,所以把我那台用了五六年的 MacBook Pro 15″ 2008 Late 拿來做工作機,其實從拆掉光碟機換上 SSD 硬碟,且上到 8G 記憶體後,都還是能夠穩穩順順的繼續操,感到神奇滿意,但最近更新了 OS X 10.10 後,常莫名的被吃滿記憶體,影響工作效率,發現犯人就是這隻 CalendarAgent,由於我這台受限於硬體限制,最高記憶體就是只支援到 8G,所以加大 ram 這 solution 也沒用,根據網路上不少人分享的解決法是:

  • 先把「系統偏好設定 -> Internet 帳號」裡頭所有帳號有勾選行事曆的都取消掉。
  • 再來是需要砍掉這兩個檔案,開終端機輸入 sudo rm -rf ~/Library/Calendars/ 跟 sudo rm -rf ~/Library/Preferences/com.apple.iCal.plist 後,再回「Internet 帳號」把原本有勾選行事曆的帳號勾回來即可。

很多人說這方法有效,但我的觀察還是一樣會被吃滿,所以只好繼續找解法,又看到有人分享直接停用掉它:

  • 開終端機輸入 launchctl unload -w /System/Library/LaunchAgents/com.apple.CalendarAgent.plist

這方法有用是有用,但當你需要去改 iCloud 帳號之類目的需要點進去「Internet 帳號」這選項時,系統會進不去不斷轉彩球出 error。

最後實在懶得再花時間找解決法,決定直接寫 crontab 進去每十分鐘就 Kill 掉 CalendarAgent 一次這種土方法,如果有人知道有什麼解法的話麻煩分享給我一下,感恩。

  • 開終端機,crontab -e 後寫進 */10 * * * * killall -9 CalendarAgent >/dev/null 2>&1 後 :wq! 存檔完成,不懂如何寫 crontab 的人自行去 google 有一堆,不知道如何輸入的人去查 vi 指令

發表迴響