Глосарій/Процеси, які ви побачите

mds_stores і mdworker

Також: mds, індексування Spotlight

Коротка відповідь

mds, mds_stores і mdworker — процеси macOS, які створюють і підтримують пошуковий індекс Spotlight. mds — це сервер метаданих, а процеси mdworker сканують файли й читають їхній вміст і метадані, щоб їх можна було знайти під час пошуку.

Spotlight зберігає локальний індекс ваших файлів, програм, пошти та інших даних, щоб пошук працював швидко. Коли файли додаються чи змінюються або підʼєднується диск, mdworker читає їх, а mds і mds_stores оновлюють індекс.

Інтенсивне індексування — це нормально після оновлення macOS, перенесення даних на новий Mac, відновлення з резервної копії або копіювання великої кількості файлів. Воно має вщухнути, щойно індекс стане актуальним.

Чому mds_stores так сильно навантажує процесор

Індексування навантажує процесор і диск пропорційно до обсягу того, що треба проіндексувати. Створення нового індексу для заповненого диска може тривати довго. Папки, які постійно змінюються, як-от результати збирання, великі кеші чи образи віртуальних машин, можуть тримати Spotlight зайнятим, доки вони змінюються.

Кілька процесів mdworker одночасно — це нормально. Spotlight запускає більше одного, щоб сканувати файли паралельно.

Як заборонити Spotlight індексувати папку

Відкрийте Системні параметри, перейдіть до розділу Spotlight («Siri і Spotlight» у деяких версіях), натисніть «Приватність пошуку» й додайте диск або папку. Spotlight перестане їх індексувати й показувати в результатах пошуку.

Добрі кандидати — папки, у яких ви ніколи не шукаєте і які часто змінюються, як-от каталоги збирання, кеші пакетів або папка з віртуальними машинами.

Коли перебудовувати індекс

Якщо індексування ніяк не завершується або результати пошуку неправильні, Apple радить перебудувати індекс: додайте диск або папку до списку «Приватність пошуку», зачекайте кілька секунд, а потім вилучіть їх. Spotlight заново проіндексує це місце, і mds_stores якийсь час буде зайнятий.

Як перевірити, чи Spotlight індексує

Монітор активності показує процеси, а Термінал може сказати, чи ввімкнено індексування для диска.

  1. У Моніторі активності натисніть вкладку «Центральний процесор» і введіть md у поле пошуку. Ви побачите mds, mds_stores і один чи кілька процесів mdworker або mdworker_shared.
  2. Хвилину стежте за їхнім «% процесора». Низьке значення чи нуль означає, що Spotlight неактивний. Стабільна активність означає, що він досі обробляє файли.
  3. Натисніть вкладку «Диск» і подивіться на стовпець «Прочитано байтів» для тих самих процесів. Індексування багато читає, тож лічильник, що постійно зростає, означає, що сканування триває.
  4. У Терміналі виконайте mdutil -s /, щоб побачити стан індексування стартового диска. Команда виводить Indexing enabled., коли Spotlight налаштовано індексувати цей диск. Для іншого диска замініть / його шляхом, наприклад /Volumes/Backup.

Скільки триває індексування Spotlight?

Це залежить від того, скільки файлів треба проіндексувати, наскільки швидкий диск і наскільки Mac зайнятий іншою роботою. Повне індексування великого диска триває набагато довше, ніж обробка кількох змінених файлів, і той самий Mac може одного дня впоратися швидко, а після великого копіювання чи оновлення macOS індексувати годинами.

Краще питання — чи є поступ. Якщо mds_stores і mdworker за кілька годин затихають, індексування завершується. Якщо вони день у день лишаються зайнятими, щось постійно змінює файли або індекс треба перебудувати.

Звичні причини, через які індексування ніколи не завершується

Якщо Spotlight лишається зайнятим довго після оновлення чи міграції, пошукайте розташування, що постійно змінюється.

  • Результати збирання, node_modules або кеші пакетів, що часто перезаписуються.
  • Образи дисків віртуальних машин або великі бази даних, що змінюються під час використання.
  • Папка, у яку інша програма постійно пише, як-от папка завантажень чи синхронізації.
  • Зовнішній диск, який часто підʼєднують і відʼєднують, — Spotlight перевіряє його щоразу під час підключення.
  • Пошкоджений індекс — саме тоді допомагає його перебудова через «Приватність пошуку».

Чого не робити

Не вимикайте Spotlight для всього стартового диска, щоб заощадити ресурси процесора. Від індексу залежать інші функції, зокрема пошук у Finder, Пошті та інших програмах. Виключайте лише ті папки, у яких вам не потрібно шукати.

Завершення mdworker або mds_stores не зупиняє індексування: macOS знову запускає їх, і вони продовжують з того місця, де зупинилися. Якщо у Vitals увімкнено необовʼязковий помічник, його історія для кожного процесу, яка зберігається до року, дає змогу легко побачити, чи індексування стихає, чи повертається щодня.

Що питають люди

Що таке mds_stores на Mac?

Це один із процесів, що підтримують пошуковий індекс Spotlight. Він є частиною macOS.

Чому mdworker так багато працює?

mdworker сканує нові й змінені файли для Spotlight. Він багато працює після оновлення, перенесення даних або коли змінюється багато файлів, і затихає, щойно індексування надолужить.

Чи безпечно завершувати mds_stores?

Це мало допомагає, бо macOS знову його запускає, і індексування продовжується. Щоб заборонити індексувати певне місце, додайте його до списку «Приватність пошуку» в параметрах Spotlight.

Що таке mdworker_shared?

Так називається робочий процес Spotlight в останніх версіях macOS. Як і mdworker, він сканує файли й передає знайдене процесу mds для індексу.

Як дізнатися, що Spotlight завершив індексування?

mds_stores і процеси mdworker у Моніторі активності майже перестають використовувати процесор і залишаються на цьому рівні. Їхній показник «Прочитано байтів» на вкладці «Диск» також перестає зростати.

Чи індексує Spotlight зовнішні диски?

Так, коли їх підʼєднано, якщо ви не додали їх до списку «Приватність пошуку». Виконайте mdutil -s /Volumes/DriveName, щоб побачити стан індексування диска.

Повʼязане

Покроково: Чому мій Mac такий повільний.

Шукаєте щось краще за Монітор активності? Дивіться найкращі альтернативи Монітору активності для Mac або перегляньте усі терміни глосарію.