{"id":346,"date":"2012-04-18T12:36:00","date_gmt":"2012-04-18T11:36:00","guid":{"rendered":"https:\/\/www.my-it-brain.de\/wordpress\/?p=346"},"modified":"2015-08-21T21:29:05","modified_gmt":"2015-08-21T19:29:05","slug":"easy-servermigration-mit-rsync","status":"publish","type":"post","link":"https:\/\/www.my-it-brain.de\/wordpress\/easy-servermigration-mit-rsync\/","title":{"rendered":"Easy Servermigration mit RSYNC"},"content":{"rendered":"<p>Soll ein Linux-Server auf eine neue Hardware umziehen, stehen uns hier mehrere Wege offen. Ich selbst habe die letzte Migration dieser Art mit RSYNC durchgef\u00fchrt. Dies hat so gut geklappt, dass ich euch hier beschreiben m\u00f6chte, wie dabei vorzugehen ist.<\/p>\n<p>Ich habe mich f\u00fcr die folgende Vorgehensweise entschieden.<\/p>\n<ol>\n<li>Installation der Linuxdistribution des Quellsystems auf der neuen Hardware. Z.B. Quelle = Ubuntu Server 11.10 und Ziel = Ubuntu Server 11.10.<\/li>\n<li>Das Netzwerkinterface wird auf eine freie IP Adresse aus dem Netz konfiguriert, in dem sich auch das Quellsystem befindet.<\/li>\n<li>F\u00fcr die Migration aktivieren wir auf dem Zielsystem den <em>root<\/em>-Account, in dem wir ihm ein Passwort geben -&gt; <em>sudo passwd root<\/em><\/li>\n<li>Um vom Quellsystem auf den neuen Server zugreifen\u00a0 zu k\u00f6nnen installieren wir einen SSH-Server und richten uns den Zugriff \u00fcber Public-Keys ein. Wie dies funktioniert wird sehr gut im Artikel <a title=\"SSH\" href=\"http:\/\/wiki.ubuntuusers.de\/SSH\" target=\"_blank\">SSH<\/a> im <a title=\"Ubuntuusers Wiki\" href=\"http:\/\/wiki.ubuntuusers.de\/Startseite\" target=\"_blank\">Ubuntuusers Wiki<\/a> erkl\u00e4rt.<\/li>\n<li>Auf dem neuen Server sollen nach der Migration die gleichen Pakete installiert sein wie auf dem Quellsystem. Dazu erstellt man auf dem Quellsystem mit <em>dpkg &#8211;get-selections | awk &#8218;!\/deinstall|purge|hold\/ {print $1}&#8216; &gt; ~\/packages.list<\/em>eine Liste aller installierten Pakete. Damit bei der Installation dieser Pakete die gleichen Paketquellen wie auf dem Quellsystem verwendet werden sichern wir diese ebenfalls mit\u00a0find\n<pre class=\"notranslate\">find \/etc\/apt\/sources.list* -type f -name '*.list' -exec bash -c 'echo -e \"\\n## $1 \";grep \"^[[:space:]]*[^#[:space:]]\" ${1}' _ {} \\; &gt; sources.list.save<\/pre>\n<p>in eine Datei. Diese beiden Dateien \u00fcbertragen wir nun via SCP auf das Zielsystem.<\/li>\n<li>Nun kopiert man die <em>sources.list.sav<\/em> nach <em>\/etc\/apt\/sources.list<\/em> und f\u00fchrt anschlie\u00dfend mit <em>apt-get update<\/em>ein Update der Quellen durch. Mit dem folgenden Befehl werden die Pakete aus der zuvor erstellten Liste installiert. -&gt;<br \/>\n<em>xargs -a &#8222;packages.list&#8220; sudo apt-get install<\/em><\/li>\n<li>Jetzt ist die Migration schon fast geschafft. Als n\u00e4chsten kopieren wir uns die <em>\/etc\/fstab<\/em> und <em>\/etc\/network\/interfaces<\/em> um sp\u00e4ter noch auf Infos aus diesen Dateien arbeiten zu k\u00f6nnen. Im letzten Schritt kopieren wir mit <em>rsync -avz Quelle root@Zielhost:\/ <\/em>die ben\u00f6tigten Verzeichnisse und Dateien auf unser Zielsystem. Wird RSYNC als <em>root <\/em>ausgef\u00fchrt werden dabei automatisch alle Zugriffsrechte beibehalten.<\/li>\n<li>Nachdem RSYNC durchgelaufen ist m\u00fcssen nur noch die Dateien <em>\/etc\/fstab <\/em>und <em>\/etc\/network\/interfaces<\/em> kontrolliert werden, damit der Server nach einem Reboot seine Festplatten findet und mit der IP-Konfiguration des Quellsystem startet. Das Quellsystem sollte nun vom Netzwerk getrennt werden.<\/li>\n<\/ol>\n<p>Jetzt fehlt nur noch ein Neustart des neuen Servers und schon ist die Migration abgeschlossen. Das es so einfach geht h\u00e4tte ich vorher selbst nicht gedacht. Aber nach der ersten Erfahrung werde ich bei der n\u00e4chsten Migration wieder zu diesem Mittel greifen.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Soll ein Linux-Server auf eine neue Hardware umziehen, stehen uns hier mehrere Wege offen. Ich selbst habe die letzte Migration dieser Art mit RSYNC durchgef\u00fchrt. Dies hat so gut geklappt, dass ich euch hier beschreiben m\u00f6chte, wie dabei vorzugehen ist. Ich habe mich f\u00fcr die folgende Vorgehensweise entschieden. Installation der Linuxdistribution des Quellsystems auf der<span class=\"continue-reading\"> <a href=\"https:\/\/www.my-it-brain.de\/wordpress\/easy-servermigration-mit-rsync\/\">[Weiterlesen&#8230;]<\/a><\/span><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_metis_text_type":"","_metis_text_length":0,"_post_count":0,"footnotes":""},"categories":[51,3],"tags":[58,81,45,46,60],"class_list":["post-346","post","type-post","status-publish","format-standard","hentry","category-linux","category-tutorials","tag-linux","tag-migration","tag-tipps","tag-tutorial","tag-ubuntu"],"_links":{"self":[{"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/posts\/346","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/comments?post=346"}],"version-history":[{"count":6,"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/posts\/346\/revisions"}],"predecessor-version":[{"id":1228,"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/posts\/346\/revisions\/1228"}],"wp:attachment":[{"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/media?parent=346"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/categories?post=346"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.my-it-brain.de\/wordpress\/wp-json\/wp\/v2\/tags?post=346"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}