Per non rischiare la perdita di dati il backup dei tuoi dati preziosi dalla riga di comando di Linux è la soluzione ideale. Utilizzeremo il rsync comando per questo, e abbiamo anche trovato alcune belle interfacce grafiche opzionali per questo.
rsync è il migliore per i backup
Esistono molti modi per eseguire una copia di backup dei file. Volevamo mostrarti un modo robusto, flessibile e affidabile per proteggere i tuoi dati. Noi scegliamo rsync a causa del suo algoritmi di tutto rispetto che calcolano le differenze tra i file nella directory di origine e nella directory di destinazione. Vengono trasferite solo le differenze tra due versioni di un file, non l’intero file se ciò può essere evitato.
Se a questa efficienza si aggiunge la solida esperienza nell’esecuzione di copie di file e sincronizzazioni di directory sin dalla metà degli anni ’90, rsync è un candidato perfetto per creare backup dalla riga di comando di Linux.
Inoltre, esistono programmi software indipendenti che fungono da front-end per rsync. Forniscono interfacce utente grafiche (GUI) a rsync che alcune persone potrebbero trovare più facile da usare.
Più è semplice e veloce eseguire un backup, maggiori sono le probabilità che lo facciate.
Utilizzo di rsync con un disco rigido esterno
Per effettuare una copia di backup dei tuoi dati su un disco rigido esterno, il disco rigido deve essere montato e accessibile. Se puoi scrivergli, allora puoi farlo anche tu rsync. In questo esempio, un disco rigido USB esterno chiamato SILVERXHD (per “Silver eXternal Hard Drive”) è collegato al computer Linux. È stato montato automaticamente dal sistema operativo.
Sarà necessario conoscere il percorso dell’unità. In GNOME, apri il browser dei file Nautilus e individua il nome dell’unità nella barra laterale.
Passa il puntatore del mouse sul nome dell’unità esterna e una descrizione comando ti mostrerà il percorso dell’unità.
In questo esempio, la descrizione comando ci informa che il punto di montaggio per il file system sull’unità esterna è “https://www.howtogeek.com/media/dave/SILVERXHD”.
Se il tuo browser di file non esegue questa operazione, vai all’unità esterna e apri una finestra di terminale in quella posizione. Utilizzare il comando pwd per stampare il percorso della finestra del terminale.
Copia del contenuto dalla directory di origine
Usare rsync per copiare il contenuto di una directory nella destinazione del backup, utilizzare il comando seguente. L’opzione -r (ricorsiva) provoca rsync per copiare tutte le sottodirectory nidificate e il loro contenuto. Tieni presente che alla fine della parola “SILVERXHD” è presente una barra “https://www.howtogeek.com/”, ma è passata alla riga successiva nello screenshot.
rsync -r /home/dave/Documents/ /media/dave/SILVERXHD/ La copia del file viene eseguita e si torna al prompt della riga di comando.
Se guardiamo l’unità USB esterna, vediamo che le directory che si trovano nella directory Documenti sono state copiate nella radice dell’unità esterna.
ls
Copia della directory di origine e dei suoi contenuti
Se desideri che la directory Documenti e i suoi contenuti vengano copiati sull’unità esterna, rimuovi “https://www.howtogeek.com/” dalla fine di “/home/dave/Documents” nella riga di comando, come Questo:
rsync -r /home/dave/Documents /media/dave/SILVERXHD/ Per evitare confusione, ho rimosso le due directory precedentemente copiate dal disco esterno prima che venisse eseguito questo secondo comando.
Se lasciamo completare la seconda copia e diamo un’altra occhiata all’unità esterna, vediamo che la directory Documenti è stata copiata. I suoi contenuti sono all’interno di quella directory. Non si trovano nella radice dell’unità esterna.
Copia in una directory di destinazione specifica
Per copiare in una directory specifica sul disco rigido di destinazione, aggiungere il nome della directory al percorso di destinazione. Supponiamo di voler copiare il contenuto della directory “https://www.howtogeek.com/home/dave/Documents” in una directory chiamata “backups” sul disco esterno.
Lo faremo con il seguente comando.
rsync -r /home/dave/Documents/ /media/dave/SILVERXHD/backups/ Controllando sull’unità esterna possiamo vedere che la directory dei backup è stata creata e all’interno di quella directory sono presenti i contenuti della directory “https://www.howtogeek.com/home/dave/Documents”.
ls ls backups
Conservazione della proprietà e delle autorizzazioni dei file
Usa il -a (archivio) opzione per preservare gli attributi dei file come date di modifica, proprietà dei file, autorizzazioni di accesso e altro, per file copiati, collegamenti simbolici e file di blocco speciali.
rsync -ra /home/dave/Documents/ /media/dave/SILVERXHD/backups/
Utilizzo della modalità dettagliata
IL -v (verboso) forze di opzione rsync per elencare i file mentre vengono copiati.
rsync -rav /home/dave/Documents/ /media/dave/SILVERXHD/backups/ Al termine della copia viene presentato un riepilogo del backup.
- Inviati: i byte trasferiti alla destinazione.
- Ricevuto: i byte ricevuti dall’host.
- Byte/sec: è la velocità di trasferimento effettiva.
- Dimensione totale: rappresenta la dimensione dei dati che sarebbero stati inviati se non li avessi utilizzati rsync. Nelle esecuzioni successive di rsync trasferirà solo le differenze tra i file. Questa cifra rappresenterà i dati che non dovevano essere trasferiti.
- Accelerazione: questo è il rapporto tra la quantità di dati che dovevano essere inviati e la quantità totale di dati presenti. Se rsync deve copiare tutti i file nella loro interezza (la prima volta che viene eseguito, ad esempio) l’aumento di velocità sarà 1.0. Quando rsync verrà utilizzato successivamente, ottimizzerà i trasferimenti. Invierà solo le differenze tra i file, non i file interi. I file senza modifiche verranno ignorati. La cifra di accelerazione rappresenterà il rapporto tra la piccola quantità di dati che era necessario trasferire rispetto alla dimensione totale dei file.
Utilizzo dell’opzione Progresso
IL -P (progresso) cause dell’opzione rsync per generare un piccolo rapporto sullo stato di avanzamento dopo che ogni file è stato copiato.
rsync -raP /home/dave/Documents/ /media/dave/SILVERXHD/backups/ Le informazioni fornite possono essere visualizzate tra ogni file copiato.
Le informazioni fornite sono:
- Dimensione byte: dati trasferiti per questo file.
- Percentuale: percentuale del file trasferito.
- B/s: velocità di trasferimento dati.
- Tempo rimanente: tempo stimato rimasto per trasferire questo file.
- xfr#: il numero di file trasferiti finora.
- to-chk: il numero di file rimasti da controllare e verificare dagli algoritmi di ottimizzazione.
Aggiungere più velocità
Per velocizzare i trasferimenti, utilizzare il file -z (compressione). Ciò comprime il file durante il trasferimento, ma il file viene archiviato non compresso nella directory di destinazione.
L’opzione di compressione non offrirà vantaggi significativi per i trasferimenti che coinvolgono molti file di piccole dimensioni. Per raccolte di file più grandi, può ridurre significativamente il tempo di trasferimento.
Stiamo anche utilizzando il –partial opzione qui. rsync eliminerà i file parzialmente trasferiti causati da problemi di rete o altre interruzioni. IL –partial forze di opzione rsync per lasciare i file parzialmente trasferiti sulla destinazione. Il tempo netto rsync eseguito non dovrà ritrasferire le porzioni di file parzialmente trasferite.
Tieni presente che potresti non voler utilizzare questa opzione se esiste il rischio che qualcuno confonda i file parzialmente trasferiti con file completamente trasferiti.
rsync -ravz –partial /home/dave/Documents/ /media/dave/SILVERXHD/backups/ Nel nostro esempio, i benefici sono marginali.
Il rapporto di accelerazione è migliorato ma di due centesimi di punto percentuale! In uno scenario reale, i miglioramenti della velocità saranno più impressionanti.
Utilizzo di rsync su una rete
Finora abbiamo preso di mira un’unità USB esterna. Per utilizzare un percorso di rete come destinazione per il backup, utilizzare il percorso di tale percorso sulla riga di comando. C’è un dispositivo di archiviazione collegato alla rete (NAS) sulla rete su cui è stato effettuato la ricerca per questo articolo.
Possiamo utilizzare lo stesso trucco utilizzato in precedenza per identificare il percorso del NAS, posizionando il mouse sulla connessione a quel dispositivo in Nautilus.
Non esistono opzioni speciali per eseguire il backup su una rete; queste sono tutte opzioni che abbiamo già utilizzato.
rsync -ravz –partial /home/dave/Documents/ /media/dave/NAS/dave/backups/ Non c’è differenza nel formato dell’output.
Non sorprende che vi sia un miglioramento significativo nella cifra dei byte/sec.
Se corriamo rsync ancora una volta, possiamo vedere che non ci sono file da trasferire perché non sono state apportate modifiche, ma ci sono ancora alcuni byte trasferiti avanti e indietro. Questa è la quantità di dati che devono essere trasferiti per confrontare l’elenco di file sulla destinazione con l’elenco di file sull’origine.
Il rapporto di accelerazione è un ordine di grandezza migliore in questo caso. In pratica, i tuoi rapporti di prestazione saranno a metà tra le nostre due letture pseudo-artificiali.
Utilizzo di rsync su SSH
rsync supporta il backup su una connessione SSH. Dobbiamo fornire il nome dell’account utente e la posizione SSH sulla riga di comando. Qui utilizziamo un nome di rete, ma puoi anche utilizzare un indirizzo IP.
Notare il “:” tra i dettagli della connessione SSH e l’inizio del percorso di rete sulla destinazione remota.
rsync -ravz –partial /home/dave/Documents/ dave@sulaco.local:/home/dave/Backups/ Ti verrà richiesta la password dell’account utente sul computer remoto. Questa non è la tua password sul computer di origine.
Il backup verrà completato come al solito. La velocità effettiva non è veloce quanto quella di una normale connessione di rete, a causa della crittografia e decrittografia che avviene nella connessione shell sicura.
Automatizzare i tuoi backup
Possiamo creare facilmente backup automatizzati aggiungendo voci al tuo file crontab.
crontab -e Imposteremo un backup automatico da eseguire ogni giorno alle 04:30 (se il computer è acceso a quell’ora, ovviamente). La sintassi per rsync il comando non cambia affatto.
Ctrl+O scriverà le modifiche nel file e Ctrl+X chiuderà il file nano editore.
Mettere una faccia amica su Rsync
Le persone che hanno meno dimestichezza con la riga di comando possono utilizzare uno dei numerosi programmi che inseriscono un‘interfaccia utente grafica (GUI) rsync. Due buoni esempi sono luckyBackup E Grsync. Entrambi questi programmi consentono molti dei file rsync opzioni da selezionare tramite l’interfaccia utente.
IL Grsync il programma si concentra sull’essere un wrapper visivo per rync. Fornisce un facile accesso a rsync opzioni e aggiunge solo un insieme limitato di nuove funzionalità.
IL luckyBackup il programma è molto più di un semplice wrapper per rsync. È un programma di backup che utilizza rsync dietro le quinte. Per esempio, luckyBackup può creare più “istantanee” del tuo backup. È quindi possibile “tornare indietro” alla versione v ersioni dei file in uno qualsiasi degli snapshot.
Per installare Grsync
Installare Grsync in Ubuntu, usa questo comando:
sudo apt install grsync Installare Grsync in Fedora, usa questo comando:
sudo dnf install grsync Installare Grsync a Manaro usa questo comando:
sudo pacman -Syu grsync
Per installare luckyBackup
Installare luckyBackup in Ubuntu, utilizzare il seguente comando:
sudo apt install luckybackup Installare luckyBackup in Fedora utilizzare il seguente comando:
sudo dnf install luckybackup In Manjaro devi installare luckyBackup dal Archivio utenti di Arch (AUR). Puoi farlo con pamac gestore dei pacchetti.
Non rischiare, esegui spesso il backup dei tuoi dati
I backup sono assolutamente vitali. Esegui frequentemente il backup, esegui il backup in molte posizioni ed esegui il backup su supporti diversi. Una volta impostato, rsync può fare tutto questo per te.