Що таке "lsd" процес в OS X і чому він використовує стільки потужності процесора?


30

Я заглянув у меню iStat і помітив, що названий процес lsdспоживає 99% мого ЦП (з 400% на 4 ядра). Я трохи обшукував, але не міг дізнатися, що це, і чому він використовує стільки оброблювальної потужності. Це не Маленький Сніт Демон, як я ніколи цього не встановлював. Хтось ще сказав, що це може бути стартовий Daemon Services, але я вважав, що це процес launchd. Це Daemon Services Launch Services.

Заглядаючи в консоль, я помічаю ці повідомлення під час пошуку 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

Щодо цього повідомлення:

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.

Крім того, моє використання процесора здається дуже переривчастим (чого ніколи раніше не робилося).

Переривчасте використання процесора

Подивившись /usr/libexec, я виявив lsdі помітив, що він створений 17 вересня 2015 року. Чому він такий новий (разом із усім іншим у цьому каталозі)?


3
Будь ласка, не оновлюйте питання у відповідь, замість цього розмістіть відповідь нижче. Інакше функція пошуку та користувачі будуть заплутані.
nohillside

Відповіді:


21

lsd в OS X - це справді LaunchServiceDaemon. startd - це запуск менеджера демонів! Він забезпечує, мабуть, ту ж функцію, що і в iOS. За словами Apple, це забезпечує

підтримка запуску програм та відповідності типів документів до програм. Як результат, розпізнані службами запуску ключі дозволяють вказати бажане середовище виконання для вашого пакетного коду.

Очевидно, що lsd був представлений в OS X 10.11 El Capitan, оскільки я не можу його знайти в старих системах. Остання версія (включена в 10.11.2) повинна мати дату моди 3 грудня 2015 року.


Для усунення несправностей

  • то «LaunchServices: Чи не вдалося зберегти LSD-ідентифікатори файлів в /private/var/db/lsd/com.apple.lsdschemes.plist» проблеми перевірити цей пост:

    Можливо, це не найкращий спосіб, але, здається, я виправив / придушив це повідомлення про помилку. Ось що я зробив:

    cd /private/var/db

    Каталог lsd не існував

    mkdir lsd

    Ще немає радості

    chmod -R 777 /private/var/db/lsd
    (я знаю, я просто відкрив свого гібсона, щоб його зламали)
    touch /private/var/db/lsd/com.apple.lsdschemes.plist

    Здавалося, після цього відходять. Бажаючи зробити ставку на відновлення / перевірку дозволу диска, це буде знову порушено, але не пробували. Якщо я переношу цей файл, це вміст:

    bplist00?

  • 100% використання процесора: / usr / libexec / lsd, використовуючи 100% процесора


Ах, дякую, що очистили це (і я все ще на 10.11.1), я все ще не маю уявлення, навіщо йому потрібно стільки потужності процесора, хоча ...
CraftedCart

Після багатого копання, я думаю, що я, можливо, знайшов додаток, що спричиняє проблему на 100%. Робокрафт. Давайте подивимось, чи працює оновлення, а якщо ні, то доведеться її видалити.
CraftedCart

У мене нормально працює lsdі немає каталогу /private/var/db/lsd- можливо, це червона оселедець із систем старше 10,11? Це все ще робить багато запису на диску з причин, які мені не вдалося час від часу виявити - можливо, це перетворюється на безліч процесорів для систем із спінінг-жорсткими дисками та / або великих файлових систем із значними сховищами даних?
bmike

5

Здається, що lsdзастряє у _LSCreateRegistrationData для певного додатка. Якщо у вас виникли ті самі проблеми, дотримуйтесь інструкцій, наведених нижче.

  1. Відкрийте монітор активності та шукайте lsd
  2. Отримайте ПІД lsdвласності rootкористувача
  3. Відкрийте термінал
  4. Введіть sudo sample PID-HERE(Звичайно, замінивши PID-HERE на PID, який ви отримали на кроці 2)
  5. Якщо ви маєте те саме питання, _LSCreateRegistrationDataу графіку викликів (біля верхньої частини всього виводу) має бути щось про те
  6. Введіть sudo lsof -p PID-HERE

Ви повинні мати змогу розпізнати пакет програм у межах цього виводу. Спробуйте видалити або оновити його і побачити, чи вирішує це питання


2

Я теж виявив, що у мене проблеми з lsd. Здається, що достатньо створити каталог і торкнутися файлу, не було (принаймні в моєму випадку) не поспішати з дозволами, як описано klanomath.

У моєму випадку це зупинило lsd-помилки, але я все ще бачив такі часті помилки:

25 лютого 14:06:07 iMac system_profiler [259]: LaunchServices: Не вдалося відобразити базу даних з результатом -10822, повторна спроба

25 лютого 14:06:07 iMac system_profiler [259]: LaunchServices: отримано XPC_ERROR_CONNECTION_INTERRUPTED при спробі відображення бази даних

25 лютого 14:06:07 iMac com.apple.xpc.launchd [1] (com.nomachine.nxserver): Сервіс працював лише 7 секунд. Відштовхування відштовхується на 3 секунди.

У мене була установка NoMachine, і видаливши це (оскільки я все-таки справді не використовував nxplayer так чи інакше), і ця помилка припинилася.


1

Що працювало для мене, це те, що процесор "sudo xcrun xcscontrol --reset" знизився від 95% до 4%.


Викидає повідомлення про помилку: xcrun: помилка: не вдається знайти утиліту "xcscontrol", не інструмент для розробників чи в PATH
user26732

0

Це частина LaunchServices. Ви можете витягти з нього деяку інформацію (рядки) за допомогою команди strings:

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>

Крім цього, здається, ваша проблема також обговорюється тут .

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.