Clonare l'HDD interno sul nuovo SSD


20

Di recente ho installato un SSD sul mio computer. La macchina stessa è un thinkpad Lenovo W520 e in precedenza aveva un HDD interno. Ho spostato l'HDD interno in un alloggiamento di espansione (sostituendo il CD-ROM) e ho inserito il nuovo SSD nell'alloggiamento interno.

Il problema che sto riscontrando è che ho la mia configurazione di Ubuntu ESATTAMENTE nel modo in cui la desidero - inizialmente ho impiegato molte ore a configurarla per farlo com'è ora. Preferirei non farlo di nuovo. Ma vorrei anche i guadagni di avvio che avrei ottenuto dal sistema operativo su SSD.

Quindi, quello che mi piacerebbe fare è clonare la mia partizione Ubuntu su SSD. Il problema è che l'HDD standard è significativamente più grande dell'SSD. E ha una partizione Windows che non mi serve sull'SSD (non uso mai Windows, quindi se si avvia dall'altro disco rigido, va bene). Il layout dei miei dischi rigidi è il seguente:

/ dev / sda (SSD): Modello: ATA M4-CT256M4SSD2 (scsi) Disco / dev / sda: 256 GB Dimensioni del settore (logico / fisico): 512B / 512B Tabella delle partizioni: msdos

Number  Start   End    Size   Type     File system  Flags
 1      1049kB  147GB  147GB  primary  ext4         boot

/ dev / sdb (HDD): Modello: ATA ST9500420AS (scsi) Disco / dev / sdb: 500 GB Dimensione del settore (logico / fisico): 512B / 512B Tabella delle partizioni: msdos

Number  Start   End     Size    Type      File system     Flags
 1      1049kB  1259MB  1258MB  primary   ntfs            boot
 2      1259MB  269GB   268GB   primary   ntfs
 4      269GB   483GB   214GB   extended
 5      269GB   416GB   147GB   logical   ext4
 7      416GB   475GB   58.9GB  logical   linux-swap(v1)
 6      475GB   483GB   8470MB  logical
 3      483GB   500GB   16.8GB  primary   ntfs

Quello che ho provato finora:

1) Ridimensionare le partizioni / dev / sdb5 e / dev / sda1 per avere le stesse dimensioni. 2) Avvio in Ubuntu 11.04 (da / dev / sdb5) ed esecuzione di dd if = / dev / sdb5 di = / dev / sda1 (ovviamente questo causa problemi con l'avvio, quindi ho dovuto reinstallare grub .. Posso farlo avvio, ma poi ho problemi con initrd che non trova alcuni file ... presumibilmente non può caricare alcune partizioni credo).

Ora, penso che quei due passaggi siano l'approccio sbagliato, perché clonerà / dev / sdb5 ESATTAMENTE - compresi i riferimenti in fstab che indicano il disco rigido sbagliato. Non sono sicuro di come correggere questo. Potrei installare Ubuntu 11.04 sull'SSD, quindi provare a copiare su tutte le mie configurazioni, ma sono preoccupato che perderò qualcosa o che sovrascriverò qualcosa come fstab che rimanda all'originale disco rigido.

Tieni presente che al momento posso ancora eseguire l'avvio dall'HDD, quindi non è indispensabile che io lo capisca subito, ma voglio che sia esattamente come è adesso, in modo da poter mantenere il mio attuale livello di produttività ( è un laptop da lavoro).

Suggerimenti su come potrei essere in grado di superare questa difficoltà?

Grazie in anticipo!

Risposte:


13

Esiste più di un modo per ottenere il vecchio sistema su una nuova unità, ma non l'hai davvero chiesto in questo modo, hai chiesto come clonare il sistema.

Vorrei solo usare gparted, me stesso, dal CD live, quindi nessuna partizione è montata. È possibile ridurre la partizione originale nella dimensione desiderata sull'unità SSD, quindi copiare e incollare la partizione nella nuova unità. Se ricordo bene, questo riutilizzerà lo stesso UUID, ma puoi cambiarlo su una o l'altra partizione in seguito. Il comando per questo sudo tune2fs -U random /dev/sdb5assegna UUID per sdb5.

Se non vuoi cambiare il vecchio sistema e se vuoi mantenerlo montato per un po ', potresti cambiare l'UUID per la partizione SSD e modificare il tuo fstab. In realtà non è affatto difficile, ed è qualcosa che dovresti conoscere. È piuttosto autoesplicativo per qualcuno con le conoscenze che sembra già possedere. Una volta assegnato un nuovo UUID, è possibile visualizzarli tutti con questo comando: sudo blkid -c /dev/null- il parametro -c specifica il file cache e / dev / null significa che non si utilizza una cache, quindi si ottengono sempre le modifiche immediatamente. Uso sempre quel modulo e non vedo alcun aspetto negativo a meno che tu non abbia molte partizioni.

Una volta ottenuto l'UUID, puoi copiarlo e incollarlo su quello vecchio in / etc / fstab usando gedit o qualsiasi editor di testo che preferisci.

Personalmente, invece di dedicare tempo a ridimensionare prima la partizione, copierei semplicemente la vecchia installazione sul nuovo disco. Se non sai come installare GRUB su mbr, potresti voler prima installare un Ubuntu di base, quindi eseguire il backup / etc / fstab, copiare la vecchia installazione su di esso e quindi copiare il file fstab dalla nuova installazione in modo che ha solo le voci corrette.


Questo è molto utile, grazie. Ho intenzione di provarlo e vedere se riesco a farlo funzionare. Poi tornerò e accetterò la risposta o ti chiederò di più al riguardo. ;)
jwir3

1
Ho usato il CD di installazione live molte volte, poiché contiene quasi tutto il necessario. Ma la migliore immagine di salvataggio che ho usato è il CD di System Rescue . Questo CD avviabile, disponibile anche come chiavetta USB, ha riparato GRUB per me diverse volte dopo che qualcosa (o qualcuno, che rimarrà senza nome) lo ha cancellato. Ha gparted, grub tools e tutto il resto che vorresti riparare un'installazione di Linux, senza troppe spese generali. È questo il tipo di cosa che stavi chiedendo?
Marty Fried,

1
Prego e buona fortuna.
Marty Fried,

1
Questo ha funzionato bene. Una cosa su cui non ero sicuro era come configurare grub e, più specificamente, che ci sono modi molto diversi di configurare grub legacy vs. grub2. Ho usato quanto segue come riferimento per grub2, una volta installato ( apt-get install grub2): dedoimedo.com/computers/grub-2.html Inizialmente stavo seguendo un metodo di installazione di grub2, quando in realtà grub-legacy era installato sul mio sistema.
jwir3,

1
Ah, sì, l'adorabile grub, ed è migliorato, grub2 (NUOVO! MIGLIORATO! ORA ANCORA PIÙ COMPLESSO!). Scusa, è tutta colpa mia; Avevo capito appieno il vecchio grub, quindi ovviamente l'hanno cambiato. Quindi, quando pensavo di ottenere grub2, hanno apportato alcune modifiche minori, incompatibili con la versione precedente. Ecco perché ho suggerito la possibilità di installare prima una base, solo per configurare grub. Ma è una buona idea imparare grub, e in realtà non è così complicato, davvero. Sei passato a grub2 ora?
Marty Fried,

5

Avvia da livecd, monta entrambe le unità, quindi copia i file con sudo cp -ax /media/source /media/dest. Modifica / etc / fstab sulla destinazione in modo che punti all'UUID corretto (cerca con blkid) e reinstalla grub.


Questo è quello che farei, ma mi ci è voluta un'eternità per avere un'idea di grub2, principalmente a causa delle miriadi di diversi metodi che ho letto, nessuno dei quali sembrava essere completo. Il tuo post presuppone che la persona si trovi allo stesso livello in cui ti trovi, o forse pensi semplicemente che chiederà delle parti che non sono note (il che è probabilmente OK). Ma è curioso che tu abbia specificato la parte più semplice, il comando copia, e in qualche modo hai sorvolato le parti più dure. :)
Marty Fried

3
@MartyFried, un rapido google passa subito a help.ubuntu.com/community/Grub2#Reinstalling_GRUB2 , che dice che è semplice come eseguire grub-install --root-directory /mnt /dev/sdadopo aver montato la partizione Ubuntu in / mnt;)
psusi

Ah, sono felice di sapere che sono migliorati o aggiunti alla documentazione. È stato un po 'di tempo per me, ma quando stavo provando a gestirlo, anche la documentazione ufficiale di GRUB non era del tutto corretta. Inoltre, c'è stato un cambio di versione per GRUB2 che ha causato un errore con un messaggio di errore oscuro. Ma il problema con i forum di Ubuntu che frequentavo di più è che c'è molta disinformazione ripetuta fino a quando non diventa realtà da parte di persone che sanno a malapena di cosa stanno parlando - non tutti, ma a volte è difficile risolvere.
Marty Fried,

2

Suggerirei di evitare l'uso dd if=/dev/sdb5 of=/dev/sda1 se il sistema è in esecuzione da /dev/sdb5solo (e presumibilmente non montato in sola lettura).

Un altro modo per copiare le partizioni è eseguire l'avvio dal CD live (o USB) e avviare GParted. Puoi usare Ctrl + C / Ctrl + V per copiare le partizioni da un disco a un altro.

Viene fatta una copia (e forse dopo il riavvio è necessario aggiornare la tabella delle partizioni), sempre dal CD live, montare la nuova partizione root usando un Terminale:

sudo mount /dev/sda1 /mnt

Quindi, modifica /mnt/etc/fstabper puntare alle posizioni corrette.


1
se dddal CD live non è necessario modificare fstab purché utilizzi gli UUID (che dovrebbe).
Alecz,

0

Lo script bash clone-ubuntu.shautomatizza i passaggi descritti dalla risposta accettata. Viene fornito un menu per facilitare la ricerca della nuova partizione:

clone-ubuntu.png

Visita il link sopra per una copia della sceneggiatura e punti importanti da considerare come:

  • rsync viene utilizzato per clonare la partizione avviata e le directory virtuali di sistema vengono ignorate correttamente.
  • /etc/fstab del clone di destinazione viene aggiornato con UUID corretti per l'avvio.
  • /etc/grub/grub.cfg viene aggiornato per l'avvio continuo di grub.
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.