Автоматическое сжатие существующей резервной копии Time Machine до фиксированного размера


11

Я часами гуглил, чтобы найти решение для этой проблемы, но не смог найти ответ, подходящий для моей проблемы.

Моя настройка:

  • У меня есть iMac с жестким диском ~ 1 ТБ
  • Я копирую его с помощью Time Machine на NAS-устройство Synology DS214 + с пространством ~ 2,7 ТБ

Моя проблема:

  • Я забыл установить ограничение размера для резервного пользователя. Нет, мой Time Machine Backup использует около 2,3 ТБ места. Это не круто.
  • Я не могу установить квоту для пользователя Synology, потому что он начинает отсчет, начиная с нуля.

Что я хочу сделать:

  • Если это возможно, я хочу сказать, чтобы резервная копия Time Machine автоматически уменьшалась до предела ~ 1,5 ТБ, удаляя самые старые резервные копии.
  • Тогда я хочу, чтобы разреженный пучок больше не увеличивался.

Кто-нибудь из вас видит решение? Или мне нужно удалить все мои старые резервные копии, чтобы достичь цели?


Просто к сведению: я использую OS X Yosemite 10.10.3 и текущую прошивку на моем NAS-устройстве Synology.
Майкл

Ответы:


3

Time Machine будет уважать определение размера - но только тогда, когда вы создадите контейнер . Эта функциональность - это все, что Apple обеспечивает для собственного резервного копирования, поэтому вам понадобится настраиваемая настройка, чтобы выполнить то, что вы просите, и вы не сможете ограничить все, как только вы начали резервное копирование в контейнер.

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

  • Создайте в контейнере новый контейнер и обязательно запустите ограничения размера при запуске процесса.

Server.app делает это легко - я не знаю о синологическом коде, который изменяет эту функцию, но был бы удивлен, если бы он не был на GitHub или опубликован где-то публично.

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

Вы также можете сократить интервалы резервного копирования из командной строки или создать сценарий для этой автоматизации.

Много и много работы, но это может стоить того, как проект, если кто-то склонен.

Когда я стою на месте, я просто копирую старую «слишком большую» резервную копию на автономный жесткий диск, кладу ее на полку и начинаю заново с новыми резервными копиями того размера, который вам нравится. Через 6 месяцев или год - стереть этот старый диск, если вы действительно не чувствуете, что вам нужна эта старая история.


Именно то, что я сделал: я начал с новой резервной копии Time Machine. Спасибо за ответ, хотя!
Майкл

TimeMachine имеет настройку для установки максимального размера для sparsebundle, но по моему опыту это работает только для новых sparsebundles, а не для существующих. Единственное решение его проблемы - удалить старые резервные копии, и мое решение - лучший способ сделать это.
Роберт Барруэко

Договорились - я должен выделять жирным шрифтом, но только когда вы сделаете контейнер или измените его, чтобы быть более понятным @RobertBarrueco
bmike

Я обнаружил, что «Дисковая утилита» может изменить размер контейнера Time Machine, если в нем будет свободное пространство, что, в свою очередь, заставит Time Machine использовать новый, меньший размер контейнера в качестве ограничения. Это было на моей капсуле времени. Я предполагаю, что начальный контейнер создается из свободного пространства, доступного тогда.
Торбьерн Равн Андерсен

2

Это самое простое решение с использованием OSX Terminal.

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

$ tmutil списки резервных копий

/Volumes/Time Machine Backups/Backups.backupdb/{your-macbook}/2018-10-02-213405
/Volumes/Time Machine Backups/Backups.backupdb/{your-macbook}/2018-10-09-192323
/Volumes/Time Machine Backups/Backups.backupdb/{your-macbook}/2018-10-19-212659

Выберите, какие резервные копии следует удалить, основываясь на их дате. Обратите внимание на использование подстановочного знака * и использование каталога из шага 1. Например, чтобы удалить все резервные копии 2018 года, вы должны использовать это:

$ sudo tmutil delete '/ Тома / Резервные копии Time Machine / Backups.backupdb / {your-macbook} / 2018 -' *

Последний шаг - уменьшить и восстановить пространство из разреженного пучка. Найдите на вашем резервном диске файл .sparsebundle.

$ sudo hdiutil compact '/Volumes/ndomyour-mac‹.sparsebundle'


Как это автоматически сжимает резервную копию до определенного размера, как запрашивал OP?
nohillside

0

Уменьшите объем резервной копии до нужного размера. Time Machine предназначена для добавления резервных копий до заполнения тома, а затем для удаления старых копий. Он НЕ предназначен для совместного использования пространства хранения с другими вещами и не оставляет Х гигабайт свободными в месте назначения.


5
Ну, я не могу уменьшить громкость, потому что она уже занимает больше места, чем хотелось. Это моя проблема.
Майкл

1
Как бы вы сократили громкость?
17

0

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

Если вы подключаете том, есть папка «Backups.backupdb» (она может выглядеть немного иначе при удаленном резервном копировании). Внутри него будет указано имя вашего компьютера, а затем либо даты, либо объемы, либо наоборот (извините, в настоящее время я не в своем собственном Mac и не могу проверить точный порядок).

Если вы удалите несколько папок с более ранними датами, вы освободите место для изменения размера тома.

ПРИМЕЧАНИЕ. Имейте в виду, что Time Machine - это инкрементная резервная копия, использующая жесткие ссылки для неизмененных файлов. Таким образом, удаление одной папки с датой не может привести к удалению объема, в котором она указана.


2
Этот сайт говорит, чтобы удалить ваши резервные копии с помощью sudo tmutil delete.
Харви

Time Machine делится неизменными файлами по жесткой ссылке. При удалении всей резервной копии файлы, которые используются другими резервными копиями, не удаляются, а только ссылки.
WGroleau

0
momomo.com.apple.timemachine.backups.list() {
        tmutil listbackups
}
momomo.com.apple.timemachine.backups.compact() {
        local leave="${1}";

        if [[ "${leave}" == "" ]]; then leave="5"; fi

        local backups=(
                $(momomo.com.apple.timemachine.backups.list)
        )

        local length="${#backups[@]}"
        local     to="(("${length}"-"${leave}"))"

        local i=0; while [[ "${i}" -lt "${to}"  ]]; do
                local backup="${backups[i]}"

                sudo tmutil delete "${backup}"

                echo -e "\n\n"

                ((++i))
        done   
}

Пример:

# To leave last 10 on disk and remove all previous before
momomo.com.apple.timemachine.backups.compact 10 

Можно вызывать повторно.

    Deleting: /Volumes/backupdisk-1/Backups.backupdb/m-desktop-2/2019-12-21-001329
    Deleted (4.6G): /Volumes/backupdisk-1/Backups.backupdb/m-desktop-2/2019-12-21-001329
    Total deleted: 4.6G

    Deleting: /Volumes/backupdisk-1/Backups.backupdb/m-desktop-2/2019-12-28-001355
    Deleted (5.1G): /Volumes/backupdisk-1/Backups.backupdb/m-desktop-2/2019-12-28-001355
    Total deleted: 5.1G

    Deleting: /Volumes/backupdisk-1/Backups.backupdb/m-desktop-2/2020-01-04-001349
    Deleted (6.6G): /Volumes/backupdisk-1/Backups.backupdb/m-desktop-2/2020-01-04-001349
    Total deleted: 6.6G

    Deleting backup: /Volumes/backupdisk-1/Backups.backupdb/m-desktop-2/2020-01-11-002303
    ...
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.