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


11

Я годинами гугла, щоб знайти рішення цієї проблеми, але не змогла знайти відповідь, яка відповідатиме моїй проблемі.

Моя установка:

  • У мене є iMac з жорстким диском ~ 1 Тб
  • Я створюю резервну копію через Time Machine на Synology NAS DS214 + з пробілом ~ 2,7 ТБ

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

  • Я забув встановити обмеження розміру для резервного користувача. Жоден мій час резервного копіювання машини не використовує близько 2,3 ТБ місця. Це не круто.
  • Я не можу встановити квоту для користувача Synology, оскільки вона починає рахувати початковий нуль.

Що я хочу зробити:

  • Якщо це можливо, я хочу сказати, що резервна копія Time Machine автоматично скорочується до межі ~ 1,5 ТБ, видаляючи найдавніші резервні копії.
  • Тоді я хочу, щоб розріджений пучок більше не збільшувався.

Хтось із вас бачить рішення? Або мені потрібно видалити всі старі резервні копії, щоб досягти своєї мети?


Просто FYI: Я використовую OS X Yosemite 10.10.3 та поточну прошивку в моїй Synology NAS.
Майкл

Відповіді:


3

Time Machine поважатиме визначення розміру - але лише тоді, коли ви виготовите контейнер . Ця функціональність - це все, що Apple надає для власного резервного копіювання, тож вам потрібна спеціальна установка, щоб робити те, що ви просите, і ви не можете обмежувати речі, як тільки ви почали створювати резервну копію до контейнера.

Якщо рухатися вперед, якщо ви хочете створити новий контейнер з обмеженими можливостями, концепцію не складно окреслити.

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

Server.app робить це легко - я не знаю про синологічний код, який реверсував цю функцію, але був би здивований, якщо він не знаходиться на GitHub або публікується десь публічно.

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

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

Багато і багато роботи, але це може бути варте того, як проект, якщо хтось схильний.

Коли я в твоїх черевиках, я просто копіюю стару "занадто велику" резервну копію на офлайн-жорсткий диск і кладу її на полицю і починаю з нових резервних копій потрібного розміру. Через 6 місяців чи рік витріть цей старий диск, якщо ви справді не відчуваєте, що вам потрібна стара версія історії.


Ексклюзивно, що я зробив: я почав з нового резервного копіювання машини. Дякуємо, що відповіли!
Майкл

У TimeMachine є налаштування для встановлення Maxsize для розрідженого ряду, але, на мій досвід, це працює лише для нових спарбундлей, а не для існуючих. Єдине рішення його проблеми - це видалити старі резервні копії, і моє рішення - це найкращий спосіб зробити це.
Роберт

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

Я виявив, що "Disk Utility" міг би змінити розмір контейнера Time Machine, якщо в ньому було вільного місця, що, в свою чергу, змусило Time Machine використовувати новий, менший розмір контейнера як обмеження. Це було на моїй капсулі часу. Я здогадуюсь, що початковий контейнер будується з вільного простору, наявного тоді.
Thorbjørn Ravn Andersen

2

Це найпростіше рішення за допомогою OSX Terminal.

Отримайте список усіх резервних копій у TimeMachine. Це також покаже вам повний шлях до каталогу до резервних копій, який вам знадобиться на кроці 2 ...

$ tmutil listbackup

/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 '/ Томи / Резервні копії машин часу / Backups.backupdb / {your-macbook} / 2018 -' *

Заключний крок - зменшити і відновити простір з розрідженого пучка. Шукайте у дисках резервного копіювання файл .sparsebundle.

$ sudo hdiutil compact '/Volumes/{your-mac}.sparsebundle'


Як це автоматично зменшує резервну копію до конкретного розміру, як вимагає ОП?
nohillside

0

Зменшіть об'єм резервного копіювання до потрібного розміру. Time Machine призначений для того, щоб додавати резервні копії до повного обсягу, а потім обрізати старі копії. Він НЕ розроблений для того, щоб ділитися простором пам’яті з іншими речами, а також не залишати вільних гігабайт X у пункті призначення.


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

1
як би ви зменшили гучність?
jmh

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.