Машина времени смехотворно замедляется после обновления El Capitan


55

Я недавно обновился до El Capitan, и сказал Time Machine для резервного копирования. Он застрял на подготовке резервной копии на несколько часов, поэтому я остановил его, удалил файл InProgress, перезагрузил компьютер и попытался снова. Спустя ~ 30 минут Time Machine все еще готовилась. Я посмотрел на монитор активности, и резервное копирование только прочитало ~ 140 Мб за 30 минут ... Заглядывая в iStatMenus, я обнаружил, что у резервного копирования есть скорость чтения между ничем и 120 Кбит / с (если мне повезет. до 500 Кбит / с и очень редко 1 Мбит / с). Spotlight не индексируется (как я слышал, иногда Spotlight мешает резервному копированию), и жесткий диск засыпал в то время, когда я писал это, редко просыпаясь, чтобы мой Mac кратко что-то читал с него.

Вот что появляется в консоли при поиске backupd: Консольный журнал

Я бы предпочел не переформатировать мой жесткий диск на случай, если я когда-нибудь захочу вернуться к Yosemite, однако я готов, если это решит проблему.

Кроме того, кажется, что всякий раз, когда я перезагружаю свой Mac, жесткий диск теряет значок Time Machine и возвращается к оранжевому диску.

Снимок экрана Activity Monitor, режим диска при отметке ~ 50 минут: Монитор активности

РЕДАКТИРОВАТЬ: я попытался отключить и снова включить Spotlight для диска, а также я стер папку .Spotlight-V100 и перезагрузил. Без изменений.

РЕДАКТИРОВАТЬ 2: Кажется, что некоторые ошибки появились в консоли заблуждаться

РЕДАКТИРОВАТЬ 3: Спустя много-много часов Time Machine закончила сканирование и теперь выполняет резервное копирование! Я все еще хотел бы знать, почему это заняло так много времени (я не ожидал, что обновление до El Capitan займет так много времени. Я также исключил системные файлы, хотя, полагаю, меня ждет еще одно долгое ожидание, так как я только что удалил их из списка исключений)


2
Я борюсь с той же самой проблемой, так как я повысил до El Capitan. Зашифрованные резервные копии стали смехотворно медленными, особенно по сети. Спросить на форумах не помогло. Некоторым людям кажется, что нужно просто дождаться первого резервного копирования. Последующие резервные копии должны быть быстрее. У меня это не сработало, плюс моя машина редко подключалась к одному и тому же хранилищу резервных копий более 12 часов. Я собираюсь угробить машину времени для стороннего решения для резервного копирования. Облом.
Уицило

@Huitzilo ТМ понадобилось около 12 часов, чтобы начать резервное копирование для меня. Похоже, это будет медленнее для вас, поскольку вы шифруете их и делаете это по сети (я не был). : / Ожидание этого сработало, однако и будущие резервные копии были быстрее ...
CraftedCart

Ответы:


77

Частично проблема заключается в том, что операции ввода / вывода с низким приоритетом (I / O) теперь, похоже, сильно ограничены. Вы можете проверить это через Терминал (его можно найти через Spotlight (обычно привязанный к Space) и ввести terminal), затем введите в приглашении bash:

fs_usage backupd

и искать THROTTLEDзаписи. Если вы видите их, резервное копирование сокращается.

Таким образом, если у вас есть тонна файлов, то время, необходимое для ввода-вывода, будет длиться вечно, даже если файлы небольшие (потому что он выполняет гораздо больше операций ввода-вывода xattrsи т. Д., Чем раньше).

Перейдите в терминал и введите:

sudo sysctl debug.lowpri_throttle_enabled=0

Для меня эта скорость возросла с 72 часов до ~ 4 часов в файловой системе с 2,5 миллионами файлов.

Также рекомендуется снова включить регулирование после успешного завершения резервного копирования с помощью следующей команды

sudo sysctl debug.lowpri_throttle_enabled=1

У меня была резервная копия, которая считала часы, чтобы прочитать диск, и мне не хватило времени на завершение работы в одночасье. Он работал, медленно передавая байты за байтами. Я запустил эту команду в терминале, и внезапно она стала быстро мигать от нескольких байт / с до мегабайт / с. большое спасибо !!
Жан

При man sysctlотображении команды a показано следующее: «Параметр -w устарел и игнорируется» . Поэтому я предполагаю, что нет необходимости записывать значение. Это правильно?
янь

@yan Это правильно, вы можете просто опустить, -wи это будет работать.
DASKAjA

1
Используя sudo fs_usage backupdя видел много записей, но не смог найти THROTTLEDни ключевое слово throttled(используя grep). Несмотря на это, после установки debug.lowpri_throttle_enabledна 0, Time Machine оценки это займет 3 часа , чтобы сделать резервные 155 ГБ данных , а не никогда не закончить оценку. Рад, что нашел эту ветку.
Стивен Хоуэлл,

9
Почему мы должны включить его? Каковы плюсы / минусы для того, чтобы выключить его постоянно
Том

11

Я подтверждаю, что команда:

sudo sysctl debug.lowpri_throttle_enabled=0 

работает отлично.

Если вы хотите сделать его постоянным после перезагрузки, вы можете сделать следующее.

  • создать файл под /Library/LaunchDaemons/fix-el-capitan-slow-time-machine-speed.plist

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
      <dict>
        <key>Label</key>
        <string>fix-el-capitan-slow-time-machine-speed</string>
        <key>ProgramArguments</key>
        <array>
          <string>/usr/sbin/sysctl</string>
          <string>debug.lowpri_throttle_enabled=0</string>
        </array>
        <key>RunAtLoad</key>
        <true/>
      </dict>
    </plist>
    
  • убедитесь, что файл принадлежит root

    sudo chown root /Library/LaunchDaemons/fix-el-capitan-slow-time-machine-speed.plist
    
  • выдать команду

    sudo launchctl load /Library/LaunchDaemons/fix-el-capitan-slow-time-machine-speed.plist
    

Вы можете найти содержимое файла в этом гисте


Или вы можете добавить строку в /etc/sysctl.conf; Здесь я храню все свои настройки сети и всегда работал для меня.
Джейми Иванов

3

Я нашел эту статью на форумах Apple о сообщении, которое появляется в консоли (пока оно ничего не делает или выполняет резервное копирование со скоростью 10 байт / с):

com.apple.backupd: Waiting for index to be ready (100)

В моем случае мне удалось отменить все старые резервные копии, поэтому я отключил том от проблемного Mac, подключил диск / сетевой ресурс с другого компьютера (не Mac), удалил весь .sparsebundleкаталог (что занимало удивительно много времени) и затем снова запустил резервное копирование. Он создал новый, .sparsebundleи теперь его резервное копирование составляет около 10 МБ / с.

Если вы не хотите удалять существующие резервные копии, попробуйте одно из других предложений на этой странице:

  • перезагрузка в безопасном режиме и затем возврат к нормальному;
  • запретить Spotlight индексировать том / диск Time Machine;
  • удаление индекса Spotlight .Spotlight-V100(которого у меня не было);
  • используя mdutilдля отключения и повторного включения индексации Spotlight на томе:
    • sudo mdutil -i off /Volumes/Time\ Machine\ Backups
    • sudo mdutil -i on /Volumes/Time\ Machine\ Backups

(см. это обсуждение для более подробной информации и идей).


2

У меня были похожие проблемы после перехода в El Capitan - резервные копии (даже небольшие добавочные) замедлились до реального сканирования. Поэтому я сделал дамп болтовни между Mac и NAS и увидел множество неудачных запросов FPGetFileDirParms. AFP - это (был?) Протокол, используемый машиной времени для общения с накопителями NAS, но я читал, что они переходят на SMB.

174 0.390744    192.168.0.9 192.168.0.10    AFP 107 FPGetFileDirParms request: Vol=3 Did=62779 Name=._1b6c
176 0.391729    192.168.0.10    192.168.0.9 AFP 82  FPGetFileDirParms reply: object not found (-5018)[Malformed Packet]
178 0.392002    192.168.0.9 192.168.0.10    AFP 101 FPGetFileDirParms request: Vol=3 Did=93632
179 0.392909    192.168.0.10    192.168.0.9 AFP 82  FPGetFileDirParms reply: object is the wrong type (-5025)[Malformed Packet]

Я понятия не имею, почему эти запросы потерпели неудачу, но количество этих неудачных попыток ОГРОМНО - фактические передаваемые данные незначительны по сравнению с количеством этих неудачных запросов - и, следовательно, медленная, сканирующая скорость.

Что сработало для меня:

  1. Я перешел к настройкам Time Machine -> Выбрать диск и удалил связанный с ним диск (который был подключен к afp: //MyBookLive.local/TimeMachine)
  2. Пошел в Finder-> Go-> Connect to Server. Набирается в ip-адресе диска NAS в пространстве «Адрес сервера» (для меня smb: //192.168.0.10)
  3. Connect. Он подбросил список томов для монтирования - выбрал том, используемый для машины времени (TimeMachine для меня). TimeMachine был установлен в / тома.
  4. Из терминала побежали:

    sudo tmutil setdestination /Volumes/TimeMachine
    

Вот и все. Машина времени теперь ассоциируется с / Volumes / TimeMachine вместо afp: //MyBookLive.local/TimeMachine. Предыдущие резервные копии были хорошими, и добавочные резервные копии, которые произошли после этого, были БЫСТРЫМИ. Дамп проволочной акулы, который я сделал после этого, не показал неудавшихся запросов AFP (хотя AFP все еще использовался протоколом).


2
Запуск tmutil завершается с ошибкой '/ Volumes / TimeMachineBackup: несовместимый тип файловой системы: smbfs (ошибка 45)' для меня.
Ноябрь

Том TimeMachine на вашем сетевом диске отформатирован как разреженный пакет? Когда вы используете Finder для монтирования тома резервной копии, вы видите образ sparsebundle?
MSRAVI

Имеет ту же ошибку «Несовместимый тип файловой системы: smbfs», что и @Nate. Убрал sparseimage но не помогает. Это на OS X 10.11.3, в сторону современной капсулы времени 3GB.
akauppi

0

Я не смог решить проблему, однако обнаружил, что моя машина времени замедляется, когда она выполняет резервное копирование данных других пользователей (не вошедших в систему). Возможно, некоторые проблемы с разрешениями существуют в файлах папок других пользователей. Когда я добавил этого пользователя в список исключений, ТМ рухнул.


0

В связи с ответом Даниэля Берлина, приведенным выше (но я здесь новичок, поэтому у меня недостаточно прав, чтобы просто комментировать там), я обнаружил, что его команда терминала работает для меня БОЛЬШОЙ в OSX 10.11.3. Превратил 30-часовую резервную копию в 4-часовую! Тем не менее, он не остается после перезагрузки.

Я не хотел вводить в терминал каждый раз, когда я перезагружаюсь, так что ...

Поскольку я не очень разбираюсь в сценариях оболочки, я достаточно погуглил, чтобы создать рабочий процесс Automator, который запрашивает у пользователя ввод пароля root, а затем выполняет команду терминала. Я выбрал подтверждение успеха уведомлением центра уведомлений.

Я сохранил рабочий процесс как приложение и добавил его к своим элементам входа в систему. Так что теперь при каждом входе в систему мне предлагается снова вводить свой пароль для «разгона» Time Machine.

Существуют способы сделать процесс невидимым с помощью сценариев оболочки, но это немного сложнее, так как требуется root-доступ, полученный командой sudo. Можно также жестко связать пароль в приложении Automator, если не беспокоиться о безопасности. (Не рекомендую.)

Я бы разместил здесь приложение рабочего процесса, но, очевидно, не могу загрузить файл к этому ответу. Так что я приложу JPG для всех, чтобы восстановить, если они хотят. PS Обратите внимание на Pass Input «в качестве аргумента» для сценария оболочки

Автоматизированный скрипт


0

Моя проблема была устранена с помощью DWHoard в статье : перезагрузка в безопасном режим, а затем обратно (для меня, компьютер , казался, отключился во время безопасной загрузки).

Macbook Air середина 2011 года, OS X 10.11.3, поддержка Time Capsule.


Изменить: На самом деле, кажется, что после безопасной загрузки и нормальной загрузки, Time Machine только получил около 41/55 ГБ (в течение часа) и снова начал ползать (с тех пор увеличился только 2,75 ГБ. Жаль, я купил Time Capsule просто для того, чтобы избежать такого рода несовместимостей, и вот я здесь - все устройства Apple и паршивый опыт, пустая трата времени. Я надеюсь, что вы, другие, найдете надежное решение.

Консоль получает новую запись mdworkerпримерно каждую секунду - это нормально, когда происходит резервное копирование?

Скриншот


Редактировать 2: Успешно! Ноутбук имеет две учетные записи пользователей, и, возможно , вход во вторую заставил продолжить резервное копирование. Стоит проверить, если вы находитесь в аналогичной ситуации.


-1

У меня та же проблема, и я нашел то, что выглядит решением (не замечательно, но это работает)

отформатируйте внешний жесткий диск и убедитесь, что у вас действительно хорошая пропускная способность (проверьте ваш usb3), обратите внимание на настройки ТМ, здесь я забыл так много других разделов и образов дисков, что я не хочу делать резервные копии, это увеличило бы время , запустите первую резервную копию. КАЖДЫЕ 2-3 часа, перезагружайте компьютер (да, не весело, но я заметил, что первый час обычно быстрый, а после этого становится медленнее) и все, я смог сделать резервную копию 1,5T за утро. ,


3
Можете ли вы добавить источник цитаты для справки?
холме

-2

Пожалуйста, смотрите эту заметку от Apple :

OS X El Capitan: если Time Machine работает медленно

Попробуйте эти предложения, если Time Machine работает медленно.

  • При первом использовании Time Machine настройте его вечером, чтобы начальное резервное копирование могло быть выполнено за ночь.

  • Если ваш резервный диск является Time Capsule, оставьте свой Mac в той же комнате, что и Time Capsule для первоначального резервного копирования, или используйте кабель Ethernet для подключения Mac к одному из портов Ethernet на Time Capsule.

  • Программное обеспечение для сканирования вирусов может очень быстро создавать резервные копии Time Machine. Если вы используете Norton AntiVirus или аналогичный продукт, попробуйте исключить резервный диск из автоматического сканирования. Также убедитесь, что вы используете последнюю версию антивирусного программного обеспечения.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.