Як змусити глибокий обхід машини Time Time?


12

Після кількох панічних ядер і випадкового гарячого відключення мого приводу Firewire Time Machine, я хотів би переконатися, що мій Time Machine точно відповідає моєму Macintosh HD rsync -a. Чи є спосіб змусити Time Machine зробити глибокий обхід, щоб перевірити, чи відповідає резервна копія?

Знаючи, як це зробити на Leopard, Snow Leopard та Lion, було б корисно.


Додатковим безпечним (але трудомістким і дещо цінним) варіантом буде запуск нового резервного диска.
Тіло

Відповіді:


7

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

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

Якщо ви схильні використовувати командний рядок / термінал, я б почав ще до того, tmutil compareяк ви навіть зважилися на те, щоб примусити глибокий проїзд. У ньому явно порівнюються речі, які вони існують зараз, з останнім знімком, і ви можете примусити їх, вказавши конкретний зовнішній знімок, якщо ви турбуєтесь про порівняння локального знімка.


Як встановити призначення "Часової машини" ні до чого? tmutil setdestinationвимагає шлях як аргумент, чи не так? (Або я думаю, просто виберіть резервний диск, потім натисніть "Видалити диск", щоб зняти його з вибору?) Я застряг у жахливому положенні. Time Machine створює нову резервну копію кожного разу, коли я намагаюся створити резервну копію (скасовую її, перш ніж вона видалить старі резервні копії), тому я хочу змусити її виконати глибокий обхід, щоб він побачив, що більшість файлів насправді не змінилися з моменту останнього резервне копіювання.
Гері

Гаразд, тому я просто використав інтерфейс Time Machine і натиснув «Видалити диск», а потім знову додав його. Я все ще не отримую глибокого переходу. Я знаю це, тому що етап "Підготовка резервного копіювання" зайняв 12 хвилин, коли вчора я насправді здійснив глибокий обхід, коли на це пішло 120 хвилин. Це саме те, що я хочу зараз, але не можу зрозуміти, як це зробити.
Гері

1

Завантаження в режимі для одного користувача може призвести до глибокого переходу. Це робило для мене один раз, але не наступні рази. Видалення /.fseventsd напевно буде. Це слід безпечно робити в режимі однокористувача. Видалення файлу /.fseventd з резервної копії не призвело до глибокої траверси для мене. (Моя система продовжувала працювати як завжди і навіть не відтворювала її.)

tmutil compareє лише дещо точним. Здавалося, точно визначити файли, які спочатку не створювали резервну копію. Я ініціював глибокий обхід, щоб виправити це, але Time Machine все ще не створює резервну копію багатьох файлів. Але tmutil compareзараз стверджує, що проблем немає. Я б довіряв:

rsync --dry-run --itemize-changes --checksum --protect-args -aNHAXx --protect-decmpfs --fileflags --force-change --delete path/to/source_dir/ path/to/destination_dir/

Використовувати /Volumes/<your time machine volume>/Backups.backupdb/<your machine name>/Latest/як вихідний, так і шлях призначення. --itemize-changesдозволяє нам побачити, що відрізняється; '--checksum' говорить rsyncпро фактичне порівняння вмісту файлів, а не просто часу модифікації та розміру файлу; і --dry-runкаже rsync, щоб насправді не створювати резервні копії (тому він просто говорить нам, що б це робило). Решта аргументів - це прапори, що сповіщають rsync, щоб всі призначення були тотожними джерелу, включаючи метадані та стан стиснення HFS. Я вважаю, що Time Machine додає метадані бухгалтерського обліку, які вона видаляє при відновленні, тому rsyncможе виявити помилкові зміни метаданих.


1

Коротка відповідь принаймні macOS 10.13.6:

  1. Видаліть будь-яку резервну копію .inProgress з обсягу резервної копії. Це може зажадати кореневого використання, /bin/rm -rfтому дійте обережно .

  2. Використовуйте tmutil associatediskкоманду для відновлення обсягу резервного копіювання до основного. Наприклад:

sudo tmutil relatedisk -a / "/ Томи / Резервні копії машин часу / Backups.backupdb / Macintosh HD / Останні / Macintosh HD"

Потім запустіть резервну копію з пункту меню Time Machine. У моєму випадку, замість того, щоб закінчити сканування за 10 хвилин (явно не повне сканування) і показати терабайт для резервного копіювання, сканування взяло понад 30, і розмір резервної копії відповідав тому, tmutil compareщо було сказано.

Фон:

Мені потрібно було провести глибокий обхід / повне сканування після того, як інверсійний інсталятор (Reallusion) змінив дозволи на все в "/ Користувачі / Спільне" (близько 1 терабайт не змінених файлів інакше). Я змінив їх усі назад і tmutilпідтвердив, що машині часу більше не потрібно створювати резервні копії цих файлів, але один із двох резервних копій дисків наполягав на використанні кешованого сканування, яке говорило про це.

Речі, які не спрацювали:

  • Видалення та повторне додавання обсягу резервного копіювання із системних налаштувань

  • Очищення /.fseventsd

  • Встановлення оновлення системи

  • Видалення резервної копії .inProgress без запуску tmutil associated disk

  • Запуск tmutil associated diskбез видалення .inProgress

  • Завантаження в єдиний користувальницький режим, монтаж / як читання-запис та торкання файлу

У більшості випадків журнали із резервними копіями стверджують, що роблять глибокий обхід, але це займе лише кілька хвилин, а потім спробує створити резервну копію всього. Ось команда відстежувати backupdтрансляцію на 10.13 пізніше:

log stream --style syslog --predicate 'senderImagePath містить [cd] "TimeMachine"' --info

Це покаже лише нові події. Для журналів за останні три дні:

лог-шоу --style syslog --predicate 'senderImagePath містить [cd] "TimeMachine"' --info --last 3d

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.