Burstnet Informatica
ESERCITAZIONE BACKUP CON
LINUX
1
USO DI TAR
realizzare il backup su un
sistema linux potete sfruttare il
programmaTAR.
 Tar è un programma che nasce per
memorizzare o estrarre file da un
nastro o da un archivio.
Burstnet Informatica
 Per
2
USO DI TAR

I parametri più importanti che si possono
utilizzare con tar sono:



Burstnet Informatica

-c: equivale a “create”, serve a creare un nuovo
archivio
-x: equivale a “extract”, serve a estrarre i file da un
archivio
-t: equivale a “list”, visualizza il contenuto di un
archivio
--exclude=PATTERN: serve ad escludere il
salvataggio dei file specificati in PATTERN
3
USO DI TAR





Burstnet Informatica
-f ARCHIVE: equivale a “file”, permette di
specificare il dispositivo o il file dentro il quale
deve essere memorizzato il backup oppure, in caso
di estrazione, dal quale recuperare il backup.
-j:comprime l'archivio con il comando “bzip2”
--overwrite: sovrascrive i file esistenti quando
l'archivio viene estratto
-z: comprime l'archivio con il comando “gzip”
-C DIR: equivale a “directory”, indica dentro quale
directory estrarre il contenuto dell'archivio.
4
USO DI TAR
TEST:
Burstnet Informatica

Crare un archivio chiamato “test.tgz”, contenente
le directory /etc e /home/laboratorio compresso in
formato gzip:
5
USO DI TAR
tar -czf test.tgz /etc /home/laboratorio
 Il tar è stato così composto:
 comando tar
 parametro “c” per la creazione di un nuovo archivio
 parametro “z” per la compressione con gzip
 parametro “f” seguito dal nome dell'archivio
 /etc e /home/laboratorio sono le directory che vogliamo
salvare.

Burstnet Informatica
6
USO DI TAR
estrarre l'archivio test.bz2, compresso in formato “bzip2”
dentro la cartella /var/www:
 tar -xjf test.bz2 -C /var/www/
 Il tar è stato così composto:





Burstnet Informatica

comando tar
parametro “x” per l'estrazione dell'archivio
parametro “j” per la decompressione con bzip2
parametro “f”seguito dal nome dell'archivio per indicare quale
archivio estrarre
parametro “-C” seguito dal nome della cartella di destinazione,
per indicare dove deve essere estratto l'archivio
7
USO DI TAR
Backup totale con tar:
Burstnet Informatica
 tar
-czf <archivio di destinazione>
<elenco cartelle da salvare>
 Es.
tar -czf backup.tgz /etc /home
/var
8
USO DI TAR
 Restore
totale con tar
Burstnet Informatica
 tar
-xzf <archivio compresso> -C
<destinazione dell'estrazione>
 Es.
tar -xzf backup.tgz -C /
9
USO DI TAR
Burstnet Informatica
Backup incrementale con tar
 Comando:
 tar -czf <file archivio> --listed-incremental=<file
di log> <elenco cartelle da memorizzare>
 Con questo comando, si crea un archivio
contenente solamente i file che non sono stati
memorizzati precedentemente dallo stesso
comando. Il file di log indicato nel parametro
listed-incremental, viene aggiornato da tar con i
nuovi file inseriti nell'archivio.
10
USO DI TAR
Es. Backup incrementale della cartella /dati
 sudo -s
 rm –r backup
 mkdir /dati
 mkdir /backup
 touch /dati/test1
 tar -czf /backup/archivio_`date +%d-%m-%y`.tgz -listed-incremental=/var/log/backup.log /dati
 Verfichiamo che nella cartella /backup sia presente il
nostro backup.

Burstnet Informatica
11
USO DI TAR
NB: il comando date è racchiuso dentro un'apice
rovesciata (`) e non dentro un'apice semplice (')
 Come ulteriore test creiamo:
 touch /dati/test2
 E rilanciamo il comando per eseguire il backup
incrementale.
 Decomprimiamo il file creato e verifichiamo che
nell’archivio decompresso sia presente solo il file
test2.

Burstnet Informatica
12
USO DI TAR
 Ad
Burstnet Informatica
ogni esecuzione del comando viene creato il file
di archivio, comprensivo della data odierna
ottenuta attraverso il comando date (vedere “man
date”), contenente solamente i file aggiunti nella
cartella /home dall'ultima volta che è stato
eseguito lo stesso comando di tar.
 Per ripristinare i backup incrementali è sufficiente
estrarre uno ad uno, in ordine cronologico, tutti gli
archivi contenuti nella cartella di backup.
 Attenzione: tar non riesce a verificare eventuali
file cancellati, ma solo quelli nuovi o modificati;
quelli eliminati rimarranno pertanto all'interno
del backup.
13
USO DI TAR
Burstnet Informatica
Effettuare backup incrementali giornalieri e backup
totale a inizio settimana
 Prima di tutto creare lo script che esegua il comando
di backup incrementale:
 backup.sh:
 #!/bin/bash
tar -czf /backup/archivio_`date +%d-%m-%y`.tgz -listed-incremental=/var/log/backup.log /dati
 Successivamente bisognerà assegnare allo script i
permessi di esecuzione, come fare?
14
USO DI TAR
E' importante notare che se il file di log è assente
o vuoto, il tar effettuerà il backup totale della
cartella da memorizzare; utilizzeremo questo
stratagemma per effettuare il backup totale a
inizio settimana.
 Per far sì che il comando venga eseguito ogni
giorno ad un preciso orario dobbiamo affidarci al
programma “crontab”. Questo programma
permette di memorizzare quando eseguire un
determinato comando.

Burstnet Informatica
15
USO DI TAR
Eseguendo crontab -e entriamo nella
configurazione di crontab
 Ogni linea indica un'operazione che verrà eseguita
in automatico.
 Se la linea è preceduta dal carattere #, significa
che è commentata, quindi non verrà eseguita.
 Le linee di configurazione di crontab sono formate
da 6 valori:

Burstnet Informatica
16
USO DI TAR
m
Burstnet Informatica
(minute): indica il minuto nel quale deve
essere eseguita l'operazioni (valori da 0 a 59)
 h (hour): indica l'ora nel quale eseguire il
comando (valori da 0 a 23)
 dom (day of month): indica il giorno del mese
nel quale eseguire (da 1 a 31)
 mon (month): indica il mese nel quale
eseguire (da 1 a 12)
 dow (day of week): indica il giorno della
settimana (da 0 a 6, 0 è domenica e 6 è
sabato)
 command: il comando da eseguire
17
Burstnet Informatica
USO DI TAR
 I primi 5 campi possono essere formati da un
singolo valore numerico oppure possono essere
utilizzati degli operatori per specificare valori
multipi:
 “,”, permette di specificare una lista di valori,
ognuno separato dalla virgola Es: 1,3,5
 “-”, permette di specificare un intervallo di
valori Es. 1-4
 “*”, specifica tutti i valori possibili
18
USO DI TAR
Tornando al sistema di backup che stavamo
progettando sarà necessario inserire due righe di
istruzioni dentro crontab:
 la prima serve a eliminare il file di log ogni lunedì
alle ore 0:30, prima che venga effettuato il nuovo
backup; in tal modo il backup sarà completo di
tutta la cartella /home
 30 0 * * 1 rm /var/log/backup.log

Burstnet Informatica
19
USO DI TAR
la seconda invece serve ad eseguire ogni giorno il
comando di backup all'1 di notte:
 1 0 * * * /script/backup.sh
 nel caso volessimo eseguire il backup soltanto
durante i giorni lavorativi, dovrà essere
modificato in:
 1 0 * * 1-5 /script/backup.sh

Burstnet Informatica
20
Scarica

Black and White - CESCOT