Backup regelmässig per Cronjob erstellen
Möchtest du ein Script regelmässig laufen lassen, um ein Backup deiner Website automatisch zu erstellen? Diese Anleitung beschreibt, wie du dies per Cronjob auf deinem Webhosting einrichten kannst und beinhaltet ein mögliches Beispiel eines solchen Scripts.
Dieser Artikel ist eine Anleitung, um ein Backup-Script selber zu erstellen. Es werden dabei grundlegende Kenntnisse mit dem Umgang in der Kommandozeile/Shell vorausgesetzt oder das Interesse sich diese selbständig anzueignen.
Funktionsweise des Scripts
Das Script soll das Verzeichnis der gewünschten Website und die damit verknüpfte Datenbank in einer komprimierten Datei auf dem Server sichern.
Das Backup ist dabei nur auf deinem Webhosting gespeichert und wird bei jedem neuen Durchlauf überschrieben. Wenn du dieses lokal auf deinem Computer sichern willst, kannst du dich an Schritt vier unserer Anleitung für ein Backup per SSH orientieren oder du erstellst ein Script lokal wie im Artikel «Backup über Shell-Script erstellen und lokal speichern» beschrieben.
Script erstellen
- 1
-
Zunächst werden Verzeichnisse für das Script und die Backups benötigt. Dazu kann man über den Befehl
cd ~
in das Home-Verzeichnis des Webhostings wechseln und dort zwei Ordner erstellen: Einen für das Script und einen für die Backups.mkdir oliver_script oliver_backups
- 2
-
Danach benötigen wir eine Datei mit der Dateiendung
.sh
, worin sich das Script befindet. Wir nennen diese in unserem Beispielbackup-oliverorange.sh
.vim oliver_script/backup-oliverorange.sh
- 3
-
Nun kann das Script geschrieben werden oder du fügst folgende Zeilen ein.
#!/bin/bash #Backup Script NAME="" # Name des Backups USER="" # Webhosting-Benutzer DATABASE="" # Datenbankname DATABASEUSER="" # Datenbankbenutzer DATABASEPSW="" # Passwort zum Datenbankbenutzer DIRECTORY_WEBSITE="/home/$USER/public_html/" # zu sicherndes Verzeichnis mysqldump $DATABASE > /home/$USER/oliver_backups/$NAME.sql -u$DATABASEUSER -p$DATABASEPSW tar -cf /home/$USER/oliver_backups/$NAME.tar.gz -z $DIRECTORY_WEBSITE /home/$USER/oliver_backups/$NAME.sql rm /home/$USER/oliver_backups/$NAME.sql
- 4
- Speichere und schliesse die Datei.
Beachte bitte, dass es sich bei diesem Script lediglich um ein Anwendungsbeispiel handelt und wir dessen Vollständigkeit nicht garantieren können. Hast du Fragen zum Erstellen von Shell-Scripts, so bitten wir dich die Dokumentation der jeweiligen Script-Sprache und deren Community zur Hilfe zu nehmen.
Cronjob erstellen
Richte gemäss «Cronjob erstellen und bearbeiten» einen Cronjob über dein my.cyon-Konto ein oder erstelle diesen direkt über die Shell mit folgendem Befehl:
crontab -e
In unserem Beispiel lassen wir wöchentlich am Samstag um 1 Uhr nachts ein Backup erstellen.
0 1 * * 6 /bin/bash ~/oliver_script/backup-oliverorange.sh
Weitere Beispiele findest du auf Wikipedia. Seiten wie crontab.guru oder crontab-generator.com bieten dir bei der Wahl des Zeitpunkts noch Unterstützung.
- Kategorien
- Backups erstellen und einspielen