7 天前,我在我的 2013 MBA 上升级到了 Yosemite,但 CPU 仍然在 2 个实例上达到最大负荷注册(一个是我的用户名,一个是root用户),一个实例骨髓增生异常综合征以及一个例子码头自安装以来。
当我尝试在 Spotlight 中查找应用程序(例如终端)时,找不到它们。
这正在缩短我的电池寿命 - 以前我可以使用大约 8 个小时,但现在我却只能使用 2 个小时。
答案1
lsregister
使用启动服务数据库注册应用程序和库,并mds
(元数据服务器)为 Spotlight 等元数据 API 的客户端提供服务。
尝试重建启动服务数据库:
/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -domain local -domain system -domain user
或者清除 Spotlight 索引:
sudo mdutil -Ea
您也可以尝试运行sudo lsof|grep lsregister
或sudo lsof|grep mds
查看是否lsregister
在mds
处理某些特定文件时卡住。
答案2
我关闭了 Spotlight(将所有驱动器添加到隐私或按照建议使用命令行)并运行以下命令:
/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -kill -u -域本地-域系统-域用户-域网络
/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -kill -r -域本地-域系统-域用户-域网络
这立即将 CPU 使用率从 100% 降至几乎 0%。到目前为止,它似乎已经解决了我的问题。经过大量研究才最终解决了这个问题。