Ciao Linux Geeks, se stai cercando strumenti di backup da riga di comando gratuiti su sistemi Linux, il comando tar è la soluzione per te. Il comando Tar può creare backup della tua applicazione, file di configurazione e cartelle del sistema.
Tar sta per "archivio nastro" e può archiviare più file e directory in un file tar. Questo tar può anche essere compresso usando l'utilità di compressione gzip e bzip2. Una volta che abbiamo un backup tar pronto, possiamo trasferirlo facilmente su un server di backup remoto usando i comandi scp o rsync.
In questo post, dimostreremo come creare backup con il comando tar in Linux.
Come si crea un file di backup tar?
Per creare un file di backup tar, prima identifica i file e le cartelle che farebbero parte del tuo backup. Supponiamo di voler eseguire il backup della cartella /home/linuxtechi, /etc e /opt. Esegui il seguente comando tar,
$ tar
$ sudo tar -cvpf system-back.tar /home/linuxtechi /etc /opt
Questo creerà un tar ball nella directory di lavoro attuale. Nel comando tar sopra, abbiamo usato le seguenti opzioni
- c – Crea nuovo archivio
- v – mostra un output dettagliato durante la creazione del file tar
- f – nome del file di archivio
- p – conserva le autorizzazioni
Come hai visto, non abbiamo utilizzato alcuna opzione di compressione per comprimere il file tar. Quindi, per comprimere il file di backup tar durante l'archivio, usa -z (compressione gzip) o -j (compressione bzip2)
Creazione di backup tar insieme alla compressione gzip
Usa 'z' nel comando tar per usare la compressione gzip. Questa volta il file di backup tar avrà estensione .tgz o .tar.gz
$ sudo tar -zcvpf system-back.tgz /home/linuxtechi /etc /opt
Creazione di backup tar insieme alla compressione bzip
Usa l'opzione 'j' nel comando tar per usare la compressione bzip2, questa volta il file di backup tar avrà l'estensione .tbz2 o .tar.bz2
$ sudo tar -jcvpf system-back.tbz2 /home/linuxtechi /etc /opt
Come aggiungere un file al backup tar?
Per aggiungere un file al file di backup tar esistente, usa l'opzione '-r', completa il comando come segue:
Sintassi:$ tar -rvf {tar-backup} {new-file-to-be-appended}
Supponiamo di voler aggiungere il file /root/app.yaml a system-backup.tar, eseguire
$ sudo tar -rvf system-back.tar /root/app.yaml
Nota:non possiamo aggiungere file o cartelle al backup tar compresso in quanto non è supportato.
Come escludere un file durante la creazione del backup tar?
Per escludere un file durante la creazione del backup tar, utilizzare l'opzione '-X' seguita dal file di esclusione. Per utilizzare la funzione di esclusione, dobbiamo creare un file di esclusione che avrà il nome del file da escludere.
$ cat exclude.txt /etc/debconf.conf /etc/hosts $
Esegui il comando seguente per escludere i file menzionati in exclude.txt durante la creazione del backup tar di /etc
$ sudo tar -X exclude.txt -zcpvf etc-backup.tgz /etc
Come visualizzare il contenuto del backup tar?
Per visualizzare il contenuto del backup tar, utilizzare l'opzione '-t', le opzioni complete sarebbero '-tvf'. L'esempio è mostrato di seguito:
$ sudo tar -tvf system-back.tgz | grep -i etc/fstab -rw-rw-r-- root/root 665 2021-07-07 04:57 etc/fstab $
Come estrarre il backup tar?
Usa l'opzione '-x' nel comando tar per estrarre il backup tar, l'opzione completa sarebbe '-xpvf'. L'esempio è mostrato di seguito
$ sudo tar -xpvf system-back.tgz
Questo comando estrarrà system-back.tgz nella directory di lavoro corrente. Nel caso in cui desideri estrarlo in una cartella particolare, usa l'opzione "-C" seguita dal percorso della cartella. Nell'esempio seguente stiamo estraendo system-back.tgz nella cartella /var/tmp.
$ sudo tar -xpvf system-back.tgz -C /var/tmp/ $ ls -l /var/tmp/
Come verificare l'integrità del backup tar?
Per tar ball, usa l'opzione '-tf' e reindirizza l'output al file /dev/null,
$ tar -tf system-back.tar > /dev/null
Se il comando precedente non genera alcun output sullo schermo, possiamo dire che non c'è corruzione.
In caso di danneggiamento, otterremo l'output come di seguito,
Per verificare l'integrità del backup tar compresso, utilizzare seguente
Per .tgz / .tar.gz
$ gunzip -c system-back.tgz | tar -t > /dev/null
Per .tbz2 / .tar.bz2
$ tar -tvf system-back.tbz2 > /dev/null
I comandi sopra non dovrebbero produrre alcun output sullo schermo. Nel caso in cui sia presente un output, possiamo dire che potrebbe esserci un danneggiamento nel backup tar compresso.
Questo è tutto da questo post, spero che tu l'abbia trovato informativo. Condividi il tuo feedback e le tue domande nella sezione commenti qui sotto.