Interne Festplatte auf neue SSD klonen

Interne Festplatte auf neue SSD klonen

Ich habe vor Kurzem eine SSD in meinem Rechner installiert. Der Rechner selbst ist ein Lenovo Thinkpad W520 und hatte vorher eine interne Festplatte. Ich habe die interne Festplatte in einen Erweiterungsschacht verschoben (und damit das CD-ROM-Laufwerk ersetzt) ​​und die neue SSD in den internen Schacht eingebaut.

Mein Problem ist, dass meine Ubuntu-Konfiguration GENAU so ist, wie ich sie haben möchte. Ich habe ursprünglich viele Stunden damit verbracht, sie so zu konfigurieren, wie sie jetzt ist. Das möchte ich lieber nicht noch einmal tun. Aber ich hätte auch gerne die Startvorteile, die ich durch das Betriebssystem auf der SSD hätte.

Ich möchte also meine Ubuntu-Partition auf die SSD klonen. Der Haken dabei ist, dass die Standardfestplatte deutlich größer ist als die SSD. Und sie hat eine Windows-Partition, die ich auf der SSD nicht brauche (ich verwende nie Windows, also ist es in Ordnung, wenn es von der anderen Festplatte bootet). Das Layout meiner Festplatten ist wie folgt:

/dev/sda (SSD): Modell: ATA M4-CT256M4SSD2 (scsi) Datenträger /dev/sda: 256 GB Sektorgröße (logisch/physisch): 512 B/512 B Partitionstabelle: msdos

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

/dev/sdb (HDD): Modell: ATA ST9500420AS (scsi) Festplatte /dev/sdb: 500 GB Sektorgröße (logisch/physisch): 512 B/512 B Partitionstabelle: 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

Was ich bisher versucht habe:

1) Ändern der Größe der Partitionen /dev/sdb5 und /dev/sda1 auf die gleiche Größe. 2) Booten in Ubuntu 11.04 (von /dev/sdb5) und Ausführen von dd if=/dev/sdb5 of=/dev/sda1 (das verursacht natürlich Probleme beim Booten, deshalb musste ich Grub neu installieren. Ich kann es booten, habe dann aber Probleme mit initrd, das einige Dateien nicht findet ... vermutlich kann es einige Partitionen nicht laden, denke ich).

Ich denke, diese beiden Schritte sind der falsche Ansatz, da dadurch GENAU /dev/sdb5 geklont wird – einschließlich der Verweise in fstab, die auf die falsche Festplatte verweisen. Ich bin mir nicht sicher, wie ich das genau beheben kann. Ich könnte Ubuntu 11.04 auf der SSD installieren und dann versuchen, alle meine Konfigurationen zu kopieren, aber ich habe Angst, dass ich etwas verliere oder etwas wie fstab überschreibe, das auf die ursprüngliche Festplatte verweist.

Beachten Sie, dass ich derzeit noch von der Festplatte booten kann. Es ist also nicht zwingend erforderlich, dass ich das sofort herausfinde. Ich möchte aber, dass es genau so ist, wie es jetzt ist, damit ich mein aktuelles Produktivitätsniveau beibehalten kann (es ist ein Arbeitslaptop).

Vorschläge, wie ich diese Schwierigkeit überwinden könnte?

Dank im Voraus!

Antwort1

Es gibt mehrere Möglichkeiten, Ihr altes System auf ein neues Laufwerk zu übertragen, aber Sie haben nicht wirklich so gefragt, sondern danach, wie man das System klonen kann.

Ich selbst würde einfach gparted von der Live-CD verwenden, sodass keine der Partitionen gemountet ist. Sie können die Originalpartition auf die gewünschte Größe auf der SSD verkleinern und dann die Partition kopieren und auf das neue Laufwerk einfügen. Wenn ich mich richtig erinnere, wird dabei dieselbe UUID wiederverwendet, aber Sie können diese nachträglich auf der einen oder anderen Partition ändern. Der Befehl hierfür lautet „ sudo tune2fs -U random /dev/sdb5UUID für sdb5 zuweisen“.

Wenn Sie das alte System nicht ändern möchten und es für eine Weile gemountet lassen möchten, können Sie die UUID für die SSD-Partition ändern und Ihre fstab bearbeiten. Das ist eigentlich gar nicht schwer und Sie sollten sich damit auskennen. Es ist ziemlich selbsterklärend für jemanden mit dem Wissen, das Sie anscheinend bereits haben. Sobald Sie eine neue UUID zugewiesen haben, können Sie sie alle mit diesem Befehl sehen: sudo blkid -c /dev/null- Der Parameter -c gibt die Cache-Datei an und /dev/null bedeutet, dass kein Cache verwendet wird, sodass Sie alle Änderungen immer sofort erhalten. Ich verwende immer diese Form und sehe keinen Nachteil, es sei denn, Sie haben einevielvon Partitionen.

Sobald Sie die UUID haben, können Sie sie mit gedit oder einem beliebigen Texteditor kopieren und über der alten in /etc/fstab einfügen.

Persönlich würde ich jedoch, anstatt mir zuerst die Zeit zu nehmen, die Partitionsgröße zu ändern, einfach die alte Installation auf die neue Festplatte kopieren. Wenn Sie nicht wissen, wie Sie GRUB auf dem MBR installieren, sollten Sie zuerst ein Basis-Ubuntu installieren, dann /etc/fstab sichern, die alte Installation darüber kopieren und dann die fstab von der neuen Installation kopieren, damit sie nur die richtigen Einträge enthält.

Antwort2

Booten Sie von der Live-CD, mounten Sie beide Laufwerke und kopieren Sie die Dateien dann einfach mit sudo cp -ax /media/source /media/dest. Bearbeiten Sie die /etc/fstab am Ziel, damit sie auf die richtige UUID verweist (suchen Sie mit blkid), und installieren Sie Grub erneut.

Antwort3

Ich würde vorschlagen, die Verwendung zu vermeiden, dd if=/dev/sdb5 of=/dev/sda1wenn Ihr System von selbst ausgeführt wird /dev/sdb5(und vermutlich nicht schreibgeschützt gemountet ist).

Eine andere Möglichkeit, Partitionen zu kopieren, besteht darin, von der Live-CD (oder USB) zu booten und GParted zu starten. Sie können Strg+C/Strg+V verwenden, um Partitionen von einer Festplatte auf eine andere zu kopieren.

Nachdem die Kopie erstellt wurde (und möglicherweise nach einem Neustart die Partitionstabelle aktualisiert werden muss), mounten Sie weiterhin von der Live-CD aus Ihre neue Root-Partition mithilfe eines Terminals:

sudo mount /dev/sda1 /mnt

Bearbeiten Sie es dann, /mnt/etc/fstabum auf die richtigen Standorte zu verweisen.

Antwort4

Das Bash-Skriptclone-ubuntu.shautomatisiert die Schritte, die in der akzeptierten Antwort beschrieben werden. Ein Menü erleichtert das Auffinden der neuen Partition:

klon-ubuntu.png

Über den Link oben erhalten Sie eine Kopie des Skripts und wichtige zu berücksichtigende Punkte, beispielsweise:

  • rsyncwird zum Klonen der gebooteten Partition verwendet und virtuelle Systemverzeichnisse werden korrekt übersprungen.
  • /etc/fstabdes Zielklons wird mit den richtigen UUIDs zum Booten aktualisiert.
  • /etc/grub/grub.cfgwird für ein reibungsloses Booten mit Grub aktualisiert.

verwandte Informationen