O script bash de backup não está gzipping seu tarball

3

Eu tenho um script bash que é executado como um cron para fazer backup de arquivos no servidor.

#!/bin/bash
FILE=/path/to/backup_$(date +%Y%m%d).tar
tar -cf $FILE /backup/this /and/that /and/someotherfiles
gzip $FILE

Quando executo o script diretamente usando:

sudo bash ./backup-files.sh

Ele gzip o arquivo, mas ontem à noite, quando o cron rodou, ele o deixou como um tar. O cron salvaria um log em algum lugar que apontasse para o motivo?

    
por bcmcfc 29.07.2010 / 10:40

3 respostas

6

A partição onde o backup está localizado em seus limites?

Seu script criou o tarball, mas o gzip não tinha espaço para compactá-lo.

(você pode combinar os dois comandos com o sinalizador -z para tar)

Opa, esqueci uma coisa: adicione -v flag ao seu comando tar. Ele irá mostrar o que faz.

    
por Pierre-Yves Gillier 29.07.2010 / 10:43
6

Como Pierre mencionou, você pode querer usar o sinalizador -z. Geralmente, eu sempre uso tar zcvfP para fazer backup de diretórios inteiros e preservar sua estrutura e permissões. O v flag também está lá, também é útil.

    
por TuxSax 29.07.2010 / 11:37
3

Se acontecer de novo que o seu script não faça o que você deseja, adicione set -x ao seu script. Ele produzirá exatamente o que ele faz e essa saída é útil para encontrar bugs. Se você chamá-lo como um cronjob, certifique-se de que $EMAIL esteja definido como apropriado.

    
por qbi 29.07.2010 / 13:21