ubuntu:backup
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende Überarbeitung | |||
| ubuntu:backup [2024/09/19 14:03] – gelöscht - Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1 | ubuntu:backup [2024/09/19 14:03] (aktuell) – ↷ Seite von ubuntu:bash:backup nach ubuntu:backup verschoben franz | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ====== Backup ====== | ||
| + | |||
| + | **Rsnapshot** | ||
| + | |||
| + | ist ein einfach zu bedienendes Backupprogramm. [[https:// | ||
| + | **ein anderes einfaches Backup-Skript ** | ||
| + | < | ||
| + | #!/bin/sh | ||
| + | NOW=$(date +" | ||
| + | # set mysql login info | ||
| + | MUSER=" | ||
| + | MPASS=" | ||
| + | MHOST=" | ||
| + | # guess binary names | ||
| + | MYSQL=" | ||
| + | MYSQLDUMP=" | ||
| + | GZIP=" | ||
| + | |||
| + | # get all db names | ||
| + | DBS=" | ||
| + | for db in $DBS | ||
| + | do | ||
| + | | ||
| + | | ||
| + | done | ||
| + | </ | ||
| + | |||
| + | **Verzeichnisse sichern ** | ||
| + | < | ||
| + | #!/bin/bash | ||
| + | # Simple backup with rsync | ||
| + | # local-mode, tossh-mode, fromssh-mode | ||
| + | |||
| + | SOURCES=(/ | ||
| + | TARGET="/ | ||
| + | |||
| + | # edit or comment with "#" | ||
| + | # | ||
| + | MONTHROTATE=monthrotate | ||
| + | |||
| + | RSYNCCONF=(--delete) | ||
| + | # | ||
| + | # | ||
| + | |||
| + | # | ||
| + | # | ||
| + | # | ||
| + | SSHPORT=22 | ||
| + | |||
| + | ### do not edit ### | ||
| + | |||
| + | MOUNT="/ | ||
| + | LN="/ | ||
| + | DPKG="/ | ||
| + | CUT="/ | ||
| + | LAST=" | ||
| + | |||
| + | LOG=$0.log | ||
| + | $DATE> $LOG | ||
| + | |||
| + | if [ " | ||
| + | TARGET=$TARGET/ | ||
| + | fi | ||
| + | |||
| + | if [ " | ||
| + | $ECHO "$DPKG --get-selections | $AWK ' | ||
| + | $DPKG --get-selections | $AWK ' | ||
| + | fi | ||
| + | |||
| + | if [ " | ||
| + | MOUNTED=$($MOUNT | $FGREP " | ||
| + | fi | ||
| + | |||
| + | if [ -z " | ||
| + | if [ -z " | ||
| + | TODAY=$($DATE +%y%m%d) | ||
| + | else | ||
| + | TODAY=$($DATE +%d) | ||
| + | fi | ||
| + | |||
| + | if [ " | ||
| + | S=" | ||
| + | fi | ||
| + | |||
| + | for SOURCE in " | ||
| + | do | ||
| + | if [ " | ||
| + | $ECHO " | ||
| + | $RSYNC -e " | ||
| + | if [ $? -ne 0 ]; then | ||
| + | ERROR=1 | ||
| + | fi | ||
| + | fi | ||
| + | if [ " | ||
| + | $ECHO " | ||
| + | $RSYNC -e " | ||
| + | if [ $? -ne 0 ]; then | ||
| + | ERROR=1 | ||
| + | fi | ||
| + | fi | ||
| + | if [ -z " | ||
| + | $ECHO " | ||
| + | $RSYNC -avR " | ||
| + | if [ $? -ne 0 ]; then | ||
| + | ERROR=1 | ||
| + | fi | ||
| + | fi | ||
| + | done | ||
| + | |||
| + | if [ " | ||
| + | $ECHO "$SSH -p $SSHPORT -l $SSHUSER $TOSSH $LN -nsf $TARGET$TODAY $TARGET$LAST">> | ||
| + | $SSH -p $SSHPORT -l $SSHUSER $TOSSH "$LN -nsf \" | ||
| + | if [ $? -ne 0 ]; then | ||
| + | ERROR=1 | ||
| + | fi | ||
| + | fi | ||
| + | if ( [ " | ||
| + | $ECHO "$LN -nsf $TARGET$TODAY $TARGET$LAST">> | ||
| + | $LN -nsf " | ||
| + | if [ $? -ne 0 ]; then | ||
| + | ERROR=1 | ||
| + | fi | ||
| + | fi | ||
| + | else | ||
| + | $ECHO " | ||
| + | ERROR=1 | ||
| + | fi | ||
| + | $DATE>> | ||
| + | if [ -n " | ||
| + | if [ $ERROR ];then | ||
| + | $MAIL -s "Error Backup $LOG" $MAILREC <$LOG | ||
| + | else | ||
| + | $MAIL -s " | ||
| + | fi | ||
| + | fi | ||
| + | </ | ||