Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
linux:sicherung [2010-05-17 13:18] stefan |
linux:sicherung [2014-04-05 11:42] (aktuell) |
||
---|---|---|---|
Zeile 3: | Zeile 3: | ||
* dann sollten die Subversion-Repositories unter ''/home/svn'' sowie alle übrigen wichtigen **Home-Verzeichnisse** gesichert werden | * dann sollten die Subversion-Repositories unter ''/home/svn'' sowie alle übrigen wichtigen **Home-Verzeichnisse** gesichert werden | ||
* die **Webseiten** unter ''/var/www'' sind natürlich auch zu sichern, sowie die **MySQL-Datenbanken** mittels ''mysqldump'' | * die **Webseiten** unter ''/var/www'' sind natürlich auch zu sichern, sowie die **MySQL-Datenbanken** mittels ''mysqldump'' | ||
+ | |||
+ | ===== Sicherung Datenbanken ===== | ||
+ | <code bash>#!/bin/bash | ||
+ | TODAY=$(date +%Y-%m-%d) | ||
+ | BEFORE=$(date +%Y-%m-%d -d "-7 days") | ||
+ | DBS="db1 db2 db3" | ||
+ | BUPATH=/home/backup/dbs/ | ||
+ | BUFILE=DBs_${TODAY}.tgz | ||
+ | RMFILE=DBs_${BEFORE}.tgz | ||
+ | |||
+ | for DB in $DBS | ||
+ | do | ||
+ | echo "Sichere Datenbank ${DB}" | ||
+ | mysqldump $DB -u USER --password=PASS > ${BUPATH}${DB}_${TODAY}.sql | ||
+ | done | ||
+ | |||
+ | cd ${BUPATH} | ||
+ | tar --remove-files -czf ${BUFILE} *.sql | ||
+ | |||
+ | if test -e ${RMFILE} | ||
+ | then | ||
+ | echo "Entferne DB-Sicherung ${RMFILE}" | ||
+ | rm ${RMFILE} | ||
+ | fi | ||
+ | exit 0</code> | ||
+ | |||
+ | ===== Sicherung Dateisystem ===== | ||
+ | <code bash>#!/bin/bash | ||
+ | DIRS=" | ||
+ | /var/www | ||
+ | /etc | ||
+ | /root | ||
+ | " | ||
+ | |||
+ | TODAY=$(date +%Y-%m-%d) | ||
+ | LASTWEEK=$(date +%Y-%m-%d -d "-7 days") | ||
+ | BACKUPDIR=/home/backup/filesystem/ | ||
+ | |||
+ | for DIR in $DIRS | ||
+ | do | ||
+ | NAME=`basename ${DIR}` | ||
+ | CRFILE=${BACKUPDIR}${NAME}_${TODAY}.tgz | ||
+ | RMFILE=${BACKUPDIR}${NAME}_${LASTWEEK}.tgz | ||
+ | echo "Sichere ${DIR} nach ${CRFILE}" | ||
+ | tar czf ${BACKUPDIR}${NAME}_${TODAY}.tgz ${DIR} --exclude=.svn | ||
+ | |||
+ | if test -e ${RMFILE} | ||
+ | then | ||
+ | echo "Entferne ${RMFILE}" | ||
+ | rm ${RMFILE} | ||
+ | fi | ||
+ | done | ||
+ | exit 0</code> |