Ich möchte die Konfiguration eines Ubuntu-Desktops auf eine neue Box mit anderer Hardware migrieren. Was ist der einfachste Weg, dies zu tun? / etc / enthält maschinen- und hardwarespezifische Einstellungen, sodass ich sie nicht einfach blind kopieren kann. Ein ähnliches Problem besteht für installierte Pakete.
Bearbeiten: Dies ist ein Wechsel von x86 zu x86-64.
Antworten:
Erstens, wenn Sie weiterhin 32-Bit-Binärdateien ausführen möchten, ändern Sie die Prozessorarchitektur nicht wirklich: Sie führen weiterhin einen x86-Prozessor aus, auch wenn dieser auch andere Funktionen ausführen kann. In diesem Fall empfehle ich, Ihre Installation zu klonen oder einfach die Festplatte zu verschieben, wie unter Verschieben der Linux-Installation auf einen neuen Computer beschrieben .
Wenn Sie jedoch ein 64-Bit-System (in Ubuntu-Begriffen: eine
amd64
Architektur) haben möchten, müssen Sie es neu installieren, da Sie keineamd64
Pakete auf einemi386
System installieren können oder umgekehrt. (Dies wird sich ändern, wenn Multiarch kommt).Viele Anpassungen befinden sich in Ihrem Home-Verzeichnis, und Sie können diese auf den neuen Computer kopieren. Die Systemeinstellungen können aufgrund der Änderung der Prozessorarchitektur nicht so einfach kopiert werden.
Versuchen Sie unter Ubuntu 10.10 und höher OneConf .
Eines der wichtigsten Dinge, die Sie bei der neuen Installation reproduzieren möchten, sind die installierten Pakete. Bei APT-basierten Distributionen können Sie mit dem
aptitude-create-state-bundle
Befehl (Teil desaptitude
Pakets) ein Archiv erstellen, das die Liste der installierten Pakete und deren Debconf- Konfiguration enthält, sowieaptitude-run-state-bundle
auf dem neuen Computer. (Vielen Dank, dass Sie mir davon erzählt habenaptitude-create-state-bundle
.) Siehe auch Ubuntu-Liste explizit installierter Pakete und die dort zitierten Super User- und Ubuntu-Fragen, insbesondere die Antwort von Telemachus , zur manuellen Ausführung dieses Teils.Für Dinge, die Sie geändert haben
/etc
, müssen Sie sie überprüfen. Viele haben mit den spezifischen Hardware- oder Netzwerkeinstellungen zu tun und sollten nicht kopiert werden. Andere haben mit persönlichen Einstellungen zu tun - aber Sie sollten persönliche Einstellungen nach Möglichkeit auf Benutzerbasis festlegen, damit die Einstellungen in Ihrem Home-Verzeichnis gespeichert werden.Wenn Sie im Voraus planen, können Sie etckeeper verwenden , um die
/etc
Versionskontrolle zu aktivieren ( etckeeper-Schnellstart ). Sie müssen nichts über die Versionskontrolle wissen, um etckeeper verwenden zu können. Sie müssen nur mit dem Lernen beginnen, wenn Sie es nutzen möchten, um ausgefallene Dinge zu tun.quelle
/home
,/etc
,/var
,/usr
und alle) und nur bearbeitet die wenige Dateien inetc
dieser Notwendigkeit Bearbeitung. Dies ist keine Option, wenn Sie zu einer anderen Architektur wechseln, da Sie alle Binärpakete neu installieren müssen./etc
einzeln mit einer aussagekräftigen Festschreibungsnachricht festschreiben (anstatt sich auf die Autocommit-Hooks zu verlassen) und maschinenspezifische Änderungen in einem anderen Zweig als den Sysadmin-Einstellungen oder der standortweiten Konfiguration festschreiben. Aber auch die grundlegende Verwendung hilft dabei, die vorgenommenen Änderungen im Auge zu behalten/etc
, damit Sie sie auf dem neuen Computer replizieren können.aptitude-create-state-bundle
?aptitude-create-state-bundle
. Vielen Dank, dies ist eine automatische Methode zum Reproduzieren des APT-verwalteten Status (besser als die manuelle Methode, bei der keine APT-Quellen oder Debconf-Einstellungen reproduziert wurden). Möglicherweise möchten Sie auch eine Antwort auf die zugehörigen Fragen hinzufügen .So erhalten Sie alles außer dem, was Sie manuell konfiguriert haben:
Bearbeiten Sie diese Dateien nach Bedarf für alles, was archabhängig ist (z. B. Linux-Image), aber ich denke nicht, dass es viel geben wird.
Kopieren Sie diese Dateien auf das neue System und führen Sie Folgendes aus:
Sie möchten auch (vorzugsweise mit rsync) / home und alle anderen Datenverzeichnisse auf das neue System kopieren.
Das einzige, was übrig bleibt, sind Konfigurationsdateien aus Hauptpaketen (z. B. Apache, Bind, Cronjobs usw.).
quelle
aptitude search '~i !~M'
diese Option , um die Liste der manuell installierten Pakete zu speichern. Weitere Informationen finden Sie in dieser Antwort .Wirklich viel Windows-Voodoo in Bezug auf Treiber, die Registrierung und die Empfindlichkeit gegenüber Motherboard-Änderungen ist unter Linux weniger schwerwiegend, wenn Sie einen generischen Kernel mit allen Treibern als Module verwenden, was für Ubuntu die übliche Situation ist. Dies sind die einzigen Dinge in / etc, die von der mir bekannten Hardware abhängen:
Wenn die GPU identisch ist, der Laufwerkscontroller vom selben Typ ist und Sie keine Reihe von hausgemachten Skripten haben, die von den Namen Ihrer Netzwerkschnittstellen abhängen, sehe ich keine größeren Probleme.
quelle
/etc/default/grub
als Wert vonGRUB_CMDLINE_LINUX_DEFAULT
).[ergänzt diese ausgezeichnete Antwort ]
Ich sehe, dass Sie Bedenken hinsichtlich installierter Pakete erwähnen. Damit meinen Sie wohl, dass Sie eine Festplatte von einem Computer auf einen anderen übertragen werden. Angenommen, Ihre beiden Computer haben eine x86-Architektur, kann ich mir nur vorstellen, dass dies passieren kann, wenn Ihre Installation 64-Bit ist und Ihr neuer Computer nicht. Wenn die Dinge anders sind, sollte es kein Problem geben.
quelle