263 votos

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

Utilizo una Time Capsule para hacer copias de seguridad y ahora quiero que la unidad haga una copia de seguridad de los datos de un Mac adicional. Pero la unidad está llena de copias de seguridad antiguas del Mac 1. Simplemente no hay suficiente espacio disponible para la copia de seguridad del 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 seguridad. La copia de seguridad requiere 28,68 GB pero sólo hay 626,2 MB disponibles.

Time Machine necesita espacio de trabajo en el disco de copia de seguridad, además del espacio necesario para almacenar las copias de seguridad. Abra las preferencias de Time Machine para seleccionar un disco de copia de seguridad más grande o hacer la copia de seguridad más pequeña excluyendo archivos.

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

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

3 votos

Teniendo en cuenta lo baratos que son los discos externos, yo estaría tentado de comprar uno y usarlo para tu máquina extra. Yo prefiero los Elements: amazon.com/Western-Digital-Elements-External-WDBAAU0010HBK-NESN/

2 votos

@james.garriss buen punto :) Sin embargo, todavía tengo que cambiar las unidades en mi cápsula del tiempo:)

3 votos

¿Alguien sabe si hay una forma (sin escribir un script) de pedirle a TM que sólo guarde 1 copia de seguridad al mes para las copias de seguridad de más de 1 año?

269voto

Oskar Puntos 1242

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

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

El comando sudo necesita tu contraseña (y no hará eco en la pantalla, así que simplemente escríbela y haz una pausa para asegurarte de que estás saliendo con los archivos correctos antes de pulsar enter). Si quieres estar más seguro, puedes elegir una instantánea para borrarla primero y asegurarte de que el comando funciona como es debido. Esto es bueno, ya que podría llevar horas limpiar algunos conjuntos de copias de seguridad más grandes y quieres dejar al Mac seguro de que está borrando el almacén de información correcto.

Puede utilizar el 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 tmutil se introdujo con Lion, esto no funcionará en versiones anteriores del sistema operativo.

Si quiere obtener el directorio actual de las copias de seguridad (puede haber varios destinos definidos y sólo uno será el "actual")

sudo tmutil machinedirectory

6 votos

Funcionó de maravilla. Tenía copias de seguridad antiguas que eran enormes y estaban desconectadas del conjunto original de la máquina del tiempo debido a cambios en el disco duro. No podía borrarlas con sudo rm (que es una locura), pero esto hizo el truco. Gracias.

0 votos

Tengo un problema en el que el nombre de mi Mac es el mismo, pero cuando tengo un nuevo disco duro tiene un nuevo nombre, y por lo tanto tengo dos directorios diferentes en cada carpeta con marca de tiempo, y me gustaría eliminar sólo las copias de seguridad de mi antiguo disco duro, y no el nuevo. ¿Es esto posible? He intentado usar la ruta de `Volúmenes/nombre_volumen/Backups.backupdb/mac_nombre/YYY-MM-DD-hhmmss/nombre_volumen_antiguo' con tmutil delete pero un error de "Invalid deletion target. (error 64)" ¿Alguna idea sobre cómo eliminar esas copias de seguridad?

0 votos

# man tmutil No hay entrada en el manual para tmutil # tmutil -bash: tmutil: comando no encontrado ¿Dónde está este comando tmutil? ¿Necesito algo más reciente que Snow Leopard para conseguirlo?

94voto

mike rodent Puntos 16

La forma más fácil es:

  1. Entre en time machine (en el Mac cuya copia de seguridad desea eliminar)
  2. Ir al punto en el tiempo que desea eliminar
  3. Seleccione el icono que parece una rueda dentada 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 copias de seguridad sea preciso y que la integridad de sus datos permanezca intacta.

4 votos

@drfrogsplat tiene mucha razón en que usar la GUI que proporciona Apple es la mejor manera (funciona en todas las versiones) de borrar una copia de seguridad y es menos propensa a errores ya que hay múltiples respuestas visuales (si te fijas bien) y una comprobación antes de introducir la contraseña para asegurarte de que eres consciente de que el borrado es permanente.

1 votos

No veo la opción de eliminar la copia de seguridad en mavericks en el menú de la rueda dentada

0 votos

@brainray He publicado la respuesta para mavericks

47voto

Konrad Puntos 8333

Para Mavericks/Yosemite

  1. Introduzca la máquina del tiempo
  2. Seleccione la copia de seguridad
  3. Haga clic con el botón derecho en la copia de seguridad (en la ventana del buscador)
  4. Seleccione "Eliminar copia de seguridad".

Te pedirá la contraseña y ya está.

enter image description here

0 votos

Haga clic con el botón derecho del ratón en la copia de seguridad: ¿dónde?

0 votos

Se le mostrará una ventana del buscador, haga clic con el botón derecho del ratón en el centro de la ventana y se le mostrará una lista de opciones

19 votos

Cabe destacar que Time Machine no realizará los borrados y no te pedirá la contraseña hasta que salida La máquina del tiempo. Y el procedimiento para salir de Time Machine después de seleccionar archivos y carpetas para su eliminación tampoco es obvio: hay que hacer clic en cancel en la esquina inferior izquierda. (Aparentemente, lo que se "cancela" es la restauración de archivos; los borrados aparentemente no se consideran cancelados cuando se hace esto).

23voto

Aaron Puntos 321

Este scriptencontrará automáticamente la copia de seguridad más antigua de TM para su ordenador, le dirá cuál es la copia de seguridad más antigua y la más reciente y le proporcionará un aviso para eliminar la copia de seguridad más antigua. Debe introducir Y e introduzca su contraseña de administrador para eliminarlo.

bash script:

COMPUTER_NAME=$(scutil --get ComputerName)
NBACKUPS=$(tmutil listbackups | grep "$COMPUTER_NAME" | wc -l)
OLDEST_BACKUP=$(tmutil listbackups | grep "$COMPUTER_NAME" | head -n1)
LATEST_BACKUP=$(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: sudo tmutil delete "$OLDEST_BACKUP"
             sudo time tmutil delete "$OLDEST_BACKUP"
             ;;
         *)
             echo No change
             ;;
     esac
 else
     echo "No backup available for deletion"
 fi

0 votos

En resumen, este scriptencontrará automáticamente la copia de seguridad de TM más antigua de su ordenador, le dirá cuál es la copia de seguridad más antigua y la más reciente y le proporcionará un aviso para eliminar la copia de seguridad más antigua. Debe introducir Y e introduzca su contraseña de administrador para eliminarlo.

6 votos

Tenga en cuenta que esto no reducirá automáticamente el tamaño de sus archivos de copia de seguridad sparsebundle. Tendrás que entrar y ejecutar sudo hdiutil compact /path/to/disk-image

14voto

Sangeet Menon Puntos 98

Si Time Machine realmente sólo hace copias de seguridad de las diferencias, borrar en orden inverso no es lo que quieres. Además, dado que cada borrado puede llevar algún tiempo, tener un script que borre el siguiente cuando el actual se complete estaría bien.

Después de Ejemplo de user36971 script arriba, he escrito uno que borrará todas las copias de seguridad desde la especificada y anteriores:

#!/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 comprobación del nombre del ordenador en mi script, así que si compartes una unidad de copia de seguridad con varios ordenadores, puede que tengas que añadir una comprobación adicional.

1 votos

Sólo TM copias de seguridad el delta con cada ejecución, pero mantiene una copia completa por ejecución en el disco de respaldo. Para los archivos que no se modifican entre las ejecuciones (esto significa la mayoría de ellos), sólo se añade una nueva entrada de directorio. Esto podría significar que si sólo tiene pequeños deltas entre ejecuciones, podría tener que borrar muchas copias de seguridad antes de notar un aumento significativo del espacio libre.

3 votos

El orden en que se borren las copias de seguridad no supone ninguna diferencia. De hecho, si utiliza un comodín con tmutil delete para borrar todas las copias de seguridad de un año determinado, las borrará de la más antigua a la más reciente. Y por cierto, usar un comodín es mucho más fácil que usar un script para la mayoría de los casos :)

0 votos

Yo recomendaría añadir printf '%s' "$BACKUPS" antes de la línea de borrado de copias de seguridad para dar una mejor respuesta

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X