mirror of
https://github.com/myvesta/vesta
synced 2025-08-19 13:01:52 -07:00
Making SFTP backup able to work with empty folder name
This commit is contained in:
parent
92fa085755
commit
4aeec46841
2 changed files with 43 additions and 10 deletions
|
@ -141,9 +141,17 @@ if [ "$type" = 'sftp' ]; then
|
|||
if [ -z $port ]; then
|
||||
port=22
|
||||
fi
|
||||
if [ -z $path ]; then
|
||||
sftmpdir="vst.bK76A9SUkt"
|
||||
sftpc "mkdir $sftmpdir" "rmdir $sftmpdir" > /dev/null 2>&1
|
||||
else
|
||||
if sftpc "mkdir $path" > /dev/null 2>&1 ; then
|
||||
sftmpdir="$path/vst.bK76A9SUkt"
|
||||
sftpc "mkdir $sftmpdir" "rmdir $sftmpdir" > /dev/null 2>&1
|
||||
else
|
||||
sftmpdir="$path/vst.bK76A9SUkt"
|
||||
sftpc "mkdir $sftmpdir" "rmdir $sftmpdir" > /dev/null 2>&1
|
||||
fi
|
||||
fi
|
||||
rc=$?
|
||||
if [[ "$rc" != 0 ]]; then
|
||||
|
|
|
@ -70,6 +70,7 @@ done
|
|||
|
||||
# Creating temporary directory
|
||||
tmpdir=$(mktemp -p $BACKUP -d)
|
||||
|
||||
if [ "$?" -ne 0 ]; then
|
||||
echo "Can't create tmp dir $tmpdir" |$SENDMAIL -s "$subj" $email $notify
|
||||
check_result $E_NOTEXIST "can't create tmp dir"
|
||||
|
@ -478,7 +479,7 @@ local_backup(){
|
|||
rm -f $BACKUP/$user.$date.tar
|
||||
|
||||
# Checking retention
|
||||
backup_list=$(ls -lrt $BACKUP/ |awk '{print $9}' |grep "^$user\.")
|
||||
backup_list=$(ls -lrt $BACKUP/ |awk '{print $9}' |grep "^$user\." | grep ".tar")
|
||||
backups_count=$(echo "$backup_list" |wc -l)
|
||||
if [ "$BACKUPS" -le "$backups_count" ]; then
|
||||
backups_rm_number=$((backups_count - BACKUPS))
|
||||
|
@ -623,7 +624,11 @@ ftp_backup() {
|
|||
cd $tmpdir
|
||||
tar -cf $BACKUP/$user.$date.tar .
|
||||
cd $BACKUP/
|
||||
if [ -z $BPATH ]; then
|
||||
ftpc "put $user.$date.tar"
|
||||
else
|
||||
ftpc "cd $BPATH" "put $user.$date.tar"
|
||||
fi
|
||||
rm -f $user.$date.tar
|
||||
fi
|
||||
}
|
||||
|
@ -721,7 +726,11 @@ sftp_backup() {
|
|||
tee -a $BACKUP/$user.log
|
||||
|
||||
# Checking network connection and write permissions
|
||||
if [ -z $BPATH ]; then
|
||||
sftmpdir="vst.bK76A9SUkt"
|
||||
else
|
||||
sftmpdir="$BPATH/vst.bK76A9SUkt"
|
||||
fi
|
||||
sftpc "mkdir $BPATH" > /dev/null 2>&1
|
||||
sftpc "mkdir $sftmpdir" "rmdir $sftmpdir" > /dev/null 2>&1
|
||||
rc=$?
|
||||
|
@ -738,7 +747,11 @@ sftp_backup() {
|
|||
fi
|
||||
|
||||
# Checking retention
|
||||
if [ -z $BPATH ]; then
|
||||
backup_list=$(sftpc "ls -l" |awk '{print $9}'|grep "^$user\.")
|
||||
else
|
||||
backup_list=$(sftpc "cd $BPATH" "ls -l" |awk '{print $9}'|grep "^$user\.")
|
||||
fi
|
||||
backups_count=$(echo "$backup_list" |wc -l)
|
||||
if [ "$backups_count" -ge "$BACKUPS" ]; then
|
||||
backups_rm_number=$((backups_count - BACKUPS + 1))
|
||||
|
@ -746,7 +759,11 @@ sftp_backup() {
|
|||
backup_date=$(echo $backup |sed -e "s/$user.//" -e "s/.tar.*$//")
|
||||
echo -e "$(date "+%F %T") Rotated sftp backup: $backup_date" |\
|
||||
tee -a $BACKUP/$user.log
|
||||
if [ -z $BPATH ]; then
|
||||
sftpc "rm $backup" > /dev/null 2>&1
|
||||
else
|
||||
sftpc "cd $BPATH" "rm $backup" > /dev/null 2>&1
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
|
@ -754,12 +771,20 @@ sftp_backup() {
|
|||
echo "$(date "+%F %T") Uploading $user.$date.tar"|tee -a $BACKUP/$user.log
|
||||
if [ "$localbackup" = 'yes' ]; then
|
||||
cd $BACKUP
|
||||
sftpc "cd $BPATH" "put $user.$date.tar" > /dev/null 2>&1
|
||||
if [ -z $BPATH ]; then
|
||||
sftpc "put $user.$date.tar" "chmod 0600 $user.$date.tar" > /dev/null 2>&1
|
||||
else
|
||||
sftpc "cd $BPATH" "put $user.$date.tar" "chmod 0600 $user.$date.tar" > /dev/null 2>&1
|
||||
fi
|
||||
else
|
||||
cd $tmpdir
|
||||
tar -cf $BACKUP/$user.$date.tar .
|
||||
cd $BACKUP/
|
||||
sftpc "cd $BPATH" "put $user.$date.tar" > /dev/null 2>&1
|
||||
if [ -z $BPATH ]; then
|
||||
sftpc "put $user.$date.tar" "chmod 0600 $user.$date.tar" > /dev/null 2>&1
|
||||
else
|
||||
sftpc "cd $BPATH" "put $user.$date.tar" "chmod 0600 $user.$date.tar" > /dev/null 2>&1
|
||||
fi
|
||||
rm -f $user.$date.tar
|
||||
fi
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue