Schlagwort-Archive: backup

Den eigenen Webauftritt sichern

Es soll den ein oder anderen geben, der seine Daten zwischendurch auf externe Medien wie Festplatte oder DVD sichert. Hierfür gibt es unzählige kostenpflichtige oder auch kostenlose Tools, manchmal reicht auch ein kleines Script um eine Sicherung seiner Daten anzulegen. Nur wie oft wird die eigene Internetseite gesichert? Natürlich kann man sich auf die backups seines Hostingproviders verlassen, nur kommt man da notfalls schnell ran und vor allem auch kostenlos? Für wordpress, contao etc gibt es Plugins die den Auftritt sichern, ich habe mir jedoch ein eigenes kleines Script geschrieben.

Die folgenden Variablen müssen hierfür befüllt werden:

# ftp Zugangsdaten
USERNAME=<username> //willi
PASSWORD=<passwort> //sogeheim
SERVER=<server> //www.meineseite.de
# aufruf der per htaccess php Datei
USER=<user>  // lieschen
PASSWORD2=<passwort> // auchgeheim
URL=<url zum Aufruf ohne dump.php Angabe> // www.meineseite.de/geheim
DATEIPFAD=<Pfad zur dump.php per ftp> // geheim

Hier werden die lokalen Backups abgelegt.

TARGET=/backup/${SERVER}/${DATE}

Als erstes wird der unter TARGET angegebene Ordner erstellt, im Anschluss werden alle Dateien per FTP heruntergeladen. Um Platz zu sparen werden die heruntergeladenen Dateien gepackt.
Damit ein mysqldump erstellt werden kann, muss die Datei dump.php auf der Internetseite hinterlegt werden. (Die dump.php muss per htaccess geschützt werden.) In dem Script wird die Datei über lynx aufgerufen, nach dem Aufruf wird der sqldump per ncftpget heruntergeladen. Der Abruf per ncftpget ist so gesetzt, das der sqldump nach erfolgreichem download gelöscht wird.

In der dump.php sind die Zugangsdaten für die Mysql Datenbank hinterlegt. Wenn mehrere Datenbanken unter dem Webhostingpaket verwendet werden, kann der php Code zum erstellen des Dumps auch öfters angegeben werden.

Download:Script

einfaches Backup Script für Ordner

Um mehrere Ordner zu sichern habe ich mir folgendes Script erstellt

#!/bin/bash

DATE=`date +%Y%m%d`
TARGET=/daten/sicherung/${DATE}
mkdir $TARGET
# ordner sichern
folders=`cat /home/willi/bin/folders.txt`

for folder in $folders; do
echo $folder
TARBALL=`echo $folder | sed -e ’s/\//_/g’`
echo $TARBALL
cd $TARGET
tar cfvz ${TARBALL}.tar.gz $folder
done

Das Script sichert jeden Ordner der in der Datei folders.txt angegeben ist z.B.
/home/willi
/opt/irgendwas