mirror of
https://github.com/serghey-rodin/vesta.git
synced 2025-08-20 21:34:11 -07:00
Backup filename changed (#1289)
* Backup filename changed Changed the backup filename for running more backup each day - for example every 4 hours * Restore user fix with new backup date * Check if the backup name has an old notation * Fix backup permission check * fixed regex * fix
This commit is contained in:
parent
fc60a99e8c
commit
f8368220ff
2 changed files with 39 additions and 31 deletions
|
@ -472,11 +472,12 @@ end_time=$(date '+%s')
|
||||||
time_n_date=$(date +'%T %F')
|
time_n_date=$(date +'%T %F')
|
||||||
time=$(echo "$time_n_date" |cut -f 1 -d \ )
|
time=$(echo "$time_n_date" |cut -f 1 -d \ )
|
||||||
date=$(echo "$time_n_date" |cut -f 2 -d \ )
|
date=$(echo "$time_n_date" |cut -f 2 -d \ )
|
||||||
|
backup_new_date=$(date +"%Y-%m-%d_%H-%M-%S")
|
||||||
|
|
||||||
# Defining local storage function
|
# Defining local storage function
|
||||||
local_backup(){
|
local_backup(){
|
||||||
|
|
||||||
rm -f $BACKUP/$user.$date.tar
|
rm -f $BACKUP/$user.$backup_new_date.tar
|
||||||
|
|
||||||
# Checking retention
|
# Checking retention
|
||||||
backup_list=$(ls -lrt $BACKUP/ |awk '{print $9}' |grep "^$user\." | grep ".tar")
|
backup_list=$(ls -lrt $BACKUP/ |awk '{print $9}' |grep "^$user\." | grep ".tar")
|
||||||
|
@ -506,11 +507,11 @@ local_backup(){
|
||||||
|
|
||||||
# Creating final tarball
|
# Creating final tarball
|
||||||
cd $tmpdir
|
cd $tmpdir
|
||||||
tar -cf $BACKUP/$user.$date.tar .
|
tar -cf $BACKUP/$user.$backup_new_date.tar .
|
||||||
chmod 640 $BACKUP/$user.$date.tar
|
chmod 640 $BACKUP/$user.$backup_new_date.tar
|
||||||
chown admin:$user $BACKUP/$user.$date.tar
|
chown admin:$user $BACKUP/$user.$backup_new_date.tar
|
||||||
localbackup='yes'
|
localbackup='yes'
|
||||||
echo -e "$(date "+%F %T") Local: $BACKUP/$user.$date.tar" |\
|
echo -e "$(date "+%F %T") Local: $BACKUP/$user.$backup_new_date.tar" |\
|
||||||
tee -a $BACKUP/$user.log
|
tee -a $BACKUP/$user.log
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -559,7 +560,7 @@ ftp_backup() {
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Debug info
|
# Debug info
|
||||||
echo -e "$(date "+%F %T") Remote: ftp://$HOST$BPATH/$user.$date.tar"
|
echo -e "$(date "+%F %T") Remote: ftp://$HOST$BPATH/$user.$backup_new_date.tar"
|
||||||
|
|
||||||
# Checking ftp connection
|
# Checking ftp connection
|
||||||
fconn=$(ftpc)
|
fconn=$(ftpc)
|
||||||
|
@ -616,20 +617,20 @@ ftp_backup() {
|
||||||
if [ "$localbackup" = 'yes' ]; then
|
if [ "$localbackup" = 'yes' ]; then
|
||||||
cd $BACKUP
|
cd $BACKUP
|
||||||
if [ -z $BPATH ]; then
|
if [ -z $BPATH ]; then
|
||||||
ftpc "put $user.$date.tar"
|
ftpc "put $user.$backup_new_date.tar"
|
||||||
else
|
else
|
||||||
ftpc "cd $BPATH" "put $user.$date.tar"
|
ftpc "cd $BPATH" "put $user.$backup_new_date.tar"
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
cd $tmpdir
|
cd $tmpdir
|
||||||
tar -cf $BACKUP/$user.$date.tar .
|
tar -cf $BACKUP/$user.$backup_new_date.tar .
|
||||||
cd $BACKUP/
|
cd $BACKUP/
|
||||||
if [ -z $BPATH ]; then
|
if [ -z $BPATH ]; then
|
||||||
ftpc "put $user.$date.tar"
|
ftpc "put $user.$backup_new_date.tar"
|
||||||
else
|
else
|
||||||
ftpc "cd $BPATH" "put $user.$date.tar"
|
ftpc "cd $BPATH" "put $user.$backup_new_date.tar"
|
||||||
fi
|
fi
|
||||||
rm -f $user.$date.tar
|
rm -f $user.$backup_new_date.tar
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -722,7 +723,7 @@ sftp_backup() {
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Debug info
|
# Debug info
|
||||||
echo -e "$(date "+%F %T") Remote: sftp://$HOST/$BPATH/$user.$date.tar" |\
|
echo -e "$(date "+%F %T") Remote: sftp://$HOST/$BPATH/$user.$backup_new_date.tar" |\
|
||||||
tee -a $BACKUP/$user.log
|
tee -a $BACKUP/$user.log
|
||||||
|
|
||||||
# Checking network connection and write permissions
|
# Checking network connection and write permissions
|
||||||
|
@ -768,24 +769,24 @@ sftp_backup() {
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Uploading backup archive
|
# Uploading backup archive
|
||||||
echo "$(date "+%F %T") Uploading $user.$date.tar"|tee -a $BACKUP/$user.log
|
echo "$(date "+%F %T") Uploading $user.$backup_new_date.tar"|tee -a $BACKUP/$user.log
|
||||||
if [ "$localbackup" = 'yes' ]; then
|
if [ "$localbackup" = 'yes' ]; then
|
||||||
cd $BACKUP
|
cd $BACKUP
|
||||||
if [ -z $BPATH ]; then
|
if [ -z $BPATH ]; then
|
||||||
sftpc "put $user.$date.tar" "chmod 0600 $user.$date.tar" > /dev/null 2>&1
|
sftpc "put $user.$backup_new_date.tar" "chmod 0600 $user.$backup_new_date.tar" > /dev/null 2>&1
|
||||||
else
|
else
|
||||||
sftpc "cd $BPATH" "put $user.$date.tar" "chmod 0600 $user.$date.tar" > /dev/null 2>&1
|
sftpc "cd $BPATH" "put $user.$backup_new_date.tar" "chmod 0600 $user.$backup_new_date.tar" > /dev/null 2>&1
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
cd $tmpdir
|
cd $tmpdir
|
||||||
tar -cf $BACKUP/$user.$date.tar .
|
tar -cf $BACKUP/$user.$backup_new_date.tar .
|
||||||
cd $BACKUP/
|
cd $BACKUP/
|
||||||
if [ -z $BPATH ]; then
|
if [ -z $BPATH ]; then
|
||||||
sftpc "put $user.$date.tar" "chmod 0600 $user.$date.tar" > /dev/null 2>&1
|
sftpc "put $user.$backup_new_date.tar" "chmod 0600 $user.$backup_new_date.tar" > /dev/null 2>&1
|
||||||
else
|
else
|
||||||
sftpc "cd $BPATH" "put $user.$date.tar" "chmod 0600 $user.$date.tar" > /dev/null 2>&1
|
sftpc "cd $BPATH" "put $user.$backup_new_date.tar" "chmod 0600 $user.$backup_new_date.tar" > /dev/null 2>&1
|
||||||
fi
|
fi
|
||||||
rm -f $user.$date.tar
|
rm -f $user.$backup_new_date.tar
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -797,7 +798,7 @@ google_backup() {
|
||||||
export BOTO_CONFIG="$VESTA/conf/.google.backup.boto"
|
export BOTO_CONFIG="$VESTA/conf/.google.backup.boto"
|
||||||
|
|
||||||
# Debug info
|
# Debug info
|
||||||
echo -e "$(date "+%F %T") Remote: gs://$BUCKET/$BPATH/$user.$date.tar"
|
echo -e "$(date "+%F %T") Remote: gs://$BUCKET/$BPATH/$user.$backup_new_date.tar"
|
||||||
|
|
||||||
# Checking retention
|
# Checking retention
|
||||||
backup_list=$(${gsutil} ls gs://$BUCKET/$BPATH/$user.* 2>/dev/null)
|
backup_list=$(${gsutil} ls gs://$BUCKET/$BPATH/$user.* 2>/dev/null)
|
||||||
|
@ -811,19 +812,19 @@ google_backup() {
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Uploading backup archive
|
# Uploading backup archive
|
||||||
echo -e "$(date "+%F %T") Uploading $user.$date.tar ..."
|
echo -e "$(date "+%F %T") Uploading $user.$backup_new_date.tar ..."
|
||||||
if [ "$localbackup" = 'yes' ]; then
|
if [ "$localbackup" = 'yes' ]; then
|
||||||
cd $BACKUP
|
cd $BACKUP
|
||||||
${gsutil} cp $user.$date.tar gs://$BUCKET/$BPATH/ > /dev/null 2>&1
|
${gsutil} cp $user.$backup_new_date.tar gs://$BUCKET/$BPATH/ > /dev/null 2>&1
|
||||||
else
|
else
|
||||||
cd $tmpdir
|
cd $tmpdir
|
||||||
tar -cf $BACKUP/$user.$date.tar .
|
tar -cf $BACKUP/$user.$backup_new_date.tar .
|
||||||
cd $BACKUP/
|
cd $BACKUP/
|
||||||
${gsutil} cp $user.$date.tar gs://$BUCKET/$BPATH/ > /dev/null 2>&1
|
${gsutil} cp $user.$backup_new_date.tar gs://$BUCKET/$BPATH/ > /dev/null 2>&1
|
||||||
rc=$?
|
rc=$?
|
||||||
rm -f $user.$date.tar
|
rm -f $user.$backup_new_date.tar
|
||||||
if [ "$rc" -ne 0 ]; then
|
if [ "$rc" -ne 0 ]; then
|
||||||
check_result "$E_CONNECT" "gsutil failed to upload $user.$date.tar"
|
check_result "$E_CONNECT" "gsutil failed to upload $user.$backup_new_date.tar"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
@ -866,10 +867,10 @@ echo "$(date "+%F %T") Runtime: $run_time $min" |tee -a $BACKUP/$user.log
|
||||||
|
|
||||||
# Removing duplicate
|
# Removing duplicate
|
||||||
touch $USER_DATA/backup.conf
|
touch $USER_DATA/backup.conf
|
||||||
sed -i "/$user.$date.tar/d" $USER_DATA/backup.conf
|
sed -i "/$user.$backup_new_date.tar/d" $USER_DATA/backup.conf
|
||||||
|
|
||||||
# Registering new backup
|
# Registering new backup
|
||||||
backup_str="BACKUP='$user.$date.tar'"
|
backup_str="BACKUP='$user.$backup_new_date.tar'"
|
||||||
backup_str="$backup_str TYPE='$BACKUP_SYSTEM' SIZE='$size'"
|
backup_str="$backup_str TYPE='$BACKUP_SYSTEM' SIZE='$size'"
|
||||||
backup_str="$backup_str WEB='${web_list// /,}'"
|
backup_str="$backup_str WEB='${web_list// /,}'"
|
||||||
backup_str="$backup_str DNS='${dns_list// /,}'"
|
backup_str="$backup_str DNS='${dns_list// /,}'"
|
||||||
|
|
|
@ -38,7 +38,14 @@ source $VESTA/conf/vesta.conf
|
||||||
|
|
||||||
# Check backup ownership function
|
# Check backup ownership function
|
||||||
is_backup_available() {
|
is_backup_available() {
|
||||||
if ! [[ $2 =~ ^$1.[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9].tar$ ]]; then
|
passed=false
|
||||||
|
if [[ $2 =~ ^$1.[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]_[0-9][0-9]-[0-9][0-9]-[0-9][0-9].tar$ ]]; then
|
||||||
|
passed=true
|
||||||
|
elif [[ $2 =~ ^$1.[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9].tar$ ]]; then
|
||||||
|
passed=true
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ $passed = false ]; then
|
||||||
check_result $E_FORBIDEN "permission denied"
|
check_result $E_FORBIDEN "permission denied"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue