@@ -4,6 +4,15 @@
|
||||
|
||||
# source job.conf
|
||||
BACKUP_DIR=/backups
|
||||
|
||||
FILES=ROOT
|
||||
VOLS=VOL
|
||||
CONTAINERS=CON
|
||||
|
||||
BACKUP_DIR_FILES=$BACKUP_DIR/$FILES
|
||||
BACKUP_DIR_VOLS=$BACKUP_DIR/$VOLS
|
||||
BACKUP_DIR_CONTAINERS=$BACKUP_DIR/$CONTAINERS
|
||||
|
||||
CONFIG_DIR=/config
|
||||
SSH_CF_DIR=/root/.ssh
|
||||
|
||||
@@ -37,16 +46,16 @@ move_to_ROOT(){
|
||||
read_config $1
|
||||
# prüfen ob Ordner ROOT, VOL, CONT existieren
|
||||
# wenn nicht ROOT anlegen und alle bisher vorhandene Ordner dorthin verschieben
|
||||
[ ! -d "$BACKUP_DIR/ROOT" ] && mkdir -p "$BACKUP_DIR/ROOT" || return
|
||||
[ ! -d "$BACKUP_DIR_FILES" ] && mkdir -p "$BACKUP_DIR_FILES" || return
|
||||
|
||||
|
||||
### find /home/vitali/find_tests/ -maxdepth 1 -mindepth 1 -type d -name "CONT" -prune -or -name "VOL" -prune -or -name ROOT -prune -or -name "*" -exec mv -t /home/vitali/find_tests/ROOT/ {} +
|
||||
|
||||
find "$BACKUP_DIR" -maxdepth 1 -mindepth 1 -type d -name "CONT" -prune -or -name "VOL" -prune -or -name "ROOT" -prune -or -name "*" -exec mv -t "$BACKUP_DIR/ROOT/" {} +
|
||||
find "$BACKUP_DIR" -maxdepth 1 -mindepth 1 -type d -name "$CONTAINERS" -prune -or -name "$VOLS" -prune -or -name "$FILES" -prune -or -name "*" -exec mv -t "$BACKUP_DIR_FILES/" {} +
|
||||
|
||||
# anschliessend VOL und CONT anlegen
|
||||
[ ! -d "$BACKUP_DIR/VOL" ] && mkdir -p "$BACKUP_DIR/VOL"
|
||||
[ ! -d "$BACKUP_DIR/CONT" ] && mkdir -p "$BACKUP_DIR/CONT"
|
||||
[ ! -d "$BACKUP_DIR_VOLS" ] && mkdir -p "$BACKUP_DIR_VOLS"
|
||||
[ ! -d "$BACKUP_DIR_CONTAINERS" ] && mkdir -p "$BACKUP_DIR_CONTAINERS"
|
||||
}
|
||||
|
||||
## Einzelne Backup-Jobs
|
||||
@@ -97,16 +106,20 @@ backup(){
|
||||
|
||||
for db in "${MYSQL_DB[@]}"
|
||||
do
|
||||
# lokaler Export der DB als SQL
|
||||
b_mysql "$db"
|
||||
done
|
||||
|
||||
# Ordner mit SQL-Dateien in die Sicherung aufnehmen
|
||||
# Ordner mit SQL-Dateien sofort (!) sichern
|
||||
if [ "$MYSQL_CONTAINER" != '' ]
|
||||
then
|
||||
FOLDERS=("$MYSQL_DUMP_DIR")
|
||||
b_files "${REMOTE_USER}@${REMOTE_HOST}::${MYSQL_DUMP_DIR}" "$BACKUP_DIR_CONTAINERS/${MYSQL_CONTAINER}"
|
||||
else
|
||||
FOLDERS+=("$MYSQL_DUMP_DIR")
|
||||
b_files "${REMOTE_USER}@${REMOTE_HOST}::${MYSQL_DUMP_DIR}" "$BACKUP_DIR/${REMOTE_HOST}${MYSQL_DUMP_DIR}"
|
||||
fi
|
||||
|
||||
# die SQL-Dateien vom remote host wieder löschen
|
||||
[ "$MYSQL_DUMP_DIR" != "" ] && [ "$MYSQL_DUMP_DIR" != "/" ] && ssh ${REMOTE_USER}@${REMOTE_HOST} "rm -rf \"$MYSQL_DUMP_DIR/\"*.sql"
|
||||
fi
|
||||
|
||||
# SCHRITT 2:
|
||||
@@ -131,12 +144,6 @@ backup(){
|
||||
echo
|
||||
done
|
||||
|
||||
# SCHRITT 3:
|
||||
# die SQL-Dateien vom remote host wieder löschen
|
||||
if [ ${#MYSQL_DB[@]} -gt 0 ]
|
||||
then
|
||||
[ "$MYSQL_DUMP_DIR" != "" ] && [ "$MYSQL_DUMP_DIR" != "/" ] && ssh ${REMOTE_USER}@${REMOTE_HOST} "rm -rf \"$MYSQL_DUMP_DIR/\"*.sql"
|
||||
fi
|
||||
echo Done backup $1
|
||||
echo
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user