Salvare dati su un server di backup (Linux)
In questo articolo ti mostriamo come eseguire automaticamente il backup e il ripristino di dati su un server di backup. Nello script shell qui sotto, che è mostrato come esempio, ti spieghiamo anche come utilizzare FTP Storage come server di backup.
Modifica backupXX.pureserver.info, NOME UTENTE DEL BACKUP e PASSWORD DEL BACKUP di conseguenza.
Nota bene:
Questo metodo di backup non è adatto per un backup completo di tutti i dati sul server!
Creare un backup con uno script shell
Crea il file .netrc come root. Imposta i permessi in modo che solo root possa visualizzare e modificare il file. [root@host ~]# touch /root/.netrc
[root@host ~]# chmod 600 /root/.netrc Successivamente aggiungi le seguenti voci a /root/.netr:machine backupXX.onlinehome-server.info
login NOME UTENTE DEL BACKUP
password PASSWORD DEL BACKUP
macdef backup
put $1 $2
put $1.md5 $2.md5
quit
Nota bene:
La parola quit nell'ultima riga deve essere seguita da una riga vuota.
L'archivio di backup viene memorizzato sul server prima del backup. Questo dovrebbe essere fatto nella cartella /home:
[root@host ~]# mkdir /home/backup
[root@host ~]# chmod 700 /home/backupLo script di backup stesso è memorizzato su /root/bin/simple-backup.sh. Crea la directory /root/bin se questa non esiste già.
[root@host ~]# mkdir /root/bin Crea lo script di backup e salvalo come /root/bin/simple-backup.sh.#!/bin/sh
# Nome del file di backup
BACKUP_FILE="backup.tar.gz"
# posizione di memoria temporanea dell'archivio di backup
BACKUP_TMP="/home/backup/"
# percorso completo al backup
BACKUP=${BACKUP_TMP}${BACKUP_FILE}
# Directory che devono essere salvate
# in questo esempio sono le e-mail e i siti web del cliente
BACKUP_DATA="/home/htdocs /var/spool/mail"
# Nome host del server di backup
BACKUP_SERVER="backupXX.pureserver.info"
# fare il backup dell'UMASK vecchio
UMASK=`umask`
umask 0077
tar --exclude=${BACKUP} -czf ${BACKUP} ${BACKUP_DATA} 2>/dev/null
md5sum ${BACKUP} > ${BACKUP}.md5
echo "\$ backup ${BACKUP} ${BACKUP_FILE}" | pftp ${BACKUP_SERVER} >/dev/null
rm -f ${BACKUP} ${BACKUP}.md5
umask ${UMASK}Nella riga BACKUP_SERVER="backupXX.onlinehome-server.info" inserisci il nome host del server di backup.Assegna allo script i diritti corretti:
[root@host ~]# chmod 700 /root/bin/simple-backup.shÈ possibile impostare un cronjob per automatizzare il backup. Per farlo, crea il file /etc/cron.d/simple-backup. Qui inserisci il cronjob per un backup giornaliero nel seguente formato:
MINUTO ORA * * * root /root/bin/simple-backup.sh Per MINUTO (0-59) e ORA (0-24), imposta l'ora desiderata per il backup.
Nota bene:
Quando si esegue il backup sul server FTP, l'ultimo backup sul server viene sovrascritto.
Ripristinare un file di backup
Se lo desideri, puoi ad esempio copiare il backup dal server di backup e successivamente decomprimere il file nel tuo server:
[root@host ~]# curl ftp://NOME UTENTE DEL BECKUP:PASSWORD DEL BACKUP@backup443.onlinehome-server.info/backup.tar.gz > backup.tar.gz
[root@host ~]# tar -xvf backup.tar.gz