PDA

View Full Version : Script di backup


DigitalKiller
21-12-2006, 16:44
Vorrei scrivere un piccolo script che, eseguito giornalmente, invii via mail il backup di un server debian installato in ufficio.
Dato che non sono molto pratico di programmazione bash, mi potreste dare una mano? Di quali file mi conviene fare il backup? Oltre alla /etc, al dump di mysql ed all'elenco dei pacchetti installati, devo fare il backup di altro? Avete altri suggerimenti?


Dai ragazzi, su....Natale è alle porte e bisgna essere più buoni verso il prossimo! :D :sofico:

Grazie a tutti! :)

Poix81
21-12-2006, 19:01
hai gia' fatto l'immagine completa del sistemasu cd/dvd? intando inizierei con quella.

per i file da copiare dipende da cosa hai installato, per esempio server web,...

ciao ciao

DigitalKiller
21-12-2006, 21:48
hai gia' fatto l'immagine completa del sistemasu cd/dvd? intando inizierei con quella.

per i file da copiare dipende da cosa hai installato, per esempio server web,...

ciao ciao

Il server non è ancora del tutto configurato. Sto trasferendo pian piano i servizi dal vecchi server al nuovo ed al tempo stesso ne sto testando la stabilità. Una volta finito questo trasferimento creerò un'immagine su cd/dvd. Nel frattempo, però, vorrei attivare ugualmente questo backup :D

DigitalKiller
22-12-2006, 12:25
Questo è lo script che ho scritto

#!/bin/sh

# Directory log
LOG=/var/log

# Inizializzazione file di log
date -u > $LOG/backup.log

# Creazione lista pacchetti installati

echo "Creazione elenco pacchetti installati..." >> $LOG/backup.log
dpkg --get-selections "*"> /home/digitalkiller/package-selections

# Dump database Mysql
echo "Dump dei databse MySQL..." >> $LOG/backup.log
mysqldump -u root -pFcs49DAQ --all-databases > /home/digitalkiller/mysql_dump.sql

# Tar di /etc
echo "Backup file di configurazione..." >> $LOG/backup.log
tar -cvpzf etc.tar.gz /etc --exclude=/etc/dansguardian/blacklists/* >> $LOG/backup.log

# Creazione allegato email
echo "Creazione allegato email..." >> $LOG/backup.log
tar -cvzpf backup-`date +%d-%m-%Y`.tar.gz etc.tar.gz package-selections mysql_dump.sql >> $LOG/backup.log

echo "Invio dell'email..." >> $LOG/backup.log
mpack -s "Backup del giorno `date +%d-%m-%Y`" backup-`date +%d-%m-%Y`.tar.gz digitalkiller@gmail.com

# Cancellazione lista pacchetti installati
rm /home/digitalkiller/package-selections

# Cancellazione dump Mysql
rm /home/digitalkiller/mysql_dump.sql

# Cancellazione backup etc
rm /home/digitalkiller/etc.tar.gz

# Cancellazione allegato
rm /home/digitalkiller/backup-`date +%d-%m-%Y`.tar.gz

# Chiusura log
savelog $LOG/backup.log > /dev/null 2>&1

Avete suggerimenti? Critiche? :D