Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Eseguire il backup di un'intera distribuzione con il comando cp

Come eseguire un backup di un'intera distribuzione Linux con l'uso della shell e del semplice comando cp ('copy')
Come eseguire un backup di un'intera distribuzione Linux con l'uso della shell e del semplice comando cp ('copy')
Link copiato negli appunti

La potenza di un sistema GNU/Linux si nota anche nella sua estrema semplicità. Tradizionalmente in sistemi operativi unix-like le utilità più semplici e basilari si integrano tra loro a formare un ecosistema in cui ogni compito è assolto da una precisa applicazione. Non capita raramente però di scoprire che qualcuna di quelle semplici applicazioni può essere usata per scopi per cui non erano state concepite.

È questo il caso di cp, il programma che normalmente assolve al compito di "copiare" (cp è un'abbreviazione di copy). Vedremo adesso, infatti, come si può sfruttare questa semplice utilità per fare il backup di una intera distro, e ricavarne anche vantaggi. È il caso di avvertire i lettori che esistono metodi magari più eleganti per compiere questa operazione, ma lo scopo di questo articolo non è l'eleganza o la semplicità: è dimostrare la potenza di un piccolo comando.

I vantaggi nell'usare questa procedura sono che:

  • Si esplora un uso poco conosciuto del funzionamento di cp
  • Si impara a conoscere il filesystem Unix e la sua infinita flessibilità
  • Copiando l'intera distribuzione in una partizione diversa si esegue la deframmentazione di tutti i file
  • Non si ha bisogno di utilità esterne o di procedure complicate per fare il backup

Immaginiamo di voler spostare la nostra distribuzione

Sconsiglio di usare una qualsiasi interfaccia grafica per compiere questa operazione, proviamo ad usare direttamente la shell cp cp passare sempre il parametro -a (consultate il manuale di cp per riferimenti), mentre se si usa MC si avrà cura ad abilitare l'opzione "Preserva gli attributi".

Procediamo quasi

Si faccia molta attenzione all'opzione "Preserva gli attributi" e si eviti di includere nella selezione da copiare le directory /media /mnt link a filesystem in uso /cdrom

Figura 1: un'immagine di MC
Un'immagine di MC

Il comando cp invece sarebbe qualcosa come:

$: sudo cp -a /bin /boot /dev /etc /home /initrd /lib /lost+found /opt /proc /root /sbin /srv /sys /tmp /usr /var /media/hdb6

L'intero processo può durare alcuni minuti, molto dipende dalle dimensioni della distribuzione da copiare e dalla velocità del computer sul quale si effettua l'operazione. Una volta completata la copia si potranno creare le directory che abbiamo precedente omesso, in questo caso /media e /mnt, e creare gli eventuali link, come /cdrom, /initrd.img /vmlinuz e così via.

Il prossimo passo è rendere il nuovo sistema avviabile e adeguarlo alla nuova partizione. Per fare questo agiamo sostanzialmente su un unico file, che indica al sistema la sua disposizione su disco: /etc/fstab. Si dovrà aver cura di adeguare soprattutto la voce che fa riferimento alla "root", la directory radice, che adesso avrà un campo /dev/hdxn differente, nel caso che vedete nella schermata di MC in alto, il nuovo campo diverrebbe /dev/hdb6, dal momento che si sta spostando il sistema in quella partizione. L'ultimo tocco sarà quello di aggiungere una voce al bootloader, lilo o grub, per caricare A-copia.

Ti consigliamo anche