Frage Vollständige Wiederherstellung des Linux-Systems


Ich bin vertraut mit rsync verwenden, um verschiedene Dateien von meinem System zu sichern, aber was ist der beste Weg, um eine Maschine vollständig wiederherzustellen.

Was ich in der Vergangenheit versucht habe, ist:

  1. Führen Sie ein grundlegendes Format / Neuinstallation von den Fedora-Installationsdisketten durch
  2. Stellen Sie sicher, dass das Netzwerk aktiviert ist
  3. Kopieren Sie alles aus der rsync-Sicherung über das neu installierte System

So funktioniert das, aber ich glaube nicht, dass jedes Paket, das installiert wurde, zu 100% funktioniert.

Ich möchte in der Lage sein, mein System mit minimalem Aufwand wiederherzustellen, und alles funktioniert genauso wie zum Zeitpunkt der Sicherung. Auch wenn möglich auf anderen Maschinen installieren und unbedingt zwei Maschinen mit den gleichen Paketen und Daten haben.


20
2018-06-04 17:31


Ursprung


Wenn du sagst, dass du auf anderen Rechnern installieren willst, meinst du andere 'identische / Maschinen oder mehr wie einen Desktop und einen Laptop? - Ichorus
Hardware wäre anders, aber auf beiden wollen die gleichen Softwarepakete - Simon Foster


Antworten:


Hier ist, was ich getan habe (das setzt eine einzelne Festplatte voraus, bei / dev / sda)

  • Verwenden Sie dd, um die MBR- und Partitionstabelle zu sichern: "dd bs = 512 count = 1 wenn = / dev / sda of = / backups / sda.layout"

  • Verwenden Sie rsync, um die gesamte Sache mit etwas zu kopieren: "rsync -axvPH --numeric-ids ..."

Bei der Wiederherstellung mache ich das:

  • Booten Sie den Zielrechner mit sysrescuecd, Ich werde normalerweise die 'sda.layout' Datei auf einem USB-Stick haben.

  • stelle die MBR / Partitionstabelle mit dd wieder her: "dd bs = 512 count = 1 wenn = / pfad / zu / sda.layout von = / dev / sda"

  • Verwenden Sie partprobe (Danke, Kommentator Mark) um den Kernel dazu zu bringen, die Partitionstabelle erneut zu lesen.

  • Mounten Sie alle verschiedenen Partitionen unter / restore /. Ich mache die mount Punkte identisch unter restore, also wenn ich / boot, / var auf meiner Quelle habe, endet ich mit / restore / boot, / restore / var, etc.

  • Verwenden Sie rsync, um die gesamte Sache wiederherzustellen.


16
2018-06-04 17:45



Ich habe dies mehrere Male getan und hat den Vorteil, Standard-Linux-CLI-Befehle zu verwenden. Ich benutze rsnapshot, ein Perl-Skript um rsync, um Backups auf einem zentralen Server zu machen. Dann rsync das Ganze wieder nach dem Booten von sysrescuecd und dd'ing die Partitionen Tabelle. BTW, "partprobe" wird die Partitionstabelle erneut lesen - Mark Porter
OK, dies kann als ein böser Hack angesehen werden, aber da Sie den Kernel die Partitionstabelle erneut lesen lassen können, indem Sie eine sysctl () wie fdisk ausgeben, können Sie fdisk genauso benutzen - was im Gegensatz zu partprobe immer nach meiner Erfahrung ist es: fdisk / dev / yourdisk << EOF w EOF - Bernd Haug
Danke für alle Vorschläge, ich wusste, dass es da draußen eine bessere Lösung geben muss. Werde diese Vorschläge ausprobieren und sehen, was am besten für mich funktioniert. - Simon Foster
Vergiss nicht die Zählung mit dd! "dd bs = 512 if = / dev / sda von = / backups / sda.layout count = 1" und "dd bs = 512 if = / pfad / zu / sda.layout von = / dev / sda count = 1" - Steven
@ Steven: Mist! Danke für den Fang. Kann ich einen Kommentar abgeben? - kbyrd


Ich kloniere niemals Systeme vollständig. Sie wissen nie, was sich ändern könnte, und Ihr geklontes Systembild ist bereits in dem Moment, in dem eine Änderung auftritt, nicht mehr da. Der beste Weg, dies zu tun, ist ein Verfahren, mit dem Sie funktional identische Systeme herstellen können. Eine Möglichkeit ist etwa Kickstart oder AutoYaST oder ähnliche Tools. Bewahren Sie gute Backups Ihrer Konfiguration auf und verwenden Sie idealerweise ein Konfigurationsverwaltungssystem wie Bcfg2, Puppet oder CFEngine, um alles zu konfigurieren, anstatt es von Hand zu erledigen. Wenn Sie dann ein neues System erstellen müssen, das einem anderen ähnelt oder ein vorhandenes System neu erstellt, ist dies ein einfaches und wohldefiniertes Verfahren.


6
2018-06-04 18:09





Es würde mehr Anstrengung im Voraus erfordern, aber Kickstart und Revisor können Sie eine Installation anpassen und auf anderen Computern verwenden. Sie können angepasste Versionen Ihrer Einstellungsdateien hinzufügen.

Sie sollten auch in Erwägung ziehen, Ihr Home-Verzeichnis auf einer separaten Partition zu belassen. Sie können diese Partition bei einer Neuinstallation auf einer anderen Partition in Ruhe lassen.


3
2018-06-04 18:05





Besorgen Sie sich eine Kopie von Systemwiederherstellungs-CDNach der ersten minimalen Installation booten, booten und chrooten Sie auf Ihrer Festplatte und machen dann rsync. Nach Abschluss des Vorgangs müssen Sie möglicherweise update-grub ausführen, damit es vom richtigen Boot-Gerät und Kernel bootet.


2
2018-06-04 17:41





Ich habe immer geglaubt, dass die Gentoo-Art, ein neues System zu installieren (von Backup oder sonstwie), aufgrund seiner Einfachheit das Beste war.

  1. Schaffen Sie arbeiten, minimales System.
  2. Laden Sie das funktionierende System als Festplatte in eine LiveCD.
  3. Tar das Dateisystem hoch und irgendwo speichern.
  4. Laden Sie das Zielsystem mit einer LiveCD.
  5. Bereiten Sie die Zielfestplatte vor und mounten Sie sie.
  6. Untar zu mounted Festplatte.
  7. Chroot eingeben
  8. Richten Sie den Bootloader und andere systemabhängige Dinge ein.
  9. Starten Sie und gehen Sie.
  10. Installieren Sie neue Software / kopieren Sie Benutzerordner / fügen Sie bei Bedarf weitere Dateien hinzu.

2
2018-06-04 17:47





Versuchen Sie clonezilla Live-CD. Sie können in eine Live-Sitzung booten und Ihre Maschine abbilden, ohne etwas installieren zu müssen. Sie haben dann die Möglichkeit, die Kopie des Abbilds auf einer Netzwerkfreigabe oder einem Remote-Computer usw. zu speichern.


2
2018-06-04 20:00





Wenn es genau die gleiche Maschine ist, würde ich es einfach benutzen dd um ein Disk-Image zu erstellen, erstellen Sie es dann nach Bedarf neu (möglicherweise können Sie danach einige Konfigurationen ändern).

Wenn Sie die Hardware wechseln, konnte ich einen Tarball erstellen oder eine vollständige Rsync-Sicherung des Dateisystemstamms erstellen. Ich bin nicht sicher, warum Sie zuerst eine vollständige Installation benötigen - solange Sie eine vollständige Sicherung durchführen, sollte die Fedora-Basisinstallation keine Voraussetzung sein.


0
2018-06-04 17:46





Ihr Verfahren kann zahlreiche Probleme verursachen und sollte vermieden werden.

Es gibt zwei empfohlene Hauptwege, und eine dritte, wenn Sie nur versuchen, eine Entwicklungsumgebung zu erstellen.

Imaging

Wenn die Hardware, die Sie wiederherstellen möchten, identisch oder ähnlich ist, verwenden Sie ein Disk Imaging Tool, um eine Kopie der gesamten Festplatte oder des Arrays zu erstellen. Wenn Sie wiederherstellen möchten, erstellen Sie einfach die betreffenden Maschinen mit diesem Bild neu. Wenn Sie ein Image auf mehreren Rechnern erstellen, müssen Sie darauf achten, dass alle gerätespezifischen Einstellungen auf den anderen Geräten (Hostname, statische IP-Adresse usw.) so aktualisiert werden, dass sie nicht miteinander kollidieren.

Um die eigentliche Bildgebung durchzuführen, würde ich jedes Werkzeug oder Produkt empfehlen, das Festplatten klonen kann.

Konfiguration / Home Verzeichnis-Backups

Sichern Sie auf Ihrem primären Computer regelmäßig (mit der von Ihnen gewünschten Methode) welches der folgenden Verzeichnisse (oder andere) Sie benötigen:

/ home - Alle persönlichen Einstellungen, Dokumente und Dateien des Benutzers
/ etc - Konfigurationen
/ opt - spezielle Software wird nicht über den Paketmanager installiert
/ usr / local - spezielle Software, die nicht über den Paketmanager installiert wurde
/ var - Logs und so

Installieren Sie das Betriebssystem bei der Wiederherstellung erneut auf den fraglichen Computern, und kopieren Sie dann jede dieser Dateien (oder nur die relevanten Dateien) an den richtigen Speicherort.

Virtuelle Maschinen mit Snapshots

Erstellen Sie eine virtuelle Maschine in VMWare (oder was auch immer Sie bevorzugen). Wenn es wie gewünscht konfiguriert ist, erstellen Sie einen Snapshot. Dieser Snapshot kann dann leicht auf einer beliebigen Anzahl neuer oder bestehender virtueller Maschinen wiederhergestellt werden.

Im Allgemeinen sollten Sie nur Daten und Konfigurationen sichern (wie auch immer Sie diese definieren). Das Betriebssystem und die Software können zu jeder Zeit trivial wiederhergestellt werden: nur Ihre eigenen Inhalte sind wertvoll. Wenn dieses Setup für die Entwicklung gedacht ist und Sie eine identische Umgebung sicherstellen müssen (im Gegensatz zu einfach nur, dass die Dinge wieder funktionieren), sind Snapshots in einer virtuellen Maschine wirklich die beste Wahl.

Imaging ist die Brute-Force-Lösung. Wenn Sie können, sichern Sie einfach Ihre Daten und machen Sie sich keine Sorgen über das Betriebssystem. Der Versuch, es vollständig wiederherzustellen, erfordert Ärger.

Wenn Sie klarstellen können, was Ihre endgültige Absicht hier ist, kann ich eine detailliertere Lösung anbieten.


0
2018-06-04 18:17