#!/bin/bash # info: restore user # options: user backup # # The function for resotring user from backup. #----------------------------------------------------------# # Variable&Function # #----------------------------------------------------------# # Argument defenition user=$1 backup=$2 # Importing variables source $VESTA/conf/vars.conf source $V_CONF/vesta.conf source $V_FUNC/shared.func source $V_FUNC/domain.func source $V_FUNC/db.func # Defining ftp command function ftpc() { ftp -n $HOST $PORT <> /dev/null 2>/dev/null echo "$(date "+%F %T") Downloaded $user.$backup.tar" fi fi fi if [ ! -e "$V_BACKUP/$user.$backup.tar" ]; then echo "Error: $V_BACKUP/$user.$backup.tar backup not found" log_event 'debug' "$E_NOTEXIST $V_EVENT" exit $E_NOTEXIST fi # Checking arguments if [ -z "$3" ]; then # Define full backup variables VESTA='yes' PAM='yes' WEB='yes' DNS='yes' DB='yes' MAIL='yes' SSL='yes' CRON='yes' else args=("$@") for (( i=2; i<${#@}; i++)); do key=$(echo ${args[$i]} | cut -f 1 -d :| tr '[:lower:]' '[:upper:]') opt=$(echo ${args[$i]} | cut -f 2 -d :) if [ -z "$(echo ${args[$i]} |grep :)" ]; then eval $key='yes' else eval $key='opt' eval ${key}_OPT=$opt fi done fi #----------------------------------------------------------# # Action # #----------------------------------------------------------# # Creating temporary directory tmpdir=$(mktemp -p $V_BACKUP -d) echo "TMPDIR is $tmpdir" cd $tmpdir echo "$(date "+%F %T") Extracting files from backup" tar -xf $V_BACKUP/$user.$backup.tar echo "$(date "+%F %T") Backup has been unpacked" # Checking Vesta #----------------------------------------------------------# # Vesta # #----------------------------------------------------------# # Logging log_event 'system' "$V_EVENT" exit