Einfachste Möglichkeit, VPS zu sichern

Meine situation:

Ich habe VPS (Ubuntu) mit 2 Websites. Da ich neu bei VPS bin (kürzlich bin ich vom Shared Hosting umgezogen), habe ich fast 2 Wochen damit verbracht zu lernen, wie ich mein VPS so konfigurieren kann, dass alle Bahnen so ausgeführt werden, wie ich es wollte. Ich habe beim Konfigurieren von VPS viele Fehler gemacht, also habe ich es gelernt, indem ich es neu installiert / konfiguriert / verwechselt / neu installiert / konfiguriert usw. habe..

Jetzt ist alles in Ordnung, VPS läuft, alle Dienste, die ich brauchte, funktionieren auch, viele lessons learned - ALLES OK.

Fragen:

  1. Was ist der einfachste Weg, um ein ganzes VPS-Backup zu erstellen?

  2. Kann ich VPS-Backup einfach mit WinSCP erstellen ? Ich meine, eine Verbindung zum root ( / ) - Ordner herstellen und alle VPS-Dateien von dort herunterladen?

  3. Wenn ja, wie würde ich es später wiederherstellen, wenn eine Neuinstallation des gesamten VPS erforderlich ist?

Zusätzliche Informationen zu meiner Situation:

  • Datenbanken werden von Hand gesichert (möglich über phpmyadmin)
  • es gibt keine backup-tool, das in meinem VPS-admin-panel(SolusVM)
  • ich verwende keines von GUI cpanel/directadmin / virtualmin usw. nur Konsole -
Author: Sid, 2013-12-06

3 answers

Meine bevorzugte Methode zum Sichern eines virtuellen Remote-Servers besteht darin, einfach Dateien zu kopieren - der Kernel befindet sich sowieso auf dem Host. Natürlich müssen Sie beim Wiederherstellen etwas Vorsicht walten lassen, und es ist möglicherweise nicht möglich, eine vollständige Wiederherstellung durchzuführen (im Gegensatz zu einem Disk-Image). Andererseits ist es einfacher, auf einen anderen Server zu migrieren, z. B. auf einen lokalen Server zum Testen.

Jetzt ist das Herunterladen vieler kleiner Dateien über eine Remote-Verbindung aufgrund des großen Overheads ziemlich langsam. Dies ist bedeutender wenn Sie physisch weit vom Server entfernt sind. Normalerweise ziehe ich es vor, alles in einem einzigen tar Archiv zu bündeln und es dann für eine kleinere Größe zu komprimieren.

Der Befehl dafür ist tar cpzf filename.tar.gz / (wobei / bedeutet, alles rekursiv von der Wurzel zu sichern). möglicherweise möchten Sie vorhandene Sicherungsdateien ausschließen - Wenn Sie viele Sicherungen aufbewahren möchten, ist es einfacher, sie alle in einem Verzeichnis abzulegen und dieses Verzeichnis auszuschließen. Dann müssen Sie nur diese Datei mit einem herunterladen methode, die Sie mögen.

Die Wiederherstellung erfolgt mit dem Befehl tar xpf filename.tar im Stammverzeichnis. Sie können auch das Zielverzeichnis mit -C angeben.

 8
Author: Bob,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-05-23 11:33:51

Ich habe eine identische Frage beantwortet auf serverfault, und während es einige der gleichen Grundlagen wie Bobs Antwort abdeckt, verwende ich etwas andere Werkzeuge und einen etwas anderen Fokus. Ich schlage vor, eine Paketliste zu erstellen und rsync zu verwenden (da es Berechtigungen verwalten kann und bei der Dateiübertragung ziemlich effizient ist).

Wenn alles andere fehlschlägt, gibt es den altmodischen Weg-verwenden Sie dpkg -- get-selections zu Dump aus einer Liste der installierten Pakete, und installieren Sie sie mit dpkg --set-selections. Erstellen Sie dieselben Benutzer wie die Quelle system wenn nötig-cat/etc / passwd sollte sie auflisten, und Sie kann mit diff überprüfen, ob die beiden Listen identisch sind.

Verwenden Sie dann rsync, um Ihren Ordner /etc/ für Einstellungen zu duplizieren, verschiedene / home / Ordner für Benutzer (und überprüfen Sie die Berechtigungen hier) und andere Ordner wie /var/www/. Test, stellen Sie sicher, dass alles da ist, und du bist erfolgen. Es dauert weniger Zeit, als einen neuen Server einzurichten.

Manchmal ist die alte, einfache Wege sind die besten. Wenn Sie das ausarbeiten schreiben Sie manuell einfach ein Skript, das dies von Ihrem repliziert aktuelle server automatisch.

 2
Author: Journeyman Geek,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-04-13 12:14:40

Verwenden Sie rsync für einfache inkrementelle Backups. Sie können dies über die Befehlszeile tun oder anspruchsvollere Szenarien skripten.

Beispiel können Sie beginnen mit:

$ options="--stats -aHh --delete"; echo == RUNNING with options: $options; time rsync -e ssh $options root@your-server-ip-or-hostname:/ /destination/my-server-backup --exclude /proc --exclude /dev --exclude /sys --exclude /run/udev

Weitere Beispiele finden Sie in dem Skript, das ich zusammengestellt habe, obwohl es ursprünglich für Windows direkt auf Linux angewendet werden kann: https://github.com/paravz/windows-rsync-backup

 1
Author: Alec Istomin,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2014-04-01 21:56:34