Per prima cosa creiamo la directory che ospiterà il backup:
(un backup ha senso se fatto su un disco differente, se lo facciamo su una partizione dello stesso disco che ospita i file originali in caso di rottura dello stesso perdiamo anche il backup)
mkdir /percorso/directory
Adesso creiamo lo script:
gedit nome_dello_script.sh
Nel file vuoto inseriamo il testo seguente:
#!/bin/sh
echo "ESECUZIONE BACKUP NOME_CARTELLA"
ls /percorso/della/cartella
rsync -vurt --progress --delete /percorso/della/cartella/ /percorso/del/backup/
echo "BACKUP NOME_CARTELLA COMPLETATO!"
Salviamo il file (io ho una directory 'script' nella mia home utente) e rendiamolo eseguibile:
chmod 755 nome_dello_script.sh
Infine lanciamolo con:
./nome_dello_script.sh
E' possibile inserire più di un percorso nello script, per sincronizzare più directory.
Per eseguire backup a intervalli regolari possiamo inserire lo script in cron.
Nota: per un corretto funzionamento si consiglia di NON usare partizioni FAT o NTSF
ATTENZIONE: il backup è sincrono: i file eliminati dalla directory
originale verranno rimossi anche nella destinazione!
eliminare l'opzione --delete dallo script per eseguire un backup
asincrono
per approfondimenti su rsync: digitare man rsync nel terminale