PDA

View Full Version : Problema script backup con crontab


bones
21-12-2007, 11:08
Ciao a tutti!
Mi sono creato questo script di backup per la partizione di root (copiando parti di codice a destra e a manca perché ci capisco poco).

#! /bin/bash

DATE=`date '+%Y-%m-%d'`

mount /dev/sde1 /mnt/system

# Create TAR file
tar -zcvpf /mnt/system/$DATE.tar.gz --directory / \
--exclude=mnt --exclude=proc --exclude=home .

## Check that TAR exits without errors before deleting old backups
# if [ $? -ne 0 ];
# then echo 'ERROR!!!';
# exit 255;

# else

# Delete any backups older than 15 days
find /mnt/system/ -ctime +15 -delete;
# fi;

umount /dev/sde1

La parte di "Check that TAR exits without errors before deleting old backups" l'ho commentata perché tutte le volte mi restituisce errore... è scritta giusta secondo voi?

Il problema principale è che se lo lancio da linea di comando, mi crea un file tar di 575.828.611 bytes ma se lo lascio lanciare in automatico da crontab mi crea un file di 276.925.572 bytes!!! Come mai?

Questo è quello che ho scritto dentro crontab

* 4 * * * root sh /home/massimo/Backup/system_backup.sh >>/home/massimo/Backup/system_backup_log.txt



Vi ringrazio anticipatamente per le vostre risposte :)

vizzz
21-12-2007, 12:26
# Create TAR file
tar -zcvpf /mnt/system/$DATE.tar.gz --directory / \
--exclude=mnt --exclude=proc --exclude=home .




il . nel comando tar significa che mette nell'archivio tutti i file che trova nella cartella locale, controlla cosa mette nell'archivio in automatico e nel caso specifica il percorso.

bones
21-12-2007, 14:38
Grazie mille!!!

Ho cambiato la parte del tar con
# Create TAR file
tar -zcvpf /mnt/system/$DATE.tar.gz \
--directory / \
--exclude=mnt --exclude=proc --exclude=home --exclude=sys \
/


e adesso funziona alla perfezione! ^^
Ho provato a decommentare la parte del controllo dell'integrità del tar e funziona anche quella! :D

Grazie mille di nuovo!