Come posso spostare (copiare) l'intero sistema Ubuntu su un altro disco rigido?


57

L'HDD su cui ho installato Ubuntu sta per fallire. Preferirei non perdere 3 anni di dati, personalizzazioni e app. Sto cercando un modo per spostare l'intero sistema (incluso SWAP, perché non sono sicuro di poter ricollegare il sistema a una nuova partizione SWAP) su un altro HDD. Ma non l'HDD completo <solo la partizione contenente Ubuntu, a una partizione su un altro HDD. Fondamentalmente mi piacerebbe fare quello che sono stato in grado di fare con Norton Ghost per la mia installazione di Windows. Ho pensato di usare Clonezilla ma penso che avrei avuto problemi con GRUB (Soprattutto cercando di fare il boot da un UUID diverso da quello che c'è nel file conf). conosci in qualche modo questo potrebbe essere fatto?

PS, la mia directory home è crittografata ma non è un problema, perché posso aggirare il problema.

EDIT: ha cambiato la spiegazione per renderla più chiara

Risposte:


30

In realtà ho finito per usare Gparted dal Live CD. Ho copiato la partizione e incollata nello spazio non allocato sull'altro HDD. Quindi ho usato blkid per controllare gli UUID e ho modificato il file fstab. Ha funzionato come un fascino!


5
Se stai spostando la tua partizione all'interno dello stesso sistema per qualsiasi motivo (ad es. Hai bisogno di più spazio), dovrai cambiare l'UUID della nuova partizione prima di modificare fstab, poiché avrà lo stesso UUID dell'originale (vedi askubuntu. com / questions / 109938 / change-hdds-uuid )
Greg Kramida,

Questo è il motivo perché amo Linux
deFreitas,

Se stai sostituendo la tua vecchia unità di avvio con quella nuova, devi anche installare grub su di essa. Se stai aggiungendo una nuova unità o sostituendo un'unità dati, non è necessario farlo.
David C.

9

Bene, ho appena usato chiavetta USB + Ubuntu live.

Stavo trasferendo ubuntu 13.10 da un hdd più grande a un ssd più piccolo, e clonezilla "ha detto" che non può essere fatto in questo modo poiché la partizione di destinazione è più piccola della partizione di origine.

Quindi ho avviato Ubuntu live, ho montato entrambi gli hdd (nuovo disco, ovviamente era stato partizionato prima, non dimenticare di scambiare;)), e solo:

cd /media/ubuntu/old-hdd-uuid/

poi:

sudo cp -R --preserve=all bin/ boot/ cdrom/ dev/ etc/ home/ lib/ lib32/ lib64/ media/ mnt/ opt/ proc/ root/ run/ sbin/ srv/ sys/ tmp/ usr/ var/ /media/ubuntu/new-hdd-uuid/

sopra puoi vedere che sta solo copiando tutte le directory da un disco fisso all'altro, ricorsivamente con tutte le autorizzazioni e le cose conservate.

cd /media/ubuntu/new-hdd-uuid/

quindi ho dovuto creare due collegamenti simbolici nella directory principale di un nuovo disco:

sudo ln -s boot/vmlinuz-x.xx.x-xx-generic vmlinuz
sudo ln -s boot/initrd.img-x.xx.x-xx-generic initrd.img

e il passo successivo è stato l'installazione di grub, quindi:

sudo grub-install --boot-directory=boot/ /dev/sdxy

dove x - device, y - numero della partizione (se non si è sicuri di usare cfdisk o fdisk per stampare la tabella delle partizioni ...)

e l'ultimo passo è stato cambiare uuid di un nuovo hdd in uuid dal vecchio hdd (è il modo più semplice per ingannare grub config, fstab o altro senza cercare e correggere le configurazioni)

sudo tune2fs /dev/sdxy -U OLD-UUID

il nuovo UUID verrà visualizzato dopo la rimozione del dispositivo. Quindi ora riavvia e se tutto va bene, il tuo Ubuntu dovrebbe iniziare ...


4

Puoi farlo usando dd. Per informazioni complete controlla il sito.

Clonare un disco rigido usando un Live CD di Ubuntu

L'avvertimento dd è uno strumento di basso livello molto potente e anche un piccolo errore di battitura è sufficiente per cancellare un intero disco. Prestare molta attenzione al suo utilizzo e provare a utilizzare uno strumento di livello superiore, se possibile.
Si noti inoltre che questo metodo funziona solo se il disco di destinazione ha le stesse dimensioni o dimensioni maggiori


La clonazione di dischi rigidi è un'attività di manutenzione comune. Non preoccuparti di masterizzare un nuovo CD di avvio o di pagare per un nuovo software: puoi farlo facilmente con il tuo Live CD di Ubuntu.

Non solo puoi farlo con il tuo Live CD di Ubuntu, ma puoi farlo subito, senza bisogno di software aggiuntivo! Il programma che useremo si chiama dd ed è incluso in quasi tutte le distribuzioni Linux. dd è un'utilità utilizzata per eseguire copie di basso livello - invece di lavorare con i file, funziona direttamente sui dati grezzi su un dispositivo di archiviazione.

Puoi anche usare:

Clonezilla, un software di clonazione del disco rigido gratuito. Clonezilla viene eseguito da un CD live e presenta una semplice interfaccia utente. Dovrai comunque essere consapevole di ciò che stai facendo, ovviamente, ma questo strumento può semplificare immensamente il tuo lavoro con la sua suddivisione dettagliata.

Puoi scaricare Clonezilla qui

Avviso Assicurati di controllare la limitazione di Clonzilla prima di iniziare.

Hai anche detto che hai usato Ghost per Windows, ma puoi anche usare Ghost per Linux .

Fonte: http://www.howtogeek.com/howto/19141/clone-a-hard-drive-using-an-ubuntu-live-cd/

Fonte: http://www.makeuseof.com/tag/2-methods-to-clone-your-linux-hard-drive/


Dd consente anche di copiare solo le partizioni? Come in sudo dd di = / dev / sdb3 di = / dev / sda2
boywithaxe

Fornendo entrambe le unità hanno le stesse dimensioni esatte. E il comando è nel tuo caso dd se = / dev / sd3 di = / dev / sd2
Mitch

Grazie, tuttavia le partizioni sono su due diversi dischi fisici, / dev / sda e / dev / sdb. Usando sd3 e sd2 come descrittori non si copia in un disco fisico?
boywithaxe,

non è necessario che le unità abbiano le stesse dimensioni, l'unico requisito è che l'unità su cui si stanno copiando le informazioni sia più grande dell'unità da copiare.
Bruno Pereira,

1
ddrescuesarebbe un'opzione migliore qui poiché il disco rigido è difettoso.
Ciro Santilli 27 改造 中心 法轮功 六四 事件

4

Alcuni anni fa ho usato con successo questo strumento per "clonare" le mie partizioni: G4L . Tutto ha funzionato con alcune correzioni post-installazione, come il ridimensionamento delle partizioni (ho clonato le partizioni su HD di dimensioni diverse) e grub reinstall (è abbastanza semplice, è sufficiente un CD live per reinstallarlo nell'MBR).

Puoi tranquillamente ignorare la tua partizione di swap (sarai in grado di ricrearla una seconda volta) o anche clonarla e attivarla in seguito, modificando manualmente /etc/fstabo dalla riga di comando.

Nelle ultime settimane ho fatto di nuovo il clone con clonezilla e tutto è andato bene con le stesse correzioni post-clonazione. Quindi non preoccuparti e provali, nulla sul tuo HD originale verrà toccato!

MODIFICARE:

Ho trovato una vecchia posta in cui descrivevo il primo processo di clonazione. Ho agito come segue:

  • Ho partizionato il mio nuovo HD collegato via USB esattamente come quello vecchio
  • Clonato le partizioni in modalità raw con G4L
  • Avviato con un Live CD e fatto il ridimensionamento delle partizioni con resize2fs
  • Disconnesso l'HD da USB e montato su SATA / PATA.
  • Riavviato con il Live CD e montato il nuovo disco:

    mkdir disk
    mount /dev/sda1 disk        (where sda1 contains boot and root partitions)
    mount /dev/sda2 disk/boot   (if you have a different boot partition) 
    mount --bind /dev/ disk/dev/
    mount -t proc none disk/proc
    chroot disk /bin/bash
    grub-install /dev/sda       (to install GRUB on sda MBR)
    
  • Riavvia, controlla lo scambio

  • Godere

3

@boywithaxe - Per quanto riguarda i tuoi commenti alla risposta di Mitch, puoi semplicemente copiare le relative partizioni facendo . Questa è in realtà la parte più semplice. La parte più difficile è che dovrai anche montare la partizione appena copiata, oltre a un paio di altre partizioni e installare grub ( ) ( e aggiungere una partizione di swap prima di riavviare (se stai clonando una partizione avviabile )). Utilizzando questo metodo non è necessario neanche.dd if=/dev/sdb3 of=/dev/sda3grub-install /dev/sdaresize2fs

Ho appena dovuto farlo da solo, e ho usato una combinazione di riparazione di avvio dopo un aggiornamento di Windows su Ubuntu 14.04 (non RAID) e risposta ai gelsomini .

Quindi, dopo aver avviato dal liveCD:

dd if=/dev/sdb3 of=/dev/sda3

Quando questo è finito, allora

sudo mount /dev/sda3 /mnt 

dove sda3 contiene le partizioni di avvio e root copiate di recente)

sudo mount --bind /dev/ /mnt/dev/

sudo mount -t /proc none /mnt/proc

sudo chroot /mnt

sudo grub-install /dev/sda 

nota che questo è sda non sda3

update-grub

exit
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.