Sharedfilelistd грузит процессор на 100%. Устраняем проблему с зависанием Finder при загрузке macOS

Июль, 26th 2023Рубрика: Apple 1520
Подписаться на комментарии по RSS

sharedfilelistd грузит процессор на 100%

Впервые столкнулся с проблемой, когда после загрузки macOS на компьютере долгое время невозможно ничего делать. Finder попросту игнорирует любые ваши действия, никак не реагируя на нажатия кнопок или клики мышкой.

Складывается ощущение что компьютер просто завис, но двигающийся курсор мыши и запуск ранее активных приложений (если они не были закрыты до перезагрузки) явно намекают на то, что какая-то жизнь в системе всё-таки присутствует.

Под "долгим временем" я подразумеваю от десяти минут до получаса, после чего всё как-то само собой оживает. Причем всё это время Finder "не отвечает", крутя цветное колёсико, боковое меню со списком ресурсов не отображается, а в мониторинге активности системы можно увидеть некий странный процесс (или демон, как было бы правильнее) sharedfilelistd, занимающий более 100% процессорного времени.

Командой top в терминале можно посмотреть список всех активных процессов macOS

На скрине я представил вывод команды top в терминале, где наглядно видно как sharedfilelistd нагружает процессор. В то же самое время macOS показывает чудеса многозадачности, позволяя работать в браузере или иных программах. Главное, чтобы они не затрагивали Finder.

Там же, в терминале можно прибить sharedfilelistd, дав команду kill [идентификатор_процесса] или killall [имя_процесса]:

kill 1128
killall sharedfilelistd

Какую команду использовать kill или killall особой разницы нет, но и результат будет сиюминуютный. При первом же обращении к Finder, процесс Sharedfilelistd появлялся вновь и снова грузил систему на 100%. Стоит ещё отметить, что у другой учетной записи пользователя, находящейся на том же компьютере, аналогичных проблем не наблюдалось.

Что такое "sharedfilelistd" и для чего он нужен?

Простыми словами, sharedfileslistd некий вспомогательный агент (демон), который управляет списками элементов файловой системы вроде последних открытых документов и содержимого боковой панели Finder.

Данные для работы агента sharedfileslistd хранятся в каталоге ~/Library/Application\ Support/com.apple.sharedfilelist/ и для каждой учетной записи пользователя он свой. По всей видимости, в какой-то момент что-то пошло не так и получили то, что получили.

Собственно, чтобы всё снова ожило и заколосилось как надо, можно попробовать удалить данный каталог следующей командой:

rm -rf ~/Library/Application\ Support/com.apple.sharedfilelist/ && killall sharedfilelistd

Однако тут нас ждет разочарование – система заблокирует это действие, выдав следующую ошибку:

operation not permitted

То есть, система нам сообщила, что операция не разрешена. Ничего не поменяется, даже если попытаться выполнить команду от имени суперпользователя (команда `sudo`).

Лечится это довольно просто. Нужно перейти в «Системные настройки» и на вкладке «Конфиденциальность и безопасность» дать разрешение приложению «Терминал» на доступ к диску:

На вкладке «Конфиденциальность и безопасность» даем доступ к диску приложению «Терминал»

Подписывайтесь на канал Яндекс.Дзен и узнавайте первыми о новых материалах, опубликованных на сайте.

Если считаете статью полезной,
не ленитесь ставить лайки и делиться с друзьями.

ваш комментарий будет опубликован после проверки
на указанный адрес будет отправлено письмо с кодом активации. Вы можете настроить собственный профиль и стать активным участником или автором.