最近忽然发现磁盘存在大量写入,打开任务管理器一看,发现一个叫做“lsd”的进程持续占用 20% – 40% CPU,很奇怪。
经过一番查询,得知这个进程是 macOS 和 iOS 上的系统进程,全名叫做“Launch Service Daemon”,负责所有 App 文件类型关联和启动。但它的数据库有时候会损坏,这就导致它频繁读取和验证某些数据。
一旦它的数据库损坏,你就会遇到 lsd 占用 100% CPU,或者大量内存,甚至是巨大的磁盘写入……
总之,我们可以让它重新注册所有必要的文件,重建数据库即可: find /System/Library/Frameworks -type f -name "lsregister" -exec {} -kill -seed -r \;
或者,使用这个命令: /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -kill -r -domain local -domain system -domain user 这个和上一句理论上执行相同任务,只是前者搜索 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