最近忽然發現磁盤存在大量寫入,打開任務管理器一看,發現一個叫做“lsd”的進程持續佔用 20% – 40% 中央處理器,很奇怪。
經過一番查詢,得知這個進程是 macOS 和 iOS 上的系統進程,全名叫做“Launch Service Daemon”,負責所有 App 文件類型關聯和啟動。但它的數據庫有時候會損壞,這就導致它頻繁讀取和驗證某些數據。
一旦它的數據庫損壞,你就會遇到 lsd 佔用 100% 中央處理器,或者大量內存,甚至是巨大的磁盤寫入……
總之,我們可以讓它重新註冊所有必要的文件,重建數據庫即可: 找 /系統/圖書館/構架 -類型 F -name "lsregister" -執行 {} -殺 -種子 - - [R \;
或者,使用這個命令: /系統/圖書館/構架/核心服務.構架/構架/LaunchServices.構架/支援/lsregister -殺 - - [R -域 本地 -域 系統 -域 用戶 這個和上一句理論上執行相同任務,只是前者搜索 lsregister 而後者直接給出了路徑。
參考文獻:
https://discussions.apple.com/thread/8365107?answerId=33313731022#33313731022
https://discussions.apple.com/thread/250050422?answerId=250085966022#250085966022
本文由 落格博客 原創撰寫:落格博客 » /usr/libexec/lsd 佔用 100% CPU 的解決辦法
轉載請保留出處和原文鏈接:https://www.logcg.com/archives/3382.html
是! 第一個命令, 以 root 身分運行. lsd 不再使用 100% cpu 和我的 Mac 並不太慢.
sudo find /System/Library/Frameworks -type f -name “lsregister” -執行 {} -殺死種子 \;
那這個數據庫的重建過程大概要多久?我是因為有些文件的預覽不正常用的這個命令,現在預覽正常了,但是一直在後台佔用cpu,已經一天了,寫入量46G,
這兩個命令是不一樣的,我試了一下上面的命令,現在不佔用cpu了。看來後面多加的參數反而會出問題,也可能是macOS版本的問題吧,我看網上最早給出下面那個命令的時候好像是09年,,,
竟然不同?我去看看。
這命令是很老的了,我好像當是也是兩個都用過吧……忘卻了,總之搞定了就好。
又出問題了,現在用那個參數少的命令解決了lsd佔用cpu的問題,但是qlmarkdown的預覽還是不行;參數多的命令可以解決預覽問題(這個issue https://github.com/toland/qlmarkdown/issues/39),但是lsd一直占cpu,我醉了😭
那種插件,我之前用了個大全的,後來也不能用了……現在索性就不用了😂
破案了,是qlmarkdown和堅果雲的finder插件衝突了,,,卸載堅果雲之後一切正常。(愚蠢的堅果店,,,)