Tutorials arrow Webseiten Tutorials arrow Server Konfiguration arrow Backup für Linux Server mit Plesk
TanMar
Tutorials
 
Navigation
Tutorials
Windows Tutorials
Linux Tutorials
Programme Tutorials
Webseiten Tutorials
Anbieterkennzeichnung
Ein Service von TanMar WebentwicklungTanMar Tutorials (aktiv)
Zuletzt aktualisiert
Backup für Linux Server mit Plesk Drucken E-Mail

Backups für Plesk Server erstellenAnbieter für Root Server wie 1&1, Strato oder 1Blu stellen einen über FTP ansprechbaren Backupspeicher zur Verfügung, der ausreicht, um den gesamten Server zu sichern. Für die regelmäßige Sicherung des Servers muss man jedoch selbst sorgen. Dieses Tutorial beschreibt wie mit dem zum Funktionsumfang von Plesk gehörenden Programm pleskbackup eine komplette Sicherung aller Accounts erstellt werden kann.

Der in Plesk integrierte Backup Manager für Kunden und Domains

Vollbackup für Plesk Server erstellen

Leider bietet Plesk über die grafische Oberfläche keinerlei Möglichkeit, ein Vollbackup des Servers inklusive aller Kunden und Domains sowie der globalen Einstellungen zu erstellen. Dies lässt sich lediglich mit dem Shell Programm pleskbackup bewerkstelligen, das in der Regel im Verzeichnis /usr/local/psa/bin/ zu finden ist.

Für einen ersten Test erstellen wir ein lokales Backup des Servers. Dafür benötigen Sie ein Verzeichnis, in dem ausreichen viel Platz für das Vollbackup zur Verfügung steht. Da manche Anbieter die Festplatte des Servers mehrfach in Partitionen unterteilen sind manche Partitionen zu klein, um ein volles Backup des Servers aufzunehmen – dazu später auch noch mehr. Mit dem Befehl df können sie sich die Belegung der verschiedenen Partitionen anzeigen lassen:

# df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda1               962504    234060     679552  26% /
tmpfs                  2025252         0    2025252   0% /dev/shm
/dev/sda5              4873184   2722388    2150796  56% /usr
/dev/sda8             36167356   3109372   33057984   9% /var
/dev/sda6             19521472      1624   19519848   1% /home
/dev/sda7             175695996  21448788 154247208  13% /srv
none                   2025252        76    2025176   1% /tmp

/srv ist hier die größte Partition mit dem meisten freien Speicher. Sie können die Daten direkt hier ablegen oder sich ein separates Verzeichnis für die Backups erstellen (z.B. /srv/backup). Um mit pleskbackup ein Vollbackup in /srv/backup zu erstellen rufen Sie folgenden Befehl auf:

/usr/local/psa/bin/pleskbackup  all /srv/backup/backup.bkp

Je nach der Anzahl der Accounts auf dem Server und der Größe der Accounts kann die Erstellung des Backups einige Zeit in Anspruch nehmen. Pleskbackup sichert alle Dateien der Accounts, alle Datenbanken sowie alle Postfächer und darin befindliche Emails.

Um die Backups auf dem FTP-Backupspeicher abzulegen, sieht der Befehl wie folgt aus:

/usr/local/psa/bin/pleskbackup  all ftp://benutzer:passwort@server/dateiname.bkp 

Plesk erstellt wie im ersten Beispiel ein Vollbackup des Servers aber überträgt das erstellte Backup sofort auf den FTP-Backupserver.

Backup zeitgesteuert ausführen

Um das Backup zeitgesteuert zu erstellen, müssen sie einen Cron-Job erstellen, der pleskbackup regelmäßig aufruft. Das lässt sich über die Plesk-Oberfläche bewerkstelligen. Gehen Sie dazu im Menü Server in den Dialog Scheduled tasks. Es öffnet sich zunächst eine Liste der Systembenutzer:

Auswahl des Systembenutzers beim Erstellen eines Cron-Jobs

Einen neuen Cron-Job für den Benutzer root erstellenWählen Sie hier den User root aus und anschließend den Button Add new Task. Es öffnet sich ein ein neuer Dialog, in dem Sie festlegen können, welchen Befehl der neue Cronjob zu welchen Zeiten ausführen soll. In diesem Beispiel soll das Backup jeden Tag jeweils nachts um drei ausgeführt werden:

Festlegen der Startzeit und des Befehls für den Cron-Job

Geben Sie die von Ihnen gewünschten Werte für Minute und Stunde ein. Die Felder zu Tag des Monats, Monat und Tag der Woche füllen Sie mit einem *. Schließlich fügen Sie im Feld Befehl noch den Befehl für Pleskbackup ein und bestätigen Sie den Dialog. Wenn Sie alles richtig angegeben haben wird dann in der kommenden Nacht das erste automatische Backup erstellt.

Große Backups und das Verzeichnis /var/lib/psa/dumps

Seit der Version 8.2 speichert das Programm pleskbackup die Daten beim Erstellen von Backups temporär im Verzeichnis /var/lib/psa/dumps. Dieses Verhalten lässt sich derzeit nicht konfigurieren und ist normal auf nicht weiter problematisch. Wie bereits oben erwähnt sind die Festplatten der Server beispielsweise bei 1&1 in mehrere Partitionen aufgeteilt. Dummerweise ist ausgerechnet die Partition für /var oftmals mit nur 4GB recht knapp bemessen. Deshalb kann es sein, dass diese Partition auf Servern mit sehr großen einzelnen Accounts voll läuft.

Dadurch wird nicht nur das Erstellen von Backups verhindert, sondern pleskbackup hinterlässt dann eine volle Partition, was zur Folge hat, dass MySQL und der Email Server keine Daten mehr ablegen können, da diese auf der gleichen Partition liegen.

Prüfen Sie deshalb vor der Einrichtung eines automatisierten Backups, ob auf /var ausreichend Platz zur Verfügung steht. Sollten Sie daran Zweifel haben, können Sie das Problem durch folgenden Kniff umgehen.

Erstellen Sie auf einer Partition mit ausreichen viel freiem Speicherplatz ein Verzeichnis dumps (anknüpfend an unser Beispiel von oben beispielsweise /srv/backup/dumps) und geben Sie ihm die gleichen Berechtigungen wie /var/lib/psa/dumps. Anschließend löschen Sie das Verzeichnis /var/lib/psa/dumps und erstellen Sie stattdessen einen symbolischen Link auf das frisch erstellte Verzeichnis:

mkdir /srv/backup/dumps
chown psaadm  /srv/backup/dumps
chgrp psaadm  /srv/backup/dumps
rmdir /var/lib/psa/dumps
ln -s /srv/backup/dumps  /var/lib/psa/dumps

Pleskbackup speichert seine temporären Daten nun unwissentlich auf einer anderen Partition.

Wiederherstellung einer Sicherung

Backup-Datei vom FTP-Backupserver laden

Um ein Backup komplett oder in Teilen wiederherzustellen, muss die Sicherung zunächst vom FTP-Backupserver wieder geladen werden. Um sicher zu stellen, dass für den Vorgang genügend Speicherplatz zur Verfügung steht, sollten Sie die Sicherung wieder in dem Verzeichnis ablegen, wo sie erstellt wurde – in unserem Beispiel also in /srv/backup. Die Sicherung laden sie beispielsweise mit dem Shell Programm ftp:

ftp server
Connected to server.
220 FTP server ready.
Name (server): benutzer
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> get dateiname.bkp
local: dateiname.bkp remote: dateiname.bkp
229 Entering Extended Passive Mode (|||52505|)
150 Opening BINARY mode data connection for dateiname.bkp (5809003195 bytes).
100% |*************************************|  5539 MB    9.49 MB/s    00:00 ETA
226 File send OK.
5809003195 bytes received in 09:43 (9.49 MB/s)
ftp> quit
221 Goodbye.

Erstellen einer Map-Datei

Um ein Backup ganz oder in Teilen wieder herzustellen muss zunächst aus dem Backup eine sogenannte Map-Datei erstellt werden. Dabei handelt es sich um eine Art Inhaltsverzeichnis, die pleskrestore benötigt, um auf das Backup zugreifen zu können. Diese Datei lässt sich mit dem folgenden Befehl erstellen:

/usr/local/psa/bin/pleskrestore --create-map dateiname.bkp -map map.txt

Backup einspielen

Ein Vollbackup lässt sich entweder voll beispielsweise nach einer Reinitialisierung des Servers) oder in Teilen einspielen (weil beispielsweise in einem Account Daten verloren gingen).

Um ein Backup vollständig einzuspielen benutzen Sie folgenden Befehl:

/usr/local/psa/bin/pleskrestore --restore dateiname.bkp -level all -map map.txt

Auf einem Vollbackup lassen sich auch Accounts von Kunden inkl. aller zugehöriger Domains bzw. einzelne Domains wiederherstellen. Dies wird über die Parameter level und filter gesteuert. Um den Account eines Kunden mit allen zugehörigen Domains wiederherzustellen nutzen Sie folgenden Befehl:

/usr/local/psa/bin/pleskrestore --restore dateiname.bkp -level clients
 -filter list:kunde1 -map map.txt

Mehrere Kundenaccounts gleichzeitig spielen Sie so aus dem Backup ein:

/usr/local/psa/bin/pleskrestore --restore dateiname.bkp -level clients -filter
 list:kunde1,kunde2 -map map.txt

Um einzelne Domains wieder einzulesen verwenden Sie analog den folgenden Befehl:

/usr/local/psa/bin/pleskrestore --restore dateiname.bkp -level domains
 -filter list:kunde1,kunde2 -map map.txt

Falls Sie eine Domain einlesen möchten, die auf einem anderen Server gesichert wurde weist das Plesk Backup Handbuch darauf hin, dass die Domain vor dem Einlesen bereits vorhanden sein muss. Legen Sie diese also ggf. zunächst über die Plesk Oberfläche an.

Weiterführende Informationen

Kommentare (25)add comment

Wikibear said:

  Hallo,

Seit der Version 8.2 speichert das Programm pleskbackup die Daten beim Erstellen von Backups temporär im Verzeichnis /var/lib/psa/dumps. Dieses Verhalten lässt sich derzeit nicht konfigurieren und ist normal auf nicht weiter problematisch. Wie bereits oben erwähnt sind die Festplatten der Server beispielsweise bei 1&1 in mehrere Partitionen aufgeteilt. Dummerweise ist ausgerechnet die Partition für /var oftmals mit nur 4GB recht knapp bemessen. Deshalb kann es sein, dass diese Partition auf Servern mit sehr großen einzelnen Accounts voll läuft.


Falsch. Die Platte wird auch von Mysql genutzt. Sollte man Backups machen, sollte der Backuppfad geändert werden!

Lösung:

http://www.wikibaer.de/2010/06/06/plesk-9-backup-db-schrott-10gb-platte-voll/

Sollte man mal abändern. Der Symbolische Link funktioniert nicht. Plesk Backup meldet dann Platte voll....
06.06.2010 | url

Anonym said:

  Resolution
Plesk Migration Manager (PMM) does not exist in Parallels Plesk Panel Beta, Plesk 9 Release and the first patch 9.0.1.
The feature is under development now and will be available in the next version of Parallels Plesk Panel 9.2.

However it is still possible to migrate objects from Parallels Plesk Panel versions 7.5, 8.6 manually using Plesk Backup Manager.

You may migrate Parallels Plesk Panel as a whole or separate domains and clients. Below are the instructions.

1. Migrate server

a. Login to a source server with Parallels Plesk Panel 8.6 installed and create a full backup with the pleskbackup utility:

~# /usr/local/psa/bin/pleskbackup all

The utility is included into the psa-backup-manager package for Plesk 8.6, verify that it is installed.

In Parallels Plesk Panel 7.5 the command line backup utility is /usr/local/psa/bin/psadump that is included into psa-bu package.

If not installed you may install Plesk Backup Manager via Autoinstaller in control panel Server -> Updater

b. Copy the dump to the destination server with Parallels Plesk Panel 9 and convert the backup to version 9 with pre9-backup-convert.

~# /usr/local/psa/bin/pre9-backup-convert -v convert -d /var/lib/psa/dumps/

Where /var/lib/psa/dumps/ is Backups directory on the destination server with Parallels Plesk Panel 9.

This will create a number of backup XML files and subdirectories with data under /var/lib/psa/dumps.

c. Login to Parallels Plesk Panel as administrator and change to the server backup repository:

Home -> Backup Manager -> Server Repository

There is a list of backup files in the server repository.

d. Click the backup name to enter the Backup Details page.

e. Select the required restoration options and click Restore to start the restoration process.

Note: you should check the Administrator's clients option to restore all clients and domains from the backup.

10.05.2010

Verschlüsselung?! said:

  Backups die nicht verschlüsselt sind sind mit die größte Sicherheitslücke die es gibt!
Schon traurig genug das Plesk alle Passwörter im Klartext abspeichert.
10.10.2009

Wayne said:

  Der alte Befehl geht unter Plesk 9 NICHT mehr!

Neue Syntax:

/usr/local/psa/bin/pleskbackup --server --output-file=/usr/local/backup/backup.xml

evtl. in das tut mit aufnehmen?
05.03.2009 | url

Stephan said:

  wo gibt es solch eine Anleitugn fuer die 9er version?
google hat bestimmt eine Lösung nur ist der Benutzer vor dem Monitor nicht fähig nach richtigen Begriffen zu suchen.
Bei der 9er sagt mir die Shell ich soll im Plesk Handbuch suchen. Naja, gesucht habe ich, der Erfolg steht hier
17.02.2009

Ronny Köhler said:

  Hallo,

ich bin heute auf diese Tutorial gestoßen und wollte mal Danke! sagen.

Aber eine Frage hätte ich da schon:
Wenn ich die Datensicherung automatisiere, dann speicher ich jeweils nur das aktuelle Backup oder? Denn einen Dateinamen mit einer Variable (z.b. Datum) kann ich hier nicht angeben oder? Genauso berücksichtig diese Automatiesierung keine Anzahl vorhandener Backups?! Gibt es dafür auch eine Möglichkeit?

MfG
Ronny Köhler
31.01.2009 | url

rotor said:

  Hi!

Leider wird mein Restore unterbrochen - habe aber keine Ahnung wieso, das System scheinbar auch nicht:

Restore has been started
------------------------------------------------------------------------
Elapsed time: 00:00:00
Elapsed time: 00:00:05Failed validation of the document with external DTD /opt/psa/PMM/plesk.dtd. The errors are: (null).

08.12.2008

pimp said:

  Hat einer von euch vielleicht eine Ahnung, warum das mit dem ftpupload nicht klappt bei mir?

Plesk macht brav das backup, im Moment des ftp uploads bricht es aber ab und gibt nur aus:

Can't upload file serverbackup xxxxxx.bkp to ftp
06.06.2008

Frank Engel said:

  Hi.
Ich habe einen cronjob unter /usr/local/psa/cron liegen. Verzeichnis und Dateirechte 0750. Owner psaadm Group psaadm.

In Plesk habe ich bei den root cronjobs als Befehl angegeben /usr/loca/psa/cron/meinskript.sh

Das Ding wird nicht ausgeführt. Woran kanns liegen???

Gruß.
Frank
05.04.2008 | url

Gerd said:

  Interessant beim Backup ist noch die Option: --skip-logs

z.B. /usr/local/psa/bin/pleskbackup all --skip-logs /srv/backup/backup.bkp


Wer auf gesichererte Logdateien verzichten kann, spart damit Festplattenspeicher, Traffic, Zeit...!
12.03.2008

Alex said:

  leider weis mein Provider bei diesem Problem nicht weiter und von swsoft gab es keine Antwort. Die einzige Möglichkeit, die ich gefunden habe, ist das Backup zu entpacken. Dazu kann man das Plesktool "backup-unpack" verwenden, liegt meist unter /usr/local/psa/bin/backup-unpack
05.03.2008

Alex said:

  Bei der Backupwiederherstellung kommt bei mir nur:

/usr/local/psa/bin/pleskrestore --restore plesk.bkp -level all -map plesk.map
WARNING: Backup file has wrong signature for this server
------------------------------------------------------------------------
Restore has been started
------------------------------------------------------------------------
WARNING! Restore with "-level server" switch brings server to exactly the same
state, as was saved in backup file. All objects, not presented in the backup
file (clients or domains) will be deleted. Proceed? [yes/no]: yes

Vergangene Zeit: 00:01:02Failed validation of the document with external DTD /opt/psa/PMM/plesk.dtd. The errors are: Value "info_not_required" for attribute name of pinfo is not among the enumerated set.

TanMar: Der Effekt ist uns bisher so nicht unter gekommen. Wurde das Backup denn mit der gleichen Plesk Version erstellt, mit der Sie es wiederherstellen?
Eine Recherche bei Google hat noch folgende Diskussion erbracht: http://serversupportforum.de/f...0-1-a.html

04.03.2008 | url

hegassner said:

  Die Hilfetexte bei 1&1 waren miserabel. Mit dieser Anleitung dagegen klappte alles auf anhieb! Super!
22.02.2008 | url

Bene said:

  Auch bei mir bei nem Rootserver von 1und1 klappte das Backup mit der Anleitung noch nicht, da die .bkp Datei im /tmp Ordner angelegt wurde der aber nur knappe 500MB hat - gleiches Prob also wie ChrMei.
Ich habe dementsprechend das pleskbackup script geändert. In folgenden Zeilen "tmp" durch den neuen Pfad ersetzen.
$res{'backup-file'} = "/tmp/$5";

while (-f "/tmp/".($file = $ftp{'file'}.$part)) {

if (!$err && !$FTP->put("/tmp/$file", $file)) {

unlink("/tmp/$file");

Nach einem Plesk Update wird das wahrscheinlich wieder geändert werden müssen, es sei denn die Jungs von parallels kriegen das bis dahin anständig hin.


20.02.2008

Clemens said:

  Super Sache!
Hat mir sehr geholfen!

mfg c.
15.02.2008 | url

Dresden-Man said:

  Echt gute und hilfreiche Erklärung. Dickes Lob - vor allem sehr ausführlich. Bei dem Plesk-Handbuch habe ich mich immer ein bisschen schwer getan. Auch sonst ist Deine Seite qualitativ hochwertig.
Danke
09.02.2008 | url

Nighthawk said:

  Unbedingt zu beachten ist das die Plesk Versionen exakt gleich sind. Ich weiss nicht was sich swsoft dabei denkt so inkompatible Backup Mechanismen zu entwerfen.
Die version muss bis ins letzte Detail gleich sein damit es funktioniert. Für jemanden wie mich der das Linux System, sowie Plesk immer so aktuell haelt wie Möglich ist das eine Zumutung. Da ist doch deutlich Nachbesserungsbedarf angesagt. Wenn IBM oder HP das bei den von mir aufgesetzten Firmenservern so handhaben würde, wäre mein rat:
Kauft wieder Schreibmaschinen.

ALSO WENN MÖGLICH MERKT EUCH GENAU DIE VORHANDENE PLESK VERSION!
02.02.2008 | url

steffi said:

  Dieses Tut ist echt supie smilies/grin.gif

Stand vor einem Serverumzug und wollte nicht alle Kunden und Datenbankuser usw von Hand neu anlegen müssen, mit dieser Lösung habe ich Stunden gespart. DANKE!

Schöne Feiertage

Steffi
21.12.2007

ChrMei said:

  Der Tip zum Verlegen des /var/lib/psa/dumps in die Partition /srv ist schon ein sehr guter Ansatz.
Der Pfad /var/lib/psa/sumps steht unter /etc/psa/psa.conf. Wenn man ihn dort ändert, wird vorerst ebenfalls auf das neue Verzeichnis geschrieben. D.h. anstatt des Links die Pfadänderung in der psa.conf. Ob diese jedoch durch Plesk überschrieben wird, kann ich noch nicht sagen.

Ein Problem bei 1&1 bleibt jedoch: da bei 1&1 ein FTP-Account zur Sicherung enthalten ist, lag es nahe, diesen als Ziel bei pleskbackup zu verwenden. Dann jedoch wird zusätzlich auch in das /tmp Verzeichnis geschrieben, und das ist bei 1&1 nur etwa 500MB gross! Leider kann man dieses Verzeichnis nicht so einfach in eine andere Partition verlegen, weil das Verzeichnis selbst der Mount-Point ist. Man könnte nur das Perl-Script (pleskbackup) ändern. Oder hat dies jemand schon gelöst.

Trotzdem danke für den Denkanstoss.
06.12.2007

Mario Figura said:

  Die Anleitung funktioniert super.

Vielen Dank
01.12.2007 | url

/nn said:

  habe mich auch mit dem problem herumgeschlagen daß nach den letzten Updates die /var Partition zeitweise komplett ausgebucht war. der vedacht mit den automatisierten backups lag nahe.
danke für die detailierte beschreibung des Problems mit workaround.
26.11.2007

Deaf-TV said:

  wo ist Download Backup.tgz im Internet zu Finden? smilies/cry.gif
21.11.2007 | url

Deaf-TV said:

  Guten Tag
Google gesucht, hier gefunden
Ich habe Strato Vertrag

Falls Sie die Vermutung hegen, dass ein Dritter Ihren Server gehackt hat,
empfehlen wir Ihnen eine Sicherung Ihrer persönlichen Dateien auf dem Server
und eine Neuinstallation des Servers.
Erzeugen Sie mit dem Befehl "tar cvfz /backup.tgz "
Backupdateien Ihrer persönlichen Dateien.
Geben Sie dann den Befehl "/etc/init.d/network stop" ein, booten Sie
danach im RecoveryModus und kopieren Sie Ihre Dateien per FTP oder SSH auf
einen anderen Server.

Ich verstehe nicht und habe keine Dateien Backup.tgz

Gruß
Denny Brendel
21.11.2007 | url

Hugo said:

  Klingt sehr gut, aber: Wie kann man denn im Falle eines Falles dann das Backup wieder einspielen (restore?)

TanMar: Das Tutorial beschreibt jetzt auch die Wiederherstellung von Sicherungen mit dem Programm pleskrestore
03.11.2007

FaNa said:

  Dickes Lob, denn ich stand ganz genau vor diesem Problem!
Es ist immer wieder schön, dass sich Leute Mühe geben und an der Stelle möchte ich mich ganz herzlich dafür bedanken. smilies/cheesy.gif
14.10.2007

Kommentar schreiben
quote
bold
italicize
underline
strike
url
image
quote
quote
Smiley
Smiley
Smiley
Smiley
Smiley
Smiley
Smiley
Smiley
Smiley
Smiley
Smiley

busy
 

© Copyright 2005 TanMar Web-Entwicklung - Berlin. Alle Rechte Vorbehalten.
Kontakt | Photoshop Tutorials | Partner