Si vous êtes sûr que c'est quelque chose que vous voulez faire, je pense que la meilleure façon de l'essayer est d'utiliser la fonction tmutil
(utilitaire Time Machine).
Citation : man tmutil
startbackup
Lancez une sauvegarde si elle n'est pas déjà en cours.
Options :
--auto Exécute la sauvegarde dans un mode similaire aux sauvegardes planifiées par le système.
--block Attendez (bloquez) que la sauvegarde soit terminée avant de sortir.
--rotation Autoriser la rotation automatique de la destination pendant la sauvegarde.
--destination Effectuer la sauvegarde vers la destination correspondant à l'ID spécifié.
L'option --auto fournit un mécanisme pris en charge permettant de déclencher des sauvegardes "de type automatique", similaires aux sauvegardes automatiques programmées par le système. Bien que ce mécanisme ne soit pas identique aux sauvegardes planifiées par le système, il permet aux planificateurs personnalisés d'obtenir certains comportements (mais pas tous) qui se manifestent normalement lors du fonctionnement en mode automatique.
Combinez cela avec launchd
et vous pouvez avoir tmutil
se déroulent toutes les 15 minutes, prenez ça :
<?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>
et l'enregistrer comme ~/Library/LaunchAgents/com.tjluoma.time-machine-intervals.plist
et ensuite le charger dans launchd
avec cette commande dans le Terminal :
launchctl load ~/Library/LaunchAgents/com.tjluoma.time-machine-intervals.plist
Voici comment cela se présente en LaunchControl qui est mon application préférée pour travailler avec launchd
plistes :