Home / Sistemi operativi & mobile / Linux / Clonare hard disk senza CloneZilla in Linux
Mattepuffo

Clonare hard disk senza CloneZilla in Linux

Clonare hard disk senza CloneZilla in Linux

Ho comprato un hard disk nuovo per il mio pc, nello specifico un SSD da 256GB.

Questo hard disk andrebbe a sostituire quello che c'è adesso, un classico hd da 3.5" da un 1TB.

Non volendo reinstallare tutto da zero (l'ho fatto qualche mese fa, pietà per me!!), ho pensato di clonare il sistema con CloneZilla.

Peccato che l'operazione non sia riuscita in quanto gli hd hanno dimensioni diverse.

Neanche clonando la singola partizione ci sono riuscito, sempre per lo stesso motivo.

Ma la soluzione mi è arrivata dal forum SpreaTech, nello specifico da questa discussione.

Oggi vi descrivo i vari passi che ho eseguito.

Intanto vediamo come sono composte le partizioni del mio hd attuale:

/dev/sda1 2GB SWAP
/dev/sda2 IL RESTO PER IL SISTEMA

Ho creato le stesse partizioni sull'hd nuovo.

Prima di cominciare dobbiamo modificare il file /etc/fstab, andando a sostituire il punto di montaggio della root del sistema; in pratica non dobbiamo usare lo UUID, ma il percorso del device.

Una cosa del genere (ormai quasi tutti i sistemi usano lo UUID di default):

UUID=ce847b88-c755-46c8-bac6-12eba82293d2    /             ext4          rw,relatime,data=ordered    0 1 -> VECCHIO
/dev/sda2                                   /             ext4          rw,relatime,data=ordered    0 1 -> NUOVO

Dove al posto di /dev/sda2 dovete mettere la partizione del vostro sistema.

Avviate il pc da una live; potete usarne una qualsiasi, basta che abbia la stessa architettura del sistema che usate; quindi se usate una distro a 64bit, la live deve essere a 64bit.

Montate entrambi gli hd (questa operazione è semplice se state usando Ubuntu o derivate, più complicata se usate Puppy o qualcosa del genere), e date questi comandi:

$ cd /
$ cp -ar * /mnt/sdb2

Il tempo di copia dipenderà da quante cose dovete copiare ovviamente; se volete avere una situazione aggiornata aprite un altro terminale e digitate:

$ watch ls -la /mnt/sdb2

Oppure potete copiare il tutto usando il file manager, in modo da avere sotto controllo anche il progresso dell'operazione.

E' importante farlo da live cd per evitare che il sistema effettui modifiche durante la copia.

Una volta finita la copia, spegnete il pc, e attaccate fisicamente il secondo hd al posto del primo.

Avviate il sistema di nuovo in live, in modo da usare chroot per reinstallare GRUB2.

Questo è importante, in quanto la copia non prevede anche l'installazione di GRUB2; e questo va reinstallato per fargli trovare l'hard disk nuovo.

GRUB2 usa gli UUID, quindi è meglio reinstallarlo piuttosto che andare a toccare il file di configurazione a mano.

Avviata la live, montate l'hd (questa operazione è semplice se state usando Ubuntu o derivate, più complicata se usate Puppy o qualcosa del genere), ed effettuate il chroot:

# mount /dev/sda2 /mnt
# mount --bind /dev /mnt/dev
# mount --bind /proc /mnt/proc
# mount --bind /sys /mnt/sys
# chroot /mnt

Se è andato tutto bene, vi ritrovate nella shell del vostro sistema.

Reinstallate GRUB2; questa operazione cambia a seconda della distro, che nel mio caso è Archlinux:

# grub-install /dev/sda2
# grub-mkconfig -o /boot/grub/grub.cfg

Smontate tutto:

# exit
# umount /mnt/dev
# umount /mnt/proc
# umount /mnt/syse
# umount /mnt

Riavviate il sistema non dal live cd; se tutto è andato a buon fine, dovreste avere il menu di GRUB2 e riuscire ad avviare il sistema come se nulla fosse.

Alcune note:

  • questi passaggi sono stati testati personalmente; ad oggi io uso il nuovo hd senza aver reinstallato nulla
  • questa guida prevede l'uso di sole due partizioni (SWAP e sistema); se usate più partizioni separate, accertatevi di copiarle tutte nel modo giusto
  • state attenti ai percorsi; i miei sono relativi al mio sistema, ma voi probabilmente li avete diversi
  • qui prevedo di usare GRUB2 come bootloader, ma ovviamente non tutti lo usano; nel caso usiate un altro bootloader, accertatevi di seguire le istruzioni giuste
  • formattate e strutturate il nuovo hd come il primo, in modo da non inastrarvi; nel mio caso era semplice avendo solo due partizioni, ma ne avete di più, state attenti che lo spazio vada bene (gli SSD in genere hanno una dimensione inferiore rispetto a quelli tradizionali, per via dei costi più elevati)
  • ricordatevi che per il chroot serve una live con la stessa architettura del sistema che usate; ve lo ripeto per evitare che sbagliate e dovete riscaricare la distro live da capo

Spero di essere stato chiaro nei passaggi che ho fatto.

E' evidente che con CloneZilla è tutto più facile, ma ha avuto delle limitazioni che non mi sono piaciute.

Questo sistema, se fatto con attenzione, ottiene lo stesso risultato, e come tempo non ci ho messo molto di più che con CloneZilla

PS: ringrazio il forum SpreaTech, e nello specfico gibor, per la dritta.

Enjoy!