¿Cómo puedo eliminar manualmente las copias de seguridad antiguas para liberar espacio para Time Machine?

200

Utilizo una Time Capsule para hacer una copia de seguridad y ahora quiero que la unidad realice una copia de seguridad de los datos de una Mac adicional. Pero la unidad está llena de copias de seguridad antiguas de Mac 1. Simplemente no hay suficiente espacio disponible para la copia de seguridad de Mac 2.

Recibo este mensaje de error al ejecutar la copia de seguridad de Time Machine:

  

Time Machine no pudo completar la copia de seguridad.   Esta copia de seguridad es demasiado grande para el disco de copia de seguridad. La copia de seguridad requiere   28.68 GB, pero solo 626.2 MB están disponibles.

     

Time Machine necesita espacio de trabajo en el disco de respaldo, además de   Espacio requerido para almacenar copias de seguridad. Preferencias de Open Time Machine para   seleccione un disco de copia de seguridad más grande o reduzca la copia de seguridad excluyendo   archivos.

Sé que Time Machine en sí mismo es capaz de eliminar las copias de seguridad antiguas cuando necesita más espacio. Pero en este caso no elimina ninguna copia de seguridad de Mac 1 para hacer espacio para Mac 2.

La pregunta es, ¿cómo lo hago manualmente?

    
pregunta Jesper Rønn-Jensen 04.02.2012 - 20:36

8 respuestas

212

Tenga cuidado con el sudo y asegúrese de elegir los archivos de Mac correctos, ya que no hay que deshacer ni confirmar el siguiente comando:

sudo tmutil delete /Volumes/drive_name/Backups.backupdb/old_mac_name

El comando sudo necesita su contraseña (y no tendrá eco en la pantalla, así que solo escríbalo y haga una pausa para asegurarse de que está saliendo con los archivos correctos antes de presionar Intro). Si desea estar más seguro, puede elegir una instantánea para eliminar primero para asegurarse de que el comando funciona como debe. Esto es bueno ya que podría llevarle horas limpiar algunos conjuntos de respaldo más grandes y quiere dejar la Mac segura de que está eliminando el almacén de información correcto.

Puedes usar la herramienta tmutil para eliminar las copias de seguridad una por una.

sudo tmutil delete /Volumes/drive_name/Backups.backupdb/mac_name/YYYY-MM-DD-hhmmss

Desde que se introdujo tmutil con Lion, esto no funcionará en versiones anteriores del sistema operativo.

Si desea obtener el directorio actual de copias de seguridad (puede haber múltiples destinos definidos y solo uno será "actual")

sudo tmutil machinedirectory
    
respondido por el bmike 05.07.2012 - 22:16
76

La forma más fácil es:

  1. Introduzca la máquina del tiempo (en la Mac cuya copia de seguridad desea eliminar)
  2. Vaya al punto en el tiempo que desea eliminar
  3. Seleccione el icono que parece un engranaje en el buscador y elija 'Eliminar copia de seguridad' (en Mavericks: haga clic con el botón derecho en la ventana del buscador y elija 'Eliminar copia de seguridad')

Esto garantiza que el catálogo de copia de seguridad se mantenga preciso y la integridad de sus datos se mantenga intacta.

    
respondido por el Dudeas 29.07.2012 - 01:17
33

Para Mavericks/Yosemite

  1. Introduce la máquina del tiempo
  2. Seleccione la copia de seguridad
  3. Haz clic derecho en la copia de seguridad (en la ventana del buscador)
  4. Selecciona 'Eliminar copia de seguridad'

Le pedirá la contraseña y ya ha terminado

    
respondido por el Inder Kumar Rathore 02.02.2014 - 16:57
16

script bash:

COMPUTER_NAME=$(/usr/sbin/scutil --get ComputerName)
NBACKUPS=$(/usr/bin/tmutil listbackups |
  /usr/bin/grep "$COMPUTER_NAME" |
  /usr/bin/wc -l)
OLDEST_BACKUP=$(/usr/bin/tmutil listbackups |
  /usr/bin/grep "$COMPUTER_NAME" |
  /usr/bin/head -n1)
LATEST_BACKUP=$(/usr/bin/tmutil latestbackup)
echo Latest backup: $LATEST_BACKUP
if [[ -n "$LATEST_BACKUP" && "$LATEST_BACKUP" != "$OLDEST_BACKUP" ]]
then
 echo -n "$NBACKUPS backups. Delete oldest: ${OLDEST_BACKUP##*/} [y/N]? "
read answer
 case $answer in
  y*)
echo Running: /usr/bin/sudo /usr/bin/tmutil delete "$OLDEST_BACKUP"
/usr/bin/sudo time /usr/bin/tmutil delete "$OLDEST_BACKUP"
;;
*)
 echo No change
 ;;
 esac
 else
 echo "No backup available for deletion"
 fi
    
respondido por el user36971 20.12.2012 - 02:24
13

Me he estado preguntando esta pregunta, y las respuestas aquí sin duda ayudaron. Sin embargo, hay un aspecto que falta, que puede ser un nuevo "detalle" de implementación que no existía cuando se respondió esta pregunta.

tmutil delete sí elimina las copias de seguridad, pero en realidad no reclama el espacio que ocuparon, al menos no de forma garantizada. Pasé aproximadamente 2 días enteros eliminando copias de seguridad de > hace 2 años, lo que según el mensaje de finalización final fue de aprox. 400Gb de datos. Sí vi que la indicación de espacio de copia de seguridad libre subía correspondientemente una vez , pero después de la próxima copia de seguridad, volví a bajar solo a un 7% de espacio disponible (858Gb utilizado en lugar de alrededor de 450Gb). Eso realmente me tenía bloqueado.

La respuesta a ese misterio se encuentra aquí: enlace En resumen, debe compactar el paquete disperso que en realidad contiene la copia de seguridad si está alojado en un disco en red, o en un disco que no está formateado en HFS +. No tengo copias de seguridad de TM que no estén alojadas en un paquete disperso, por lo que no puedo verificar si el uso de tmutil delete reclama gratis. Bien podría hacerlo y el hecho de que no lo haga en una Time Capsule puede ser simplemente una peculiaridad del protocolo de paquete disperso. El comando para ejecutar después de sudo tmutil delete es sudo hdiutil compact /Volumes/YourTimeMachineDisk/YourBackupName.sparsebundle . En mi caso que informé

Starting to compact…
Reclaiming free space…
...................................................................................................................................
Finishing compaction…
Reclaimed 403.2 GB out of 583.5 GB possible.

La buena noticia es que este comando tomó solo una fracción del tiempo que tomó tmutil, gastando mucho menos tiempo buscando el disco y usando menos RAM (de hecho, se completó en el tiempo que tardé en escribir esta respuesta). / p>     

respondido por el RJVB 07.06.2016 - 11:10
12

Si Time Machine solo está haciendo una copia de seguridad de las diferencias, eliminarlas en orden inverso no es lo que desea. Además, dado que cada eliminación puede llevar algún tiempo, sería bueno tener un script que elimine el siguiente cuando se complete el actual.

Siguiendo la secuencia de comandos de ejemplo del usuario36971 anterior, he escrito una que eliminará todas las copias de seguridad de la especificado y anterior:

#!/bin/bash

if [ -z "$1" ]
then
    echo "must specify backup id: YYYY-MM-DD-HHMMSS"
    exit 1
fi

FOUND_BACKUP=0;
BACKUPS=""
while read line; do
    if [[ "${line}" == *$1* ]]
    then
        FOUND_BACKUP=1;
    fi

    if [ "${FOUND_BACKUP}" == "1" ]
    then
        BACKUPS+="${line}"$'\n'
    fi
done < <(/usr/bin/tmutil listbackups | tail -r)

if [ "${FOUND_BACKUP}" == "0" ]
then
    exit 1
fi

printf '%s' "$BACKUPS"

echo -n "Delete above backups? [y/N]? "
read answer
case $answer in
    y*)
        while read line; do
            if [ -n "${line}" ]
            then
                echo Running: /usr/bin/sudo /usr/bin/tmutil delete "${line}"
                /usr/bin/sudo time /usr/bin/tmutil delete "${line}"
            fi
        done < <(echo "${BACKUPS}")
        ;;
    *)
        echo No change
        ;;
esac

Haga nota No incluí la verificación del nombre de la computadora en mi script, por lo que si comparte una unidad de respaldo con varias computadoras, es posible que deba agregar una verificación adicional.

    
respondido por el Toland H 09.09.2013 - 13:01
-2

Aquí está paso a paso lo que hice para eliminar mi copia de seguridad anterior

  1. Open Time Machine Disk
  2. Localice y abra la carpeta Backups.backupdb
  3. Ir a ver por fecha y elegir el más antiguo en la parte superior
  4. Seleccione la copia de seguridad que desea eliminar
  5. Abre Teminal y escribe sudo rm -rvf
  6. Arrastre y suelte las carpetas antiguas que desea eliminar en la ventana de la Terminal
  7. Introduzca su contraseña de usuario cuando se le solicite

Ve a tomar un café o mira una película; cuando el proceso haya terminado, es posible que tengas que repetirlo nuevamente en algunas carpetas que no quieras eliminar.

Cuando todas sus carpetas antiguas hayan desaparecido, Time Machine necesita actualizar su base de datos. Aquí hay una forma de forzar la actualización de Time Machine.

  1. Ingrese a Time Machine y vaya a la copia de seguridad más antigua que aún se encuentra en la lista
  2. Selecciónelo y haga clic en el engranaje pequeño y luego elija Eliminar copia de seguridad
  3. Ingrese su contraseña y espere unos minutos
  4. Salga de la interfaz de Time Machine y vuelva otra vez. Ahora debería tener su Time Machine con la copia de seguridad correcta.
respondido por el Maher 18.08.2012 - 22:28
-3

simplemente abre un terminal,

#sudo tmutil disablelocal

esto debería liberar espacio sin eliminar las copias de seguridad de TM

    
respondido por el Brian K 20.02.2013 - 01:18

Lea otras preguntas en las etiquetas