Reduzca automáticamente la copia de seguridad de Time Machine existente a un tamaño fijo

11

Busqué en Google durante horas para encontrar una solución para este problema, pero no pude encontrar una respuesta adecuada para mi problema.

Mi configuración:

  • Tengo un iMac con un disco duro de ~ 1 TB
  • Lo estoy respaldando a través de Time Machine en un Synology NAS DS214 + con ~ 2.7TB Space

Mi problema:

  • Olvidé establecer un límite de tamaño para el usuario de respaldo. No, mi Time Machine Backup utiliza aproximadamente 2.3TB de espacio. Eso no es cool.
  • No puedo establecer una cuota para el usuario de Synology, porque comienza a contar a partir de cero.

Lo que quiero hacer:

  • Si es posible, quiero decirle a mi Time Machine Backup que se reduzca automáticamente a un límite de ~ 1.5TB eliminando las copias de seguridad más antiguas.
  • Entonces quiero que el paquete escaso no crezca más.

¿Alguien de ustedes ve una solución? ¿O tengo que eliminar todas mis copias de seguridad anteriores para alcanzar mi objetivo?

Miguel
fuente
Solo para su información: estoy usando OS X Yosemite 10.10.3 y el firmware actual en mi Synology NAS.
michael

Respuestas:

3

Time Machine respetará una determinación de tamaño, pero solo cuando haga el contenedor . Esta funcionalidad es todo lo que Apple proporciona para la copia de seguridad nativa, por lo que necesitará una configuración personalizada para hacer lo que le pida, y no puede limitar las cosas una vez que haya comenzado a hacer una copia de seguridad en un contenedor.

En el futuro, si desea crear un nuevo contenedor restringido, el concepto no es difícil de trazar.

  • cree un nuevo contenedor en la sinología y asegúrese de aplicar las restricciones de tamaño cuando comience el proceso.

Server.app lo hace fácilmente: no conozco el código de sincronización que modificó esa característica, pero me sorprendería si no está en GitHub o publicado en algún lugar público.

En ese momento, puede eliminar todas las copias de seguridad de las carpetas de usuario que son grandes y luego, bloque por bloque, copie los datos de la copia de seguridad anterior al nuevo destino y luego herede la copia de seguridad.

También puede reducir los intervalos de copia de seguridad desde la línea de comandos o ejecutar esta automatización también.

Mucho y mucho trabajo, pero podría valer la pena como proyecto si alguien se inclina.

Cuando estoy en su lugar, simplemente copie la copia de seguridad antigua "demasiado grande" en un disco duro fuera de línea y la coloco en un estante y empiezo de nuevo con nuevas copias de seguridad del tamaño que desee. En 6 meses o un año, limpie esa unidad vieja a menos que realmente sienta que necesita esa historia anterior.

bmike
fuente
Excatly lo que hice: comencé con un nuevo Time Machine Backup. ¡Gracias por responder!
michael
TimeMachine tiene una configuración para establecer un Maxsize para el sparsebundle, pero en mi experiencia esto solo funciona para nuevos sparsebundles, no los existentes. La única solución a su problema es eliminar las copias de seguridad antiguas y mi solución es la mejor manera de hacerlo.
Robert Barrueco
De acuerdo: ¿debo poner en negrita el pero solo cuando haces el contenedor o lo cambias para que quede más claro @RobertBarrueco
bmike
Descubrí que "Disk Utility" podría cambiar el tamaño del contenedor de Time Machine si tenía espacio libre en el interior, lo que a su vez hizo que Time Machine usara el nuevo tamaño de contenedor más pequeño como límite. Esto estaba en mi Time Capsule. Supongo que el contenedor inicial se construye a partir del espacio libre disponible en ese momento.
Thorbjørn Ravn Andersen
2

Esta es la solución más fácil con OSX Terminal.

Obtenga una lista de todas las copias de seguridad en TimeMachine. Esto también le mostrará la ruta completa del directorio a las copias de seguridad que necesitará en el paso 2 ...

$ tmutil listbackups

/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

Elija qué copias de seguridad eliminar en función de su fecha. Tenga en cuenta el uso de un comodín * y el uso del directorio del paso 1. Por ejemplo, para eliminar todas las copias de seguridad de 2018, usaría esto:

$ sudo tmutil delete '/ Volumes / Time Machine Backups / Backups.backupdb / {your-macbook} / 2018 -' *

El último paso es reducir y recuperar el espacio del paquete disperso. Busque en su unidad de respaldo el archivo .sparsebundle.

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

Robert Barrueco
fuente
¿Cómo reduce esto automáticamente la copia de seguridad a un tamaño específico como lo solicitó el OP?
nohillside
0

Reduce el volumen de la copia de seguridad al tamaño deseado. Time Machine está diseñado para seguir agregando copias de seguridad hasta que el volumen esté lleno, luego pode las copias más antiguas. NO está diseñado para compartir espacio de almacenamiento con otras cosas, ni para dejar X gigabytes libres en el destino.

Pablo
fuente
55
Bueno, no puedo reducir el volumen, porque ya ocupa más espacio del deseado. Ese es mi problema.
michael
1
¿Cómo reducirías el volumen?
jmh
0

Estoy de acuerdo con la respuesta dada anteriormente, aunque lo que podría intentar es eliminar manualmente las copias de seguridad de Time Machine (bajo su propio riesgo).

Si monta el volumen, hay una carpeta llamada "Backups.backupdb" (puede verse ligeramente diferente en las copias de seguridad remotas). Dentro tendrá el nombre de su computadora y luego las fechas o los volúmenes, o viceversa (lo siento, actualmente estoy lejos de mi propia Mac y no puedo verificar el orden exacto).

Si elimina algunas carpetas de fechas anteriores, liberará algo de espacio para cambiar el tamaño del volumen.

NOTA: Tenga en cuenta que Time Machine es una copia de seguridad incremental que utiliza enlaces duros para archivos sin cambios. Por lo tanto, al eliminar una carpeta de fecha, es posible que no se elimine la cantidad de espacio en el que se establece el tamaño.

Fénix
fuente
2
Este sitio dice que elimine sus copias de seguridad usando sudo tmutil delete.
Harvey
Time Machine comparte archivos sin cambios por hardlink. Si elimina una copia de seguridad completa, los archivos que utilizan otras copias de seguridad no se eliminan, solo los enlaces.
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   
}

Ejemplo:

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

Se puede llamar repetidamente.

    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
    ...
mmm
fuente