Antecedentes
Eu gostaria de usar o Borg Backup como uma solução de backup para o meu servidor Ubuntu. Eles oferecem um script sh muito conveniente que dizem que você pode simplesmente executar como um cron job , mas não está funcionando para mim.
Problema
Como eu automatizo o backup borg? Se a melhor maneira é usar o cron, então o que há de errado com a minha imputação?
Dados
Crontab do Root:
# 5 2 * * * sh /home/***/Scripts/borgBackup_run.sh >/dev/null # Back up the root partition daily (2:05a)
* * * * * sh /home/***/Scripts/borgBackup_run.sh >/dev/null # Test the script
borgBackup_run.sh:
Modificado do original para ser muito básico:
#!/bin/sh
echo 'Starting backup now...' >>
/home/***/Logs/borgBackup_create.log
#/usr/bin/borg create --verbose --filter AME --list --stats --show-rc --compression lz4 --exclude-caches --one-file-system --exclude-from ~/Scripts/borgBackup_exclude.txt /mnt/RootBackup/borg::'{hostname}-{now:%Y-%m-%d}' /
/usr/bin/borg create /mnt/RootBackup/borg::cronTest /home/***/Logs/ # Backup a small folder as a test
echo 'Done.' >> /home/***/Logs/borgBackup_create.log
"ls -l ~ / Scripts / borgBackup_run.sh"
-rwxr-xr-x 1 root root 455 Sep 27 12:34 Scripts/borgBackup_run.sh
Notas:
Quando borgBackup_run.sh
é executado a partir da linha de comando, como: sudo Scripts/borgBackup_run.sh
, o script funciona perfeitamente, criando um novo arquivo morto em /mnt/RootBackup/borg
.
Além disso, após cada minuto (quando o cronjob é executado), o arquivo .log em /home/***/Logs/borgBackup_create.log
mostra os dois Starting backup now...
e Done.
, indicando que o script foi executado até o final, mas o borg não funcionou alguma razão.
Eu tentei remover sh
do arquivo crontab, usando bash
e alterando o interobang para #!/bin/bash
em vez de #!/bin/sh
. Eu também tentei envolver a linha /user/bin/borg create ...
line em borgBackup_run.sh
in bash -c "..."
.
Qualquer ajuda seria muito apreciada!