Qual è il processo "lsd" su OS X e perché utilizza così tanta potenza della CPU?


30

Ho cercato nei menu iStat e ho notato che un processo chiamato lsdconsumava il 99% della mia CPU (fuori dal 400% per 4 core). Ho cercato un po 'in giro, ma non sono riuscito a scoprire di cosa si trattava e perché utilizza così tanta potenza di elaborazione. Non è Little Snitch Daemon, poiché non l'ho mai installato. Qualcun altro ha detto che potrebbe essere Launch Services Daemon, ma ho pensato che lo fosse launchd. È il demone dei servizi di lancio.

Guardando nella console, noto questi messaggi durante la ricerca di 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

Per quanto riguarda questo messaggio:

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

Ho provato a creare un dir chiamato /private/var/db/lsdcome root.

Inoltre, il mio utilizzo della CPU sembra essere molto intermittente (cosa che non aveva mai fatto prima).

Utilizzo intermittente della CPU

Guardando dentro /usr/libexec, ho scoperto lsde notato che è stato creato il 17 settembre 2015. Perché è così nuovo (insieme a tutto il resto in quella directory)?


3
Non aggiornare la domanda con la risposta, pubblica invece una risposta di seguito. Altrimenti sia la funzione di ricerca che gli utenti saranno confusi.
— Nohillside

Risposte:


21

lsd in OS X è davvero LaunchServiceDaemon. launchd è un gestore daemon di lancio! Fornisce probabilmente la stessa funzione di iOS. Secondo Apple fornisce

supporto per l'avvio di app e la corrispondenza dei tipi di documento con le app. Di conseguenza, le chiavi riconosciute da Launch Services consentono di specificare l'ambiente di esecuzione desiderato per il codice in bundle.

Apparentemente è stato introdotto lsd in OS X 10.11 El Capitan perché non lo trovo nei sistemi più vecchi. L'ultima versione (inclusa in 10.11.2) dovrebbe avere la data di modifica 3 dicembre 2015.


Per risolvere i problemi

  • il problema "LaunchServices: Impossibile archiviare il file lsd-identifiers in /private/var/db/lsd/com.apple.lsdschemes.plist" controlla questo post:

    Probabilmente non è il modo migliore, ma mi sembra di aver corretto / soppresso quel messaggio di errore. Questo è quello che ho fatto:

    cd /private/var/db

    la directory lsd non esisteva

    mkdir lsd

    Ancora nessuna gioia

    chmod -R 777 /private/var/db/lsd
    (lo so, ho appena aperto il mio gibson ad essere hackerato)
    touch /private/var/db/lsd/com.apple.lsdschemes.plist

    Sembrava andare via dopo quello. Disposto a scommettere un controllo del disco / controllo delle autorizzazioni lo romperà di nuovo, ma non ci ho provato. Se eseguo il cat di quel file, il contenuto è il seguente:

    bplist00?

  • il 100% di utilizzo della CPU: / usr / libexec / lsd utilizzando il 100% di CPU


Ah, grazie per averlo chiarito (e sono ancora il 10.11.1) Non ho ancora idea del perché abbia bisogno di così tanta potenza della CPU ...
— CraftedCart

Dopo molte ricerche, penso di aver trovato l'app che causa il problema del 100%. Robocraft. Vediamo se l'aggiornamento funziona e, in caso contrario, dovrò disinstallarlo.
— CraftedCart

Ho una lsddirectory funzionante e nessuna directory /private/var/db/lsdesistente - forse è un'aringa rossa da sistemi più vecchi di 10.11? Fa ancora molta scrittura su disco per motivi che non sono stato in grado di identificare di volta in volta - forse questo si traduce in molta CPU per sistemi con dischi rigidi rotanti e / o file system di grandi dimensioni con archivi di dati significativi?
— bmike

5

Sembra che lsdrimanga bloccato su _LSCreateRegistrationData per una determinata app. Se riscontri lo stesso problema, segui la guida di seguito.

  1. Apri il monitor attività e cerca lsd
  2. Ottieni il PID di lsdproprietà rootdell'utente
  3. Apri il terminale
  4. Invio sudo sample PID-HERE(ovviamente, sostituendo PID-HERE con il PID ottenuto al passaggio 2)
  5. Se stai riscontrando lo stesso problema, dovrebbe esserci qualcosa _LSCreateRegistrationDatanel grafico delle chiamate (nella parte superiore dell'intero output)
  6. accedere sudo lsof -p PID-HERE

Dovresti essere in grado di riconoscere un pacchetto di app all'interno di tale output. Prova a eliminarlo o aggiornarlo e vedere se risolve il problema


2

Anch'io ho scoperto di avere problemi con lsd. Sembra che sia sufficiente creare la directory e toccare il file, non c'era (almeno nel mio caso) nessuna necessità di giocherellare con le autorizzazioni come descritto da klanomath.

Nel mio caso, ha fermato gli errori lsd, ma continuavo a vedere errori frequenti come questi:

25 febbraio 14:06:07 iMac system_profiler [259]: LaunchServices: mappatura del database non riuscita con risultato -10822, nuovo tentativo

25 febbraio 14:06:07 iMac system_profiler [259]: LaunchServices: ricevuto XPC_ERROR_CONNECTION_INTERRUPTED durante il tentativo di mappare il database

25 febbraio 14:06:07 iMac com.apple.xpc.launchd [1] (com.nomachine.nxserver): il servizio è stato eseguito solo per 7 secondi. Spingendo respawn fuori di 3 secondi.

Ho avuto un'installazione di NoMachine e l'eliminazione (dal momento che ho sempre usato nxplayer), anche quell'errore si è fermato.


1

Ciò che ha funzionato per me è stato che "sudo xcrun xcscontrol --reset" cpu è passato dal pulsare del 95% a circa il 4%.


Genera un messaggio di errore: xcrun: errore: impossibile trovare l'utilità "xcscontrol", non uno strumento di sviluppo o in PERCORSO
— user26732

0

Fa parte di LaunchServices. Puoi estrarne alcune informazioni (stringhe) con il comando stringhe:

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>

A parte questo, sembra che anche il tuo problema venga discusso qui .

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.