OS X'te “lsd” işlemi nedir ve neden bu kadar çok CPU gücü kullanıyor?


30

İStat Menülerine baktım ve adında bir işlemin lsdişlemcimin% 99'unu (4 çekirdek için% 400'ü tükettiğini) fark ettim . Bir süreliğine aradım, ancak bunun ne olduğunu ve neden bu kadar çok işlem gücü kullandığını bulamadım. Asla kurmadığım için Küçük Snitch Daemon değil. Bir başkası bunun Launch Services Daemon olabileceğini söyledi, ancak bu sürecin böyle olduğunu düşündüm launchd. Fırlatma Servisleri Daemon.

Konsoldan baktıktan sonra, aşağıdakileri ararken şu mesajları fark ediyorum lsd:

22/12/2015 9:36:02.000 a.m. kernel[0]: Sandbox: AssetCacheLocato(400) deny(1) mach-lookup com.apple.lsd.mapdb
22/12/2015 9:36:02.931 a.m. AssetCacheLocatorService[400]: LaunchServices: disconnect event received for service com.apple.lsd.mapdb
22/12/2015 9:36:02.000 a.m. kernel[0]: Sandbox: AssetCacheLocato(400) deny(1) mach-lookup com.apple.lsd.mapdb
22/12/2015 9:36:02.932 a.m. AssetCacheLocatorService[400]: LaunchServices: disconnect event received for service com.apple.lsd.mapdb
22/12/2015 9:36:03.000 a.m. kernel[0]: Sandbox: AssetCacheLocato(400) deny(1) mach-lookup com.apple.lsd.modifydb
22/12/2015 9:36:03.657 a.m. AssetCacheLocatorService[400]: LaunchServices: disconnect event received for service com.apple.lsd.modifydb
22/12/2015 9:39:41.000 a.m. kernel[0]: Sandbox: SpotlightNetHelp(376) deny(1) mach-lookup com.apple.lsd.mapdb
22/12/2015 9:39:41.995 a.m. SpotlightNetHelper[376]: LaunchServices: disconnect event received for service com.apple.lsd.mapdb
22/12/2015 9:39:41.000 a.m. kernel[0]: Sandbox: SpotlightNetHelp(376) deny(1) mach-lookup com.apple.lsd.mapdb
22/12/2015 9:39:41.996 a.m. SpotlightNetHelper[376]: LaunchServices: disconnect event received for service com.apple.lsd.mapdb
22/12/2015 9:39:42.000 a.m. kernel[0]: Sandbox: SpotlightNetHelp(376) deny(1) mach-lookup com.apple.lsd.modifydb
22/12/2015 9:39:42.370 a.m. SpotlightNetHelper[376]: LaunchServices: disconnect event received for service com.apple.lsd.modifydb
22/12/2015 9:39:58.100 a.m. lsd[296]: LaunchServices: Could not store lsd-identifiers file at /private/var/db/lsd/com.apple.lsdschemes.plist
22/12/2015 10:01:15.000 a.m. kernel[0]: process lsd[237] thread 19967 caught burning CPU!; EXC_RESOURCE supressed due to audio playback
22/12/2015 3:34:04.828 p.m. lsd[296]: LaunchServices: Could not store lsd-identifiers file at /private/var/db/lsd/com.apple.lsdschemes.plist
22/12/2015 3:44:07.469 p.m. sudo[45308]:     MyUsername : TTY=ttys000 ; PWD=/private/var/db ; USER=root ; COMMAND=/bin/mkdir lsd
22/12/2015 3:49:09.183 p.m. lsd[306]: LaunchServices: Scheme mapping file does not exist, creating file.
22/12/2015 3:49:09.400 p.m. lsd[306]: LaunchServices: Could not store lsd-identifiers file at /private/var/db/lsd/com.apple.lsdschemes.plist
22/12/2015 3:49:09.407 p.m. lsd[306]: LaunchServices: Could not store lsd-identifiers file at /private/var/db/lsd/com.apple.lsdschemes.plist
22/12/2015 3:49:39.366 p.m. lsd[306]: LaunchServices: Currently 0 installed placeholders: ()
22/12/2015 3:49:50.000 p.m. kernel[0]: Sandbox: AssetCacheLocato(535) deny(1) mach-lookup com.apple.lsd.mapdb
22/12/2015 3:49:50.802 p.m. AssetCacheLocatorService[535]: LaunchServices: disconnect event received for service com.apple.lsd.mapdb
22/12/2015 3:49:51.000 p.m. kernel[0]: Sandbox: AssetCacheLocato(535) deny(1) mach-lookup com.apple.lsd.modifydb
22/12/2015 3:49:51.002 p.m. AssetCacheLocatorService[535]: LaunchServices: disconnect event received for service com.apple.lsd.modifydb
22/12/2015 4:31:57.573 p.m. lsd[306]: LaunchServices: Could not store lsd-identifiers file at /private/var/db/lsd/com.apple.lsdschemes.plist
22/12/2015 4:34:34.075 p.m. lsd[306]: LaunchServices: Could not store lsd-identifiers file at /private/var/db/lsd/com.apple.lsdschemes.plist
22/12/2015 4:34:34.290 p.m. lsd[306]: LaunchServices: Could not store lsd-identifiers file at /private/var/db/lsd/com.apple.lsdschemes.plist
22/12/2015 4:37:20.000 p.m. kernel[0]: process lsd[220] thread 26462 caught burning CPU!; EXC_RESOURCE supressed due to audio playback

Bu mesaj gelince:

22/12/2015 3:44:07.469 p.m. sudo[45308]:     MyUsername : TTY=ttys000 ; PWD=/private/var/db ; USER=root ; COMMAND=/bin/mkdir lsd

/private/var/db/lsdRoot adı verilen bir dir yazmayı denedim .

Ayrıca, CPU kullanımım çok zaman zaman gözüküyor (daha önce hiç yapmadığım).

Aralıklı CPU Kullanımı

Bakarken , 17 Eylül 2015'te yaratıldığını /usr/libexecbuldum lsdve fark ettim. Neden bu kadar yeni (bu dizindeki diğer her şeyle birlikte)?


3
Lütfen soruyu cevapla güncellemeyin, bunun yerine bir cevap gönderin. Aksi halde, hem arama işlevi hem de kullanıcılar karışır.
yokuş yukarı

Yanıtlar:


21

OS X'deki lsd gerçekten LaunchServiceDaemon'dur. launchd bir lansman daemon yöneticisidir! Muhtemelen iOS ile aynı işlevi sağlar. Apple'a göre sağlar

uygulama başlatma ve belge türlerini uygulamalarla eşleştirme desteği. Sonuç olarak, Başlatma Servisleri tarafından tanınan tuşlar, birlikte verilen kodunuz için istenen çalıştırma ortamını belirtmenize olanak sağlar.

lsd , görünüşe göre OS X 10.11 El Capitan'da tanıtıldı çünkü eski sistemlerde bulamıyorum. En son sürüm (10.11.2'ye dahil edilmiştir) 3 Aralık 2015 tarihine kadar sahip olmalıdır.


Sorun gidermek için

  • : "LaunchServices /private/var/db/lsd/com.apple.lsdschemes.plist de lsd-tanımlayıcılar dosyasını depolamak olamazdı" kontrol sorunu bu yazı:

    Muhtemelen en iyi yol değil, ama bu hata mesajını düzelttim / bastırdım. Ben de öyle yaptım:

    cd /private/var/db

    LSD dizini yoktu

    mkdir lsd

    Hala neşe yok

    chmod -R 777 /private/var/db/lsd
    (bilirim az önce soygunculuğumu saldırıya uğrattım)
    touch /private/var/db/lsd/com.apple.lsdschemes.plist

    Bundan sonra uzağa gibiydi. Bir disk onarımı / izin kontrolü için bahis yapmaya istekli olmak onu tekrar kıracak, ancak denemedi. Bu dosyayı kedi ise, içeriği:

    bplist00?

  • % 100 CPU kullanımı: / usr / libexec / lsd% 100 CPU kullanıyor


Ah, bunu temizlediğiniz için teşekkür ederim (ve hala 10.11.1'deyim) Yine de neden bu kadar CPU gücüne ihtiyaç duyduğunu hala bilmiyorum ...
CraftedCart

Kazma işleminden sonra% 100 soruna neden olan uygulamayı bulmuş olabileceğimi düşünüyorum. Robocraft. Güncellemenin işe yarayıp yaramadığını görelim ve olmasa da kaldırmam gerekecek.
CraftedCart

Düzgün çalışan lsdve dizinde bir dizin yok /private/var/db/lsd- belki de 10.11'den daha eski sistemlerden kırmızı bir ringa balığı? Hala zaman zaman belirleyemediğim nedenlerden dolayı birçok disk yazma işi yapıyor - belki de sabit diskli sistemler ve / veya önemli veri depoları olan büyük dosya sistemleri için çok fazla CPU'ya dönüşüyor?
bmike

5

lsdBelli bir uygulama için _LSCreateRegistrationData üzerinde sıkışmış görünüyor . Aynı sorunu yaşıyorsanız, aşağıdaki kılavuzu izleyin.

  1. Etkinlik izleyicisini aç ve ara lsd
  2. Kullanıcının lsdsahip olduğu PID'yi alroot
  3. Terminali aç
  4. Girin sudo sample PID-HERE(Elbette, PID-HERE ürününü 2. adımda kullandığınız PID ile değiştirmek)
  5. Aynı sorunu yaşıyorsanız, _LSCreateRegistrationDataarama grafiğinde (çıktının en üstünde) ilgili bir şeyler olmalı.
  6. Girmek sudo lsof -p PID-HERE

Bu çıktıdaki bir uygulama paketini tanıyabilmelisiniz. Silmeyi veya güncellemeyi deneyin ve sorunu çözüp çözmediğini görün.


2

Ben de lsd ile sorun yaşadığımı keşfettim. Dizini oluşturmak ve dosyaya dokunmak yeterli, sanırım (en azından benim durumumda) klanomath tarafından açıklanan izinlere uymaya gerek yoktu.

Benim durumumda, lsd hatalarını durdurdu, ama ben hala bunun gibi sık sık hatalar görüyordum:

Şub 25 14:06:07 iMac system_profiler [259]: LaunchServices: Veritabanı eşlemesi -10822 sonuçuyla başarısız oldu, yeniden deneniyor

Şub 25 14:06:07 iMac system_profiler [259]: BaşlatmaHizmetleri: XPC_ERROR_CONNECTION_INTERRUPTED veritabanını eşlemeye çalışırken

Şub 25 14:06:07 iMac com.apple.xpc.launchd [1] (com.nomachine.nxserver): Servis sadece 7 saniye çalıştı. 3 saniye sonra tekrar dışarı iterek.

NoMachine yüklemesi vardı ve onu sildim (nxplayer'ı zaten kullanmaya başladığımdan beri), bu hata da durdu.


1

Benim için işe yarayan şey "sudo xcrun xcscontrol --reset" cpu% 95'ten% 4'e kadar olan orandan% 4'e düştü.


Bir hata mesajı atar: xcrun: error: "xcscontrol" yardımcı programını bulamıyor, geliştirici bir araç değil veya
PATH'de

0

LaunchServices'in bir parçası. Strings komutuyla bazı bilgileri (dizeleri) çıkarabilirsiniz:

hostname:~ username$ strings /usr/libexec/lsd
@(#)PROGRAM:lsd  PROJECT:LaunchServices-
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleAllowMixedLocalizations</key>
<true/>
</dict>
</plist>

Bunun dışında, senin sorunun da tartışılıyor görünüyor burada .

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.