1974481

So ziehen Sie Linux auf einen neuen PC um

17.06.2017 | 10:31 Uhr |

Sie haben einen neuen Rechner gekauft, würden aber gern mit Ihrer bewährten Linux-Umgebung darauf weiterarbeiten? Dann muss das System umziehen. Lesen Sie in diesem Beitrag, wie Sie diese Aufgabe relativ einfach erledigen.

Windows-Nutzer, die einen neuen Rechner gekauft haben, kommen meist um eine Neuinstallation ihrer Programme und Anpassung der Arbeitsumgebung nicht herum. Linux bietet hier entscheidende Vorteile. Sie können das Betriebssystem mitsamt den Benutzerdateien einpacken und sich auf dem neuen System schnell einrichten. Das funktioniert sogar über das Netzwerk. Für einen Umzug des gesamten Systems spricht die enorme Zeitersparnis gegenüber der vollständigen Neueinrichtung aller installierten Programme. Umziehen sollten Sie ein System auf neue Hardware selbstverständlich nur dann, wenn das System einwandfrei und stabil läuft. Haben Sie dort mit Problemen zu kämpfen, ist die Wahrscheinlichkeit hoch, dass diese Schwierigkeiten auch in einer neuen Umgebung bestehen.

1. Vorbereitungen für den Linux-Umzug

Vor dem Umzug bringen Sie Ihr System auf den neuesten Stand. Verwenden Sie die „Aktualisierungsverwaltung“ zur Installation aller anstehenden Updates. Wenn Sie eine ältere Ubuntu -Version einsetzen, sollten Sie ein Upgrade durchführen. Dieses wird Ihnen – wenn vorhanden – in der Aktualisierungsverwaltung angeboten.

Umstieg auf einen neuen PC: Steckt im neuen PC eine andere Grafikkarte als bisher, setzen Sie den Treiber auf den Standard zurück. Suchen Sie im Dash nach „Treiber“ und klicken Sie auf „Zusätzliche Treiber“. Wählen Sie die Option „X.Org-X-Server – Anzeigetreiber Nouveau von xserver-xorg werden verwendet (Quelloffen)“, und klicken Sie auf „Änderungen anwenden“.

Probieren Sie auf dem neuen PC die Ubuntu-Live-DVD aus, über die Sie das ursprüngliche System installiert haben. Prüfen Sie, ob der Netzwerkadapter funktioniert und ob Sie auf die Festplatte zugreifen können. Bei ähnlicher Hardware etwa mit Intel-CPU und Intel-Chipsatz in beiden PCs sind kaum Probleme zu erwarten.

Vor dem Transport auf eine neue Hardware aktivieren Sie den X-Org- Standardtreiber, sonst kann es sein, dass der X-Server nicht startet.
Vergrößern Vor dem Transport auf eine neue Hardware aktivieren Sie den X-Org- Standardtreiber, sonst kann es sein, dass der X-Server nicht startet.

Kernel erneuern: Bei sehr neuer PC-Hardware kann ein aktuellerer Kernel bessere Unterstützung bieten. Die Hauptversion eines Kernels wird bei Ubuntu jedoch nicht durch ein Update angehoben. Es gibt nur Sicherheitsupdates für den bereits installierten Kernel. Damit eine LTS-Version besser mit aktueller Hardware zusammenarbeitet, erscheinen jedoch in regelmäßigen Abständen aktualisierte ISOs für die Neuinstallation. Diese Versionen enthält oft auch einen aktualisierten X.Org-Grafiktreiber und mehrere Bibliotheken, die zum Kernel passen. Hat eine ältere Ubuntu-Live-DVD auf dem neuen PC Fehler gezeigt, probieren Sie das Installationsmedium von einer neueren Ubuntu-Version aus. Läuft dieses einwandfrei, aktualisieren Sie das System auf dem alten PC.

Tipp: So richten Sie Ihre SSD unter Linux optimal ein

Theoretisch ist es möglich, Ubuntu mit den neueren Paketen zu versorgen. In der Praxis scheitert das jedoch meist an fehlenden Abhängigkeiten. Sie können aber den bisherigen PC vom Installationsmedium einer neuren Version booten und das System aktualisieren. Wählen Sie die Option „Ubuntu xx.xx LTS neu installieren“. Die persönlichen Daten und Einstellungen bleiben dabei erhalten, installierte Programme – soweit möglich – ebenfalls. Waren die Fehler nicht gravierend, können Sie diesen Schritt auch nach dem Umzug auf dem neuen PC durchführen.

Vorsichtsmaßnahmen: Bei allen Arbeiten mit Partitionierungssoftware, Kopiertools und Ähnlichem empfiehlt sich ein vorheriges Backup der persönlichen Daten. Sind Serverdienste wie Apache, Nginx oder Mailserver eingerichtet, sollten Sie auch ein Backup des Ordners „/etc“ erstellen.

2. Software zum Klonen vorbereiten

Am einfachsten ist der Linux-Umzug auf eine neue gleich große oder größere Festplatte im gleichen PC. Damit Sie einen Datenträger klonen können, müssen sich die alte und die neue Festplatte im PC befinden. Alternativ verwenden Sie einen USB/SATA-Adapter. Dieser sollte für flotten Datentransfer an einem USB-3.0-Port angeschlossen sein. Clonezilla kann den Inhalt einer Festplatte auf eine andere übertragen (klonen) und dabei mit den meisten Dateisystemen umgehen (Ext3, Etx4, Btrfs, Fat32, NTFS). Es spielt keine Rolle, ob das System auf einer Bios/MBR-oder Uefi/GPT-Partition installiert ist, und das beschriebene Verfahren eignet sich auch für Multibootsysteme mit Linux und Windows.

Bei einem Uefi-System sollten sich alte und neue Festplatte im neuen PC befinden. Dann kann Clonezilla die Einträge für den Bootmanager im NVRAM (Non-Volatile Random-Access Memory) der Firmware anlegen. Andernfalls müssen Sie die Booteinträge später umständlich selbst erstellen. Bei Bios/MBR-Systemen spielt es keine Rolle, auf welchem Gerät Sie die Festplatte klonen.

Clonezilla ist übrigens auch in Parted Magic enthalten. Wenn Sie einen UBS-Stick mit Parted Magic anlegen wollen, folgen Sie folgender Anweisung:

Verbinden Sie den USB-Stick mit dem PC. Sichern Sie alle darauf befindlichen Daten. In einem Terminalfenster ermitteln Sie den Gerätepfad über den Befehl mount. Zeigt dieser etwas wie „/dev/sdb1 on /media/[User]/Stickname“ an, verwenden Sie folgende Befehlszeilen:

sudo umount /dev/sdb1
sudo dd if=/dev/sdb of=Dateiname.iso

Prüfen Sie den dev-Gerätepfad genau, damit Sie nicht versehentlich eine Festplatte überschreiben. „Dateiname.iso“ ersetzen Sie durch den kompletten Pfadnamen der ISO-Datei von Parted Magic. Der USB-Stick kann in den Modi Uefi und Bios/CSM (Compatibility Support Module) booten. Für die Arbeit mit Clonezilla spielt der Modus aber keine Rolle.

Auch interessant: Perfekter Schutz für Ihr Linux

3. Festplatte klonen mit Clonezilla

Für den Umzug Ihrer Daten und Programme haben Sie die Wahl zwischen mehreren Strategien. Eine Option, mit der auch Einsteiger gut zurechtkommen, ist das Klonen der gesamten Festplatte. Dabei wird Byte für Byte eine identische Kopie der gesamten Festplatte angefertigt und diese Kopie anschließend auf das neue System übertragen. Die Software Clonezilla leistet für diese Aufgabe gute Dienste. 

Um eine komplette Festplatte mit Clonezilla zu kopieren, benötigen Sie natürlich ein externes Laufwerk, das mindestens die gleiche Kapazität besitzt wie jene Festplatte, die Sie kopieren wollen. Wenn Sie mit Terminalkommandos nichts zu tun haben wollen oder wenig Erfahrung mit Linux gesammelt haben, ist diese Variante der risikoärmste Weg.

Booten Sie den PC also mit einer Boot-DVD, auf der sich Clonezilla befindet und rufen Sie das Programm ggf. auf.

Schritt 1: Wählen Sie im Menü „device-device“, danach „Expert“ und dann „disk_to_local_disk“. Geben Sie die Quellfestplatte an, die Sie klonen möchten. In der Regel handelt es sich dabei um „sda“. Die richtige Festplatte lässt sich anhand der angezeigten Größe und Modellbezeichnung identifizieren. Nach Bestätigung mit „OK“ wählen Sie die Zielfestplatte. Wenn sich nur zwei Festplatten im PC befinden, ist diese mit „sdb“ bezeichnet. Bestätigen Sie die Auswahl und übernehmen Sie die Voreinstellungen der nächsten beiden Dialoge mit der Enter-Taste.

Schritt 2: Wählen Sie im folgenden Dialog bei einem Bios/MBR-System den Eintrag „-k1 Erstelle proportionale Partition-Tabelle“. Bei einer größeren Zielfestplatte legt Clonezilla dann Partitionen an, die den gesamten Platz proportional füllen. Bei (Uefi-)GPT-Partitionen klappt das nicht. Hier verwenden Sie die erste Option „Verwende die Partition-Tabelle der Original-Platte“

Schritt 3: Folgen Sie den weiteren Anweisungen des Assistenten. Prüfen Sie die Anzeigen genau, denn wenn Sie Quell-und Zielfestplatte verwechseln, gehen alle Daten verloren. Bestätigen Sie danach hinter „Wollen Sie wirklich weitermachen?“ den Vorgang zweimal mit „Y“ und Enter-Taste. Da es sich um eine startfähige Festplatte handelt, fragt Clonezilla Sie, ob Sie auch die Startumgebung („Boot Loader“) kopieren möchten. Bestätigen Sie mit „Y“ und Enter-Taste.

Nach getaner Arbeit gehen Sie im letzten Menü auf „Ausschalten“, um den PC herunterzufahren. Bauen Sie die alte Festplatte aus und starten Sie das System von der neuen geklonten Platte oder bauen Sie die Festplatte in den neuen PC ein. Wenn Sie die alte Festplatte weiter im selben PC verwenden möchten, müssen Sie sie über Parted Magic und den Partitionseditor Gparted neu partitionieren. Denn auf beiden Platten tragen die Partitionen die gleichen UUIDs, über die Linux die Laufwerke einbindet. Sind diese zweimal vorhanden, werden die Partitionen fehlerhaft im gleichen Pfad eingehängt.

Partitionsgröße ändern: Wenn Sie in Schritt 2 „Verwende die Partition-Tabelle der Original-Platte“ gewählt haben, ist auf der neuen größeren Festplatte noch ungenutzter Platz vorhanden. Um das zu ändern, booten Sie erneut Parted Magic und starten den „Partition Editor“ über das Desktop-Icon. Gparted erkennt automatisch, wenn nicht der komplette Platz auf einer GPT-Partition belegt ist. Bestätigen Sie die Meldung mit „Fix“. Über den Kontextmenüpunkt „Resize/Move“ passen Sie die Position und/oder Größe der Partitionen an. Klicken Sie zum Abschluss auf „Apply“, um die Änderungen anzuwenden.

4a. Übersicht: Linux-System mit tar kopieren

Bei einem Umzug von einer Wohnung in eine andere benötigen Sie einen Transporter. Das ist beim Umzug des Betriebssystems nicht anders. Der Transporter kann eine externe Festplatte sein oder auch ein USB-Stick mit einer ausreichenden Kapazität. Ferner benötigen Sie ein Linux-Live-System, mit dem Sie Quell- und Zielrechner starten. Für den kompletten Umzug müssen Sie folgende Arbeiten durchführen, die wir hier als ersten Überblick in aller Kürze zusammenfassen:

  • Sie starten ein Live-System und hängen das bestehende Dateisystem Ihres alten Systems in die Live-Umgebung ein.

  • Sie schließen einen externen Datenträger an, der automatisch eingebunden werden sollte.

  • Sie kopieren mit dem Archivierungswerkzeug tar alle Daten inklusive der Rechte von der alten Festplatte auf den externen Datenträger.

  • Sie starten dann den neuen Rechner mit dem Live-System und partitionieren damit die eingebauten Festplatten.

  • Sie hängen die frisch partitionierten Platten in das Live-System ein.

  • Sie kopieren mit tar die Daten vom externen Datenträger auf die eingehängte (noch leere) Festplatte.

  • Sie hängen die Pseudodateisysteme des Live-Systems in den gleichen Mount-Punkt der neuen Platte ein.

  • Sie installieren den Bootmanager Grub neu.

4b. Im Detail: Linux-System mit tar kopieren

Mit einer Live-Distribution starten Sie den alten Rechner. Binden Sie in einem Terminal die Root-Partition des Systems ein. Dazu müssen Sie ermitteln, welche Platten und Partitionen es auf dem System gibt. Das erledigen Sie im Terminal mit diesem Befehl:

sudo fdisk -l

Sie erhalten eine übersichtliche Liste. Liegt diese Partition etwa auf „sda1“, müssen Sie diese so einbinden:

mount /dev/sda1 /mnt

Damit wird diese Platte unter dem Mount-Punkt „/mnt“ im Live-System eingehängt und kann danach genutzt werden. Schließen Sie dann die externe Platte oder den USB-Stick an. Aktuelle Live-Systeme binden solche externen Datenträger normalerweise automatisch über den Mount-Punkt „/media“ ein. Falls nicht, können Sie das auch manuell im Terminal erledigen:

mount /dev/sdb1 /media

Achtung, die Gerätebezeichnung, in diesem Fall „sdb1“, müssen Sie an Ihre Verhältnisse anpassen. Dazu öffnen Sie im Live-System mit einem Editor die Datei „/var/log/messages“. Hier hat das System eine Gerätebezeichnung eingetragen, als Sie den externen Datenträger eingesteckt haben.

Öffnen Sie ein Terminal, und wechseln Sie mit dem Kommando

cd /mnt

in das Verzeichnis, in das Sie zuvor die alte Platte eingebunden haben. Jetzt beginnen Sie damit, das alte System für den Umzug zu verpacken. Dazu verwenden Sie das Packprogramm tar, das zu den Urgesteinen auf allen Linux-Systemen gehört.

tar -cpf --exclude /proc /media/neu_system.tar *

Das tar-Komprimierungsprogramm kennt eine ganze Reihe von Parametern und Optionen. Unentbehrlich in diesem Zusammenhang ist insbesondere der Schalter „p“, denn dieser sorgt dafür, dass auch die Dateiberechtigungen und Eigentümerinformationen im Archiv gespeichert werden. Das Archiv landet als eine Datei „neu_system“ auf der Platte, die unter „/media/“ eingebunden wurde. Mit der Exclude-Anweisung --exclude /proc verhindern Sie, dass der Inhalt des Verzeichnisses „proc“ gesichert wird. Dabei handelt es sich um Gerätedateien in einem Pseudodateisystem des Live-Systems.

Tar ist standardmäßig wortkarg: Wenn Sie über den Fortschritt, so wie hier gezeigt, informiert werden wollen, ergänzen Sie die Parameter-Kombination um ein „v“ („-cpfv“).
Vergrößern Tar ist standardmäßig wortkarg: Wenn Sie über den Fortschritt, so wie hier gezeigt, informiert werden wollen, ergänzen Sie die Parameter-Kombination um ein „v“ („-cpfv“).

Tar ist ein sehr fixes Archivprogramm; dennoch können Sie nach Auslösen des Befehls je nach Größe des Systems, das Sie einpacken, in Ruhe Kaffee trinken.

Der Artikel geht davon aus, dass Sie bei der Installation Ihres Linux-Systems keine Besonderheiten eingestellt hatten. Liegen dagegen die Benutzerverzeichnisse in einer separaten Partition „/home“, dann müssen Sie diese ebenfalls in einem eigenen Archiv verpacken. 

Wenn das Einpacken erledigt ist, können Sie mit dem eigentlichen Umzug beginnen. Fahren Sie also den alten Rechner herunter, und starten Sie dann den neuen Rechner mit dem Live-System Ihrer Wahl. Hilfreich ist dabei ein Ubuntu-Live-System, denn es enthält das komfortable grafische Partitionierungswerkzeug  Gparted. Damit legen Sie auf der Festplatte des neuen Rechners die Partitionen für den Betrieb für Linux an, sofern Sie dies noch nicht erledigt haben sollten. Notfalls geht das natürlich auch ohne grafische Unterstützung:

fdisk /dev/sda

Dieser Befehl bearbeitet die erste Festplatte des Rechners. Drücken Sie die Taste „n“, um eine neue Partition anzulegen. Definieren Sie eine primäre Partition, und legen Sie deren Größe fest. Wählen Sie anschließend erneut „n“. Diesmal definieren Sie die Swap-Partition. Beide Partitionen benötigen auch ein Dateisystem. Das erledigt dieser Befehl:

mkfs.ext4 /dev/sda4

Damit erhält die Partition „sda4“ das Ext4-Dateisystem. Sehen Sie sich die Liste der Partitionen an, und schreiben Sie sich die Gerätenamen auf, die vergeben worden sind. Sie brauchen diese, um das System in Betrieb zu nehmen. Starten Sie aus dem Live-System erneut eine Konsole. Sie binden jetzt die beiden Dateisysteme ein – einmal das der neuen Platte und einmal die externe Platte, also Ihren „Umzugswagen“:

mount /dev/sda4 /mnt

mountet die neue Festplatte unter „/mnt“ und

mount /dev/sdb1 /media

hängt die externe Platte unter „/media“ein.

Sind die beiden Platten eingebunden, genügen zwei Kommandos, um die Sicherung zurückzuspielen:

cd /mnt tar -xvzf /media/neu_system.tar

Sobald tar diese Aufgabe abgearbeitet hat, sind bereits alle Dateien kopiert. Das System ist damit aber noch nicht startfähig, denn eingepackt wurden auch Dateien, die Einfluss auf den Start haben und noch die Werte des alten Systems enthalten.

Als root öffnen Sie daher in einem Terminal die Datei „/etc/fstab“, die Sie auf den neuen Rechner kopiert haben. Dort werden die Platten über die UUID (Universally Unique Identifier) eingebunden, und diese Kennungen sind jetzt nicht mehr korrekt. Ersetzen Sie diese durch die altmodischen Gerätebezeichnungen „sda1“, „sda2“ et cetera, wie Sie sie vorher aus dem Partitionierungswerkzeug ermittelt haben, zum Beispiel:

/dev/sda4 ext3 acl,user_xattr 1 1 /dev/sda5 swap defaults 0 0

Speichern Sie die „fstab“-Datei. Sofern sich im Verzeichnis „/etc/udev/“ der neuen Platte bereits Dateien befinden, löschen Sie diese. Sie stammen ebenfalls aus der Sicherung und enthalten (wahrscheinlich) nicht mehr zutreffende Eintragungen zum optischen Laufwerk und der Netzwerkkarte des alten Systems. Die Dateien werden beim Systemstart automatisch neu und korrekt angelegt, sofern sie fehlen.

Nun fehlt noch ein letzter Schritt – die Anpassung des Bootmanagers. Dazu müssen Sie die Pseudodateisysteme des Live-Systems verwenden und diese einbinden. Öffnen Sie dazu wieder ein Terminal, und geben Sie dort folgende Mount-Befehle ein:

mount -t proc proc /mnt/proc mount -o bind /dev /mnt/dev

Sie haben jetzt ein laufendes Live-System und ein ausgepacktes System im Punkt „/mnt“, außerdem unter „/proc“ und „/dev“ die aktuellen Daten der Pseudodateisysteme des Live-Systems. Damit können Sie jetzt den Bootmanager neu auf der frischen Festplatte mit dem entpackten Live-System einrichten. Dazu nutzen Sie erneut das Terminal:

chroot /mnt grub-install /dev/sda
Gparted im Live-System: Wenn Sie nicht gern auf der Konsole arbeiten, partitionieren Sie die Festplatten des neuen Systems mit einer grafischen Oberfläche.
Vergrößern Gparted im Live-System: Wenn Sie nicht gern auf der Konsole arbeiten, partitionieren Sie die Festplatten des neuen Systems mit einer grafischen Oberfläche.

Mit „chroot“ wechseln Sie mit root-Rechten in das ausgepackte System und installieren dort Grub mit dem zweiten Befehl. Wird der Rechner nun ohne den Datenträger des Live-Systems gestartet, sollte Ihnen Grub die bisher gewohnte Auswahl anzeigen, und Sie können Ihr gewohntes System auf dem neuen Rechner starten.

Die wichtigsten Tools für ein sparsames Linux

4c. Linux-System über das Netz kopieren

Die ausführliche vorgestellte Methode mit tar funktioniert auch mit zwei Ubuntu-Systemen, die im Netzwerk miteinander verbunden sind. Dazu werden auf dem System, das kopiert werden soll, möglichst alle nicht benötigten Dienste und Server abgeschaltet. Lediglich der Zugriff per SSH muss noch geöffnet sein. Vom neuen (Live-) System loggen Sie sich per SSH in das alte System ein:

ssh root@Altessystem "tar czf - --exclude /proc /" | tar xvzf -.

Dieses Kommando kopiert alle Dateien vom alten System in das aktuelle Verzeichnis. Dieses Verzeichnis befindet sich im laufenden Live-System.

Alle weiteren Schritte, nachdem der Kopiervorgang abgeschlossen wurde, sind dann identisch. Das Einbinden der Pseudosysteme mittels chroot und die Neuinstallation des Bootloaders Grub funktionieren dann so wie bereits oben beschrieben.

Filesystem-Tabelle korrigieren: Die UUID-Einträge in der „fstab“ sind nach dem Übertragen der umgezogenen Dateien natürlich nicht mehr gültig.
Vergrößern Filesystem-Tabelle korrigieren: Die UUID-Einträge in der „fstab“ sind nach dem Übertragen der umgezogenen Dateien natürlich nicht mehr gültig.

Kopieren mit tar - Die Risikovariante

Sie verfügen über Erfahrungen in Hardware-Basteleien? Dann können Sie die Variante des Kopierens mit tar abkürzen, wenn Sie die Platten über UUID mounten. Dazu bauen Sie die Festplatte des neuen Rechners in den alten Rechner ein. Sie booten das System mit einer Live-CD und legen zwei Mount-Punkte an. Mit tar kopieren Sie (wie im Haupttext beschrieben) die Daten des alten Systems auf die neue Festplatte, also zum Mount-Punkt der neuen Platte.

Anschließend müssen Sie in diesem Dateisystem auf der neuen Platte, das aber noch die alten Werte enthält, die Datei „/fstab anpassen“. Mit blkid suchen Sie sich die UUIDs der Platten heraus. Die alten Werte tauschen Sie jetzt gegen die Werte der neuen Platte in den Dateien „/etc/fstab“ und „/boot/grub/menu.lst“ aus. Sie müssen dann noch den Bootmanager in die neue Platte installieren. Das erledigen Sie im Terminal mit den folgenden Kommandos (wenn der Mount-Punkt der neuen Platte „/mnt/new“ ist). Sie wechseln auf die alte Platte und geben

mount -o bind /dev /mnt/new/dev mount -t proc proc /mnt/new/proc chroot /mnt/new /bin/bash

ein.

Danach führen Sie auf der neuen Platte diesen Befehl aus:

grub-install /dev/sdc

Die Kennung „/sdc“ ist hier unabhängig davon zu benutzen, wie viele Partitionen vorhanden sind. Fahren Sie dann den Rechner herunter, bauen Sie die alte Platte aus, schließen Sie die neue Platte statt der alten Festplatte an, und starten Sie den Rechner. Er sollte jetzt mit Ihrem umgezogenen System starten.

0 Kommentare zu diesem Artikel
1974481