Time Machine не даёт извлечь диск

Диск Time Machine не извлекается, потому что к нему всё ещё обращается backupd или Spotlight. Учимся определять блокирующий процесс и безопасно отключать диск.

Вы закончили резервное копирование. Time Machine показывает, что оно завершено. Вы нажимаете «извлечь» — а macOS сообщает, что диск используется. Знакомо?

Короткий ответ: диск Time Machine не извлекается, потому что его всё ещё использует backupd (фоновый демон Time Machine) или процессы Spotlight mds / mds_stores. Выполните в Терминале lsof /Volumes/YourDriveName, чтобы убедиться в этом, затем отключите индексирование Spotlight для диска командой sudo mdutil -i off "/Volumes/YourDriveName" и попробуйте извлечь снова. Если выдернуть кабель силой, есть риск повредить резервную копию.

С дисками Time Machine это случается постоянно, и это одна из самых раздражающих сторон в остальном превосходной системы резервного копирования Apple. Копирование завершается, но что-то продолжает удерживать диск. Вы застреваете перед выбором: выдернуть кабель (не надо) или бесконечно ждать, пока какой-то загадочный процесс закончит работу.

Виновник почти всегда одно из двух: либо демон backupd ещё не полностью освободил диск, либо Spotlight занят индексированием вашей резервной копии. Иногда — и то, и другое сразу.

Почему backupd удерживает ваш диск

Резервным копированием Time Machine занимается фоновый процесс под названием backupd. Когда индикатор прогресса доходит до конца, видимая часть копирования завершена, но backupd нередко продолжает работать в фоне. Он может обновлять метаданные, проверять целостность копии или удалять временные файлы.

На компьютерах Mac с Apple Silicon backupd выполняется на энергоэффективных ядрах, чтобы меньше мешать вашей работе. Для производительности это здорово, но означает, что задачи по уборке могут занимать больше времени, чем вы ожидаете. Процесс задуман незаметным, а это иногда выливается в медлительность.

Проверить, активен ли ещё backupd, можно, открыв Мониторинг системы и введя «backup» в поле поиска. Если в списке есть backupd или backupd-helper, значит, Time Machine ещё не полностью освободила диск.

Spotlight всё усугубляет

Вот что застаёт большинство людей врасплох: macOS индексирует резервные копии Time Machine с помощью Spotlight. Это позволяет искать по истории копий прямо из Spotlight, что действительно полезно, когда нужно найти старую версию файла.

Проблема в том, что индексирование Spotlight может продолжаться ещё долго после завершения копирования. Процессы mds и mds_stores (сервер метаданных Spotlight) будут перемалывать ваш резервный диск минутами, а на больших копиях — порой часами.

Вы увидите, как эти процессы обращаются к тому Time Machine в Мониторинге системы. Они выполняют вполне законную работу, но при этом не дают вам извлечь диск. Та же первопричина стоит за множеством ошибок «диск используется» — полную картину мы разбираем в нашем руководстве по устранению проблемы «диск используется» в macOS и в отдельной статье про блокировку извлечения из-за Spotlight.

Безопасный способ проверить, что блокирует извлечение

Прежде чем что-либо форсировать, стоит выяснить, что на самом деле обращается к диску. Откройте Терминал и выполните:

lsof /Volumes/YourDriveName

Замените «YourDriveName» на реальное имя вашего диска. Если в нём есть пробелы, заключите весь путь в кавычки:

lsof "/Volumes/Time Machine Backup"

Эта команда выводит каждый процесс, у которого открыты файлы на этом томе. Скорее всего, в результатах вы увидите mds, mds_stores, backupd или Finder. Теперь вы точно знаете, с чем разбираться. (Подробный разбор lsof есть в нашем руководстве по команде lsof для пользователей Mac.)

Временная остановка индексирования Spotlight

Если проблема в Spotlight, можно временно отключить индексирование для резервного диска:

sudo mdutil -i off "/Volumes/YourDriveName"

Это останавливает индексирование Spotlight для конкретного тома. После выполнения команды попробуйте извлечь снова — должно сработать.

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

sudo mdutil -i on "/Volumes/YourDriveName"

Или просто оставьте его выключенным, если вы всё равно никогда не ищете по резервным копиям Time Machine через Spotlight. Многим эта функция не нужна, и они предпочитают более быстрое извлечение.

Пропустите ручные шаги: Ejecta точно покажет, какой процесс блокирует ваш диск, — и позволит завершить его одним кликом прямо из строки меню. Подробнее →

Остановка выполняющегося резервного копирования

Если backupd ещё работает, самое чистое решение — остановить Time Machine через строку меню. Нажмите значок Time Machine и выберите «Пропустить эту резервную копию» или «Остановить резервное копирование» (формулировка зависит от версии macOS). Так система корректно завершит то, чем занята.

Подождите минуту-две после остановки, затем попробуйте извлечь снова. Диск должен освободиться.

Если значка Time Machine нет в строке меню, остановить копирование можно и из Системных настроек (или из Системных настроек на старых версиях macOS). Перейдите в настройки Time Machine и временно отключите её.

Когда ничто другое не помогает

Иногда процесс просто не желает отпускать диск. Прежде чем прибегать к принудительному извлечению (мы писали о том, безопасно ли принудительное извлечение — если коротко: обычно да, но иногда нет), попробуйте такую последовательность.

Сначала выйдите из своей учётной записи и снова войдите. Это завершает большинство пользовательских процессов, которые могут держать файлы открытыми.

Если не помогло, можно принудительно завершить конкретные процессы из Мониторинга системы. Выберите процесс, нажмите кнопку X на панели инструментов и выберите «Завершить принудительно». С системными процессами будьте осторожны: их завершение может вызвать нестабильность.

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

Никогда не выдёргивайте кабель при работающем Mac. Диски Time Machine используют APFS (с защитой copy-on-write) или HFS+ (с журналированием), что помогает защититься от повреждений, но внезапное отключение во время активной записи всё равно может повредить каталог резервных копий или оставить копию в несогласованном состоянии.

Способ побыстрее

Если вам надоело перебирать команды Терминала и Мониторинг системы каждый раз, когда нужно отключить резервный диск, Ejecta делает всё это автоматически. Приложение живёт в строке меню, показывает, какие именно процессы блокируют извлечение, и позволяет завершить их одним кликом.

Конкретно для дисков Time Machine Ejecta определяет, в чём дело — в backupd, индексировании Spotlight или чём-то ещё, — и предлагает точечные варианты, чтобы безопасно освободить диск. Никаких команд Терминала, которые нужно запоминать, и никаких догадок о том, какой процесс завершать.

Как избежать проблем с извлечением в будущем

Несколько привычек помогут реже сталкиваться с этим.

Дайте резервной копии несколько минут после завершения, прежде чем извлекать диск. То, что индикатор прогресса дошёл до конца, не означает, что вся фоновая работа закончена. Если вам не нужно искать по резервным копиям Time Machine через Spotlight, добавьте резервный диск в список конфиденциальности Spotlight в Системных настройках. Это полностью отключает индексирование и значительно ускоряет извлечение. Можно также планировать резервное копирование на время, когда вам не понадобится сразу отключать диск, — например, на ночь или на обеденный перерыв.

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

Если вам не хочется каждый раз обращаться к Терминалу, Ejecta точно покажет, какой процесс блокирует ваш диск, — и позволит завершить его одним кликом прямо из строки меню.

Купить — $9.99