1 votos

Lo que podría estar impidiendo que mi script de copia de seguridad de ejecución?

Estoy teniendo problemas para conseguir un simple script de copia de seguridad para que se ejecute. La siguiente secuencia de comandos se ejecuta la mayoría de las veces, pero en ocasiones falla completamente (sin la impresión de que cualquier información de registro). Hay algo en el guión que podría intermitentemente evitar que se ejecute?

Incluso cuando se ejecuta, el registro de pruebas de los mensajes a veces se retrasa en las que aparecen (como si el archivo de registro no se ha tocado, cuando se escribe, o de la escritura en el archivo de registro se retrasa), haciendo difícil el diagnóstico.

#!/bin/bash

printf "`date`: Start of Runkit backup Power Manager script:\n" >> ~/Library/Logs/Mine/tests.log

if [ $(mount | grep -c '/Volumes/Run Kit') != 1 ]
then
    printf "\tDon't copy: /Volumes/Run Kit not mounted\n" >> ~/Library/Logs/Mine/tests.log
else
    if [ $(pmset -g ac | grep -c 'Wattage') != 1 ]
    then
        printf "\tDon't copy: Not plugged in\n" >> ~/Library/Logs/Mine/tests.log
    else
        caffeinate -s -t 1200 &
        printf "\tDo copy: /Volumes/Run Kit mounted\n" >> ~/Library/Logs/Mine/tests.log
        /Users/Rax/Library/Application\ Support/SuperDuper\!/Scheduled\ Copies/SDUtil -i || open file:///Users/Rax/Library/Application\%20Support/SuperDuper\%21/Scheduled\%20Copies/Smart\%20Update\%20Run\%20Kit\%20from\%20Main.sdsp/Copy\%20Job.app
    fi
fi

printf "`date`: End of Runkit backup Power Manager script:\n" >> ~/Library/Logs/Mine/tests.log

exit 0

2voto

Oskar Puntos 1242

En primer lugar, convertir el printf declaraciones a logger -p user.info declaraciones, ya que son fácilmente observados en la aplicación de consola (y syslog) cada vez que se ejecuta la secuencia de comandos.

También puedes hacer una segunda secuencia de comandos que acaba de registros de mensajes de prueba o crea archivos vacíos /usr/bin/touch /tmp/test.$$.log para determinar si la secuencia de comandos anterior es el culpable o el Administrador de Energía de la herramienta que está utilizando no es fiable el lanzamiento de la secuencia de comandos.

También, usted podría tratar de usar una aplicación como Lingon tener launchd inicio de tu script. El sistema utiliza esa instalación para funcionar por sí mismo, por lo que es altamente confiable y de los registros de fallas así que si alguna vez necesita solucionar un problema en el camino.

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