¿Cómo puedo configurar el intervalo de la máquina del tiempo en varios minutos en Mojave?

4

Quiero establecer el intervalo de la máquina del tiempo en 15 minutos, en lugar de 1 hora por defecto de Apple.

Lo que quiero es:

  1. Time machine Intervalo de 15 minutos.
  2. El respaldo de la máquina del tiempo debe respetar el estado de la batería / energía, lo que significa que el respaldo no debe ocurrir mientras no esté conectado a la alimentación.

Lo intenté sudo defaults write /System/Library/LaunchDaemons/com.apple.backupd-auto StartInterval -int 1800pero no funciona.

También intenté deshabilitar csrutily modifiqué /System/Library/LaunchDaemons/com.apple.backupd-helper.plistInterval, Delay, GracePeriod, pero tampoco funciona.

¿Cómo puedo configurar eso en Mojave? (Actualmente se ejecuta 10.14.2)

ik1ne
fuente
csrutiles SIP (Protección de integridad del sistema), y es posible que desee agregar eso para mayor claridad
Sam

Respuestas:

5

NVM lo descubrí.

Este es un buen momento para terminar la respuesta, ¿verdad? ...¿No? Bien, entonces te mostraré cuál era el problema ...

Lo que se requiere para hacer eso en Mojave es:

  1. desactivar csrutil.
  2. sudo vi /System/Library/LaunchDaemons/com.apple.backupd-helper.plist, y luego editar Interval, Delay, GracePeriod. Simplemente los configuré a 1/4 del valor original.
  3. Reinicio . Ibas a volver a habilitar de csrutiltodos modos, ¿verdad?

Después de eso, el panel de control de la máquina del tiempo seguirá diciendo que va a hacer una copia de seguridad 1 hora después de la última copia de seguridad, pero la copia de seguridad automática ocurre 15 minutos más tarde en mi caso.

ik1ne
fuente
Por cierto, nadie sabe lo que estos números Interval, Delay, GracePeriodson en realidad? Les puse 1/4 de su valor original por flojera.
ik1ne
3

Pruebe la utilidad gratuita TimeMachineEditor. Le permite establecer casi cualquier tipo de horario que desee. Mucho más fácil y más versátil que editar archivos manualmente.

usuario128998
fuente
Usado eso antes, funciona muy bien, aunque no lo usé en Mojave ... más 1
Solar Mike
Eso no me permite establecer el intervalo en minutos. Lo sé, es posible configurar la copia de seguridad programada manualmente, pero prefiero hacer una tecla de acceso rápido de copia de seguridad y presionar eso cada vez que guardo un archivo en lugar de agregar 4 * 24 = 96 programaciones.
ik1ne
1
Si su objetivo real es hacer una copia de seguridad cada vez que cambia un archivo, Time Machine no es la herramienta adecuada. Por un lado, no solo hace una copia de seguridad del archivo que acaba de guardar. pero también todos los demás archivos que han cambiado en su disco. Lo que puede generar largos tiempos de respaldo si muchos archivos han cambiado (por ejemplo, archivos del sistema, archivos de caché, etc.). En lugar de Time Machine, te sugiero que uses algo como ChronoSync que se puede configurar para activar una copia de seguridad de una carpeta cada vez que un archivo cambie dentro de esa carpeta. De esa manera solo está haciendo una copia de seguridad de los archivos que ha cambiado personalmente.
user128998
@ user128998 Oh ... nunca he oído hablar de él, y después de leer su descripción, creo que es una solución perfecta para mí (después de editar backupd-helper.plist, en realidad estaba haciendo tmutil listbackupsy tmutil compare A Bexcluir todos los archivos del sistema operativo manualmente). Descargué la versión de prueba y lo intentaré. ¡Gracias!
ik1ne
No uso esa característica de "sincronización en vivo" muy a menudo, pero cuando lo hago, es invaluable. Como recuerdo, es una opción de programación que establezca, y no algo que sea parte del documento de sincronización en sí. Avíseme si tiene problemas para configurarlo.
user128998
1

Si está seguro de que esto es algo que desea hacer, creo que la mejor manera de intentarlo es usar la tmutil(utilidad Time Machine).

Citando man tmutil

iniciar copia de seguridad

Comience una copia de seguridad si aún no se está ejecutando.

Opciones:
--auto Ejecuta la copia de seguridad en un modo similar a las copias de seguridad programadas por el sistema.
--block Espere (bloquee) hasta que finalice la copia de seguridad antes de salir.
- rotación Permitir rotación automática de destino durante la copia de seguridad.
--destination Realiza la copia de seguridad en el destino correspondiente a la ID especificada.

La opción --auto proporciona un mecanismo compatible con el cual activar copias de seguridad "automáticas", similar a las copias de seguridad automáticas programadas por el sistema. Si bien esto no es idéntico a las copias de seguridad programadas por el sistema, proporciona a los programadores personalizados la capacidad de lograr un comportamiento (pero no todo) que normalmente se exhibe cuando se opera en modo automático.

Combina eso con launchdy puedes tmutilcorrer cada 15 minutos, toma esto:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>com.tjluoma.time-machine-intervals</string>
    <key>ProgramArguments</key>
    <array>
        <string>/usr/bin/tmutil</string>
        <string>startbackup</string>
        <string>--auto</string>
        <string>--rotation</string>
    </array>
    <key>RunAtLoad</key>
    <false/>
    <key>StandardErrorPath</key>
    <string>/tmp/com.tjluoma.time-machine-intervals.stderr.log</string>
    <key>StandardOutPath</key>
    <string>/tmp/com.tjluoma.time-machine-intervals.stdout.log</string>
    <key>StartInterval</key>
    <integer>900</integer>
</dict>
</plist>

y guárdelo como ~/Library/LaunchAgents/com.tjluoma.time-machine-intervals.plisty luego cárguelo launchdcon este comando en la Terminal:

launchctl load ~/Library/LaunchAgents/com.tjluoma.time-machine-intervals.plist

Así es como se ve en LaunchControl, que es mi aplicación favorita para trabajar con launchdlistas:

Captura de pantalla de LaunchControl

TJ Luoma
fuente
1

Acabo de pasar un poco de tiempo investigando cómo realizar estas cosas a través de una línea de Terminal, y esto es lo que se me ocurrió.

  1. Todavía necesita deshabilitar SIP (arranque en modo de recuperación presionando CMD + R en el arranque, abriendo la Terminal allí (desde la pestaña Utilidades en la parte superior) y ejecutando csrutil disabley luego reboot)
  2. De vuelta en el sistema operativo principal, el archivo de interés está en /System/Library/LaunchDaemons/com.apple.backupd-helper.plist ingrese la descripción de la imagen aquí

  3. Para modificar, por ejemplo, el valor del intervalo (del valor predeterminado de 1h = 3600 a 2h = 7200), debe ejecutar

/usr/libexec/PlistBuddy -c "Set :LaunchEvents:com.apple.xpc.activity:com.apple.backupd-auto:Interval 7200" /System/Library/LaunchDaemons/com.apple.backupd-helper.plist

Darie H
fuente