Битлента
Windows, macOS, Android, iOS5 мин чтения·

Spotlight не находит файлы на Mac: проверка индекса и переиндексация шаг за шагом

Что делать, если поиск Spotlight на Mac перестал находить документы и программы: проверка статуса индекса, список исключений и пересоздание индекса через mdutil.

Кратко

Spotlight ищет по индексу, и когда индекс неполный или повреждён, результаты пропадают. Сначала проверьте исключения в настройках, затем статус командой mdutil -s, и только потом пересоздавайте индекс — он перестроится сам, но займёт время.

Как устроен поиск и почему он «слепнет»

Spotlight не просматривает диск при каждом запросе. Фоновые службы заранее собирают сведения об именах, содержимом и свойствах файлов и складывают их в индекс — специальную базу на каждом томе. Когда вы нажимаете Command+Пробел и вводите слово, система обращается к этой базе, поэтому ответ приходит быстро.

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

Перед радикальными мерами полезно уточнить симптом:

  • не находится всё подряд или только свежие файлы;
  • проблема на встроенном диске или на внешнем;
  • поиск пустой в Spotlight, но работает в окне Finder;
  • сразу после обновления macOS или после переноса данных на новый компьютер.

Если сразу после обновления или миграции поиск работает частично, это может быть просто идущая переиндексация: на большом диске она занимает заметное время и нагружает процессор.

Сначала проверьте настройки и исключения

Самое быстрое — посмотреть, что система уже знает о ваших запретах. Откройте настройки системы, раздел, связанный со Spotlight (в зависимости от версии macOS он может называться «Siri и Spotlight» или «Spotlight»). В нём два интересных места: список категорий результатов и кнопка с параметрами конфиденциальности поиска (в старых версиях — вкладка «Конфиденциальность» в разделе Spotlight окна «Системные настройки»).

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

Приём, о котором нередко пишут при сбоях: добавить проблемную папку или диск в этот список, а затем сразу удалить. Обычно это заставляет систему пересобрать индекс для этого места. Он мягче ручных команд, потому что не затрагивает остальные тома, но помогает не в каждом случае.

Заодно просмотрите категории: если отключены «Документы» или «Программы», такие результаты не появятся, даже когда индекс в порядке. Изменения обычно применяются сразу.

Статус индекса через mdutil и mdfind

Если настройки в порядке, переходим к терминалу. Команда mdutil управляет индексированием, и для просмотра её обычно можно запускать без повышенных прав.

КомандаЧто делает
mdutil -s /показывает, включено ли индексирование для корневого тома
mdutil -a -sпоказывает статус для всех подключённых томов
mdfind -name имяищет по имени файла через тот же индекс
mdfind -onlyin ~/Documents словоограничивает поиск указанной папкой

Типичный ответ выглядит как «Indexing enabled» — индексирование включено. Если вместо него «Indexing disabled», то для этого тома служба выключена, и найти файлы по нему поиск не сможет. Включение выполняется командой mdutil -i on с указанием тома и требует sudo.

Сравнение mdfind с Spotlight помогает локализовать проблему: если терминал находит файл, а окно поиска нет, вероятнее проблема в настройках категорий или в интерфейсе. Если не находят оба, виноват сам индекс.

🛡️ Остались проблемы с соединением?
Можно пользоваться постоянно: российские приложения работают, включать и выключать ничего не нужно. Без карты и регистрации, настройка за пару минут.
Попробовать бесплатно

Пересоздание индекса: порядок и последствия

Когда исключения и статус ничего не показали, индекс можно построить заново. Для корневого тома команда выглядит так: sudo mdutil -E /. Ключ -E стирает существующий индекс и запускает создание нового; команда требует пароль администратора, поэтому убедитесь, что указан нужный том.

Что произойдёт дальше:

  1. Spotlight на время станет почти бесполезным: результаты появляются по мере переиндексации.
  2. Фоновые процессы с именами, начинающимися на md (например mds и mdworker), будут заметно нагружать процессор и диск. Посмотреть это можно в мониторинге системы.
  3. Ноутбук лучше держать на питании: индексация расходует заряд.
  4. Завершение зависит от размера диска и количества файлов, поэтому закладывайте время, а не ждите результата сразу.

Для внешнего тома укажите его путь, например sudo mdutil -E /Volumes/ИмяДиска. Если том отформатирован в файловой системе без нужной поддержки или смонтирован только для чтения, индексация может не работать вовсе. Сведения о файловых системах внешних накопителей есть в отдельном материале про NTFS, exFAT и FAT32.

Что делать, если ничего не помогло

Бывает, что и пересоздание индекса не приносит результата. Не торопитесь переустанавливать систему — сначала исключите внешние факторы.

  • Запустите проверку тома в дисковой утилите: ошибки файловой системы мешают индексированию.
  • Проверьте, достаточно ли свободного места: при нехватке пространства фоновые задачи работают нестабильно.
  • Загрузитесь в безопасном режиме и затем перезагрузитесь обычным способом: при этом система, по сведениям Apple, выполняет проверки и очищает часть кэшей. Способ входа в безопасный режим зависит от типа процессора, уточните его в справке для вашей модели.
  • Посмотрите, не мешает ли стороннее приложение: средства защиты и утилиты очистки иногда меняют права на папки с индексом.
  • Создайте нового пользователя и проверьте поиск там: если у него всё работает, проблема в настройках учётной записи, а не в системе.

Если ни один шаг не помог, имеет смысл обратиться в службу поддержки производителя и приложить сведения о версии системы и результате mdutil. Перед глубоким вмешательством убедитесь, что у вас есть актуальная копия данных.

Поиск в Finder и поиск через Spotlight: в чём разница

Многие считают, что окно поиска Finder и строка Spotlight — одно и то же, но у них разные привычки. Оба используют тот же индекс, однако Finder позволяет задать область поиска: этот Mac, текущая папка или выбранный диск. Поэтому при подозрении на проблему с индексом полезно сравнить результаты в обоих местах.

Что сравнитьКак трактовать
Нашёл Finder в текущей папке, Spotlight нетвозможно, отключена категория результатов
Не нашли оба, а mdfind находитпроблема в интерфейсе или настройках отображения
Не нашли ни один способ, mdfind молчитвероятно, индекс неполный, и можно переиндексировать
Находит по имени, но не по содержимомусодержимое этого формата не индексируется

Последняя строка объясняет один из возможных случаев: имя файла в индексе есть, а текст внутри нестандартного формата не читается индексатором. Это ограничение формата, а не поломка, и переиндексация тут не поможет. Для таких файлов пользуйтесь поиском по имени или инструментом самой программы, в которой они создавались.

🛡️ Остались проблемы с соединением?
Можно пользоваться постоянно: российские приложения работают, включать и выключать ничего не нужно. Без карты и регистрации, настройка за пару минут.
Попробовать бесплатно
macosspotlightпоискиндексация

Часто задаваемые вопросы

Читайте также