1 votos

Cómo detectar a partir de una secuencia de comandos que un TimeMachine de copia de seguridad se está ejecutando?

Posibles Duplicados:
Hay un comando de bash para comprobar si la Máquina del Tiempo, ha finalizado la copia de seguridad?

Para ejecutar algunos se sincroniza con los servidores remotos a que sus datos sean incluidos en TimeMachine copias de seguridad solía usar un script como el siguiente para evitar la sincronización mientras TimeMachine se ejecuta y no llegar a mitad de sincronizado de copias de seguridad.

La detección parte de la secuencia de comandos que espera hasta que TimeMachine dejado de trabajar en 10.8, así que estoy buscando un trabajo de reemplazo.

#!/bin/sh -x


while ps -e | grep backupd | grep -v grep; do
    echo "Time Machine is running, waiting ..."
    sleep 60
done

El de arriba espera hasta que un TimeMachine ejecutar eso es que ya están en marcha los acabados. Esta es la parte que no funciona en 10.8 ya que backupd se muestra siempre en ps -e de salida. Así que se va a esperar para siempre.

El resto de la secuencia de comandos todavía funciona muy bien y es sólo poner aquí para la referencia, si alguien necesita de conmutación de TimeMachine apagado durante una secuencia de comandos y, a continuación, de forma segura de nuevo después.

save=`defaults read /Library/Preferences/com.apple.TimeMachine AutoBackup | sed -e 's/0/false/' | sed -e 's/1/true/'`

Esta es una solución para el hecho de que los valores predeterminados de leer da 0 y 1 para bools, pero los valores predeterminados de escribir sólo acepta true y false

echo "Saved Time Machine state: AutoBackup = $save"

trap "echo 'Restoring Time Machine state'; defaults write /Library/Preferences/com.apple.TimeMachine AutoBackup -bool $save" EXIT HUP INT QUIT ABRT TERM

Aquí podemos restaurar la antigua momento el estado de la máquina cuando el script se detiene por cualquier razón, no desea activar accidentalmente la máquina del tiempo, fuera y nadie se da cuenta.

defaults write /Library/Preferences/com.apple.TimeMachine AutoBackup -int 0

Interruptor de TimeMachine fuera, no sé por qué -int 0 trabaja aquí tal vez toda la sed negocio no es realmente necesario ya? Creo que cambia el valor predeterminado de tipo int que está bien (?)

# ... script that does some remote syncing with other machines while time machine is not running

1voto

Oskar Puntos 1242

No es un duplicado de la cuestión referente a esto, pero la respuesta es tmutil status le dirá cualquier momento una copia de seguridad en curso así como los detalles acerca de la copia de seguridad.

Usted puede utilizar tmutil, a continuación, desactivar las copias de seguridad si lo desea, o incluso leer la lista de copias de seguridad de modo que usted puede predecir cuántos minutos para la siguiente copia de seguridad programada. Teníamos algo similar y, a continuación, simplemente decidieron iniciar una copia de seguridad cuando la copia de los acabados, de modo que si es o no una copia de seguridad estaba en progreso - tenemos una fuerte posibilidad de una constante de copia de seguridad al final de la operación de copia.

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