MDS и mdworker в Mac OS X Lion

8 октября, 11:17

Убил некоторое время на изучение поведения утилиты индексации Spotlight в Mac OS X Lion.

Но сначала немного о проблеме. Spotlight индексирует все подряд (кроме явно запрещенного), что создает нагрузку на процессор и диск. Стал уже классическим вопрос о том, что ценнее – заряд батареи ноутбука и ресурс перезаписи SSD или несомненное удобство Spotlight.

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

Для OS X Snow Leopard в Сети предлагается много разных решений по оптимизации работы процессов MDS/mdworker, но не все они подходят для Lion.

Spotlight в Lion выполнен с явными отличиями, как мне удалось заметить. Соответственно, и рекомендации по приструнению Spotlight должны иметь отличия.

Мне удалось успокоить процессы mdworker двумя следующими пассами (остальные, как мне показалось, заметного влияния не оказали):

1. Перестройка Spotlight индекса. Это поможет тем, кто “Льва” накатывал поверх “Лепёрда”. Способов вызвать полную переиндексацию я знаю два, но рекомендую ту, что предлагает сам Apple: открываете “системные настройки” -> Spotlight, затем закладку “конфиденциальность” и в список “секретных материалов” вносите ваш встроенный жесткий диск (или все, если их несколько). Через несколько секунд можно нажать “минус”, чтобы откатить произведенное действие. Результатом будет полная перестройка индекса вашего диска. Процесс это не быстрый. Сигналом о том, что процесс начался – точка, появившаяся в центре пиктограммы Spotlight (верхний правый угол экрана). Если нажать мышью на пиктограмму в этот момент, вам Spotlight еще и прогресс покажет, и оставшееся время индексации.

На SSD у меня ~70Gb данных переиндексировались за ~15 минут. На HDD это может занять пару часов, будьте терпеливы. Лучше при этом ноут не трогать, чтобы все закончилось скорее.

Поговаривают, этот способ конвертации данных в новый формат “Льва” заметно быстрее, нежели ждать постепенной перестройки старого индекса Spotlight в новый.

2. К сожалению, п.1 может не оказать желаемого результата и mdworker продолжить насилие над компьютером. В этом случае посмотрите внимательно на другие накопительные ресурсы, подключенные к вашему компьютеру. Это могут быть внешние дисковые накопители, Time Capsule, сетевые диски и другие компьютеры. Скорее всего, в них и дело.

У меня дома есть центральный сервер, к которому все домашние компьютеры подключаются по проводам или wifi. Так вот. Мне удалось застать mdworker за работой по индексации данных на подключенных сетевых ресурсах этого сервера. А данных там о-го-го.

Тогда я произвел следующие действия: подключил к макбуку все сетевые ресурсы и физические внешние диски, открыл настройки Spotlight и добавил в “конфиденциальность” весь этот технопарк. Через несколько минут работа mdworker-ов сдулась. А этих процессов у меня одновременно пахало по несколько штук.

При отключении сетевого ресурса, его наименование исчезает из вкладки “конфиденциальность”. Но пусть вас это не пугает, при новом подключении ресурс вновь появится на прежнем месте. Да и могло ли быть иначе, когда речь идет о конфиденциальности?

Так я победил любознательность Spotlight.

Проблема решена, но исключительно на уровне моего опыта. Не факт, что он подойдет и вам, но чем лев не шутит, попробуйте…

комментарии к "MDS и mdworker в Mac OS X Lion"

Спасибо! Помоголо.

Алексей, 10.12.2012 14:33

* * *

Ура. :)

Ру, 10.12.2012 19:14

* * *

Огромное человеческое спасибо. 10.8.2 все супер. Сразу утих )

Евгений, 26.02.2013 00:18

* * *

Большое спасибо! :)

CP, 02.04.2013 16:49

* * *

Спасибо за совет! Удобно

игорь, 17.04.2013 17:34

* * *

Там еще есть такая замечательная штука, как исключения. Стоило бы в них добавить:

/Users/Имя пользователя/Library/Caches
/System/Library/Caches
/Users/Имя пользователя/Library/Cookies
/Users/Имя пользователя/Library/Application Support/Crash Reporter
/Users/Имя пользователя/Library/Preferences
/Users/Имя пользователя/Library/PubSub
/Users/Имя пользователя/Library/Safari
/Users/Имя пользователя/Library/Application Support/Spanning Sync
/Users/Имя пользователя/Library/Logs/Sync
/Users/Имя пользователя/Library/Application Support/SyncServices
/System/Library/Logs
/Library/Caches

и, возможно, другие папки с логами и кешами на свое усмотрение.

Алексей, 14.06.2013 12:19

* * *

Спасибо за статью! Тоже поначалу перепугался что мой мак взбесился ))) нажав на лупу в правом верхнем углу монитора – можно наблюдать за процессом индексации. Проиндексировав диски сразу утих и больше не беспокоит. MacOsX 10.7.5

Андрей Владимирович, 05.07.2013 12:22

* * *

Спасибо, было интересно!

RysMax, 14.12.2013 02:39

* * *

Добрый день!
А не подскажете, как наоборот заставить индексировать какой-то раздел?
А именно, скрытый library, в частности папку с сообщениями из mail.app
А то есть некоторая проблема, что на криптованном диске в родном почтовом клиенте поиск не работает :(

Может, хотя бы через Spotlight это можно будет сделать

Da, 25.02.2014 21:53

* * *

Спасибо большое, подтолкнули в нужное русло! Не допер сразу исключить диск от Time Machine!

igor, 31.08.2014 19:04

* * *

Хотите что-нибудь сказать?..

Ваше имя

Ваш комментарий: