ftp host on custom port

This commit is contained in:
Serghey Rodin 2013-04-06 00:42:54 +03:00
commit 5d040c4447
3 changed files with 14 additions and 6 deletions

View file

@ -1,6 +1,6 @@
#!/bin/bash #!/bin/bash
# info: add backup ftp host # info: add backup ftp host
# options: HOST USERNAME PASSWORD [PATH] # options: HOST USERNAME PASSWORD [PATH] [PORT]
# #
# The function adds ftp host for system backups # The function adds ftp host for system backups
@ -14,6 +14,7 @@ host=$1
ftp_user=$2 ftp_user=$2
ftp_password=$3 ftp_password=$3
ftp_path=${4-/backup} ftp_path=${4-/backup}
ftp_port=${5-21}
A3='******' A3='******'
# Includes # Includes
@ -22,7 +23,7 @@ source $VESTA/func/main.sh
# Defining ftp command function # Defining ftp command function
ftpc() { ftpc() {
ftp -n $host <<EOF ftp -n $host $ftp_port <<EOF
quote USER $ftp_user quote USER $ftp_user
quote PASS $ftp_password quote PASS $ftp_password
binary binary
@ -38,7 +39,7 @@ EOF
# Verifications # # Verifications #
#----------------------------------------------------------# #----------------------------------------------------------#
check_args '3' "$#" "HOST USERNAME PASSWORD [PATH]" check_args '3' "$#" "HOST USERNAME PASSWORD [PATH] [PORT]"
validate_format 'host' 'ftp_user' 'ftp_password' validate_format 'host' 'ftp_user' 'ftp_password'
@ -69,6 +70,7 @@ echo "HOST='$host'
USERNAME='$ftp_user' USERNAME='$ftp_user'
PASSWORD='$ftp_password' PASSWORD='$ftp_password'
BPATH='$ftp_path' BPATH='$ftp_path'
PORT='$ftp_port'
TIME='$TIME' TIME='$TIME'
DATE='$DATE'" > $VESTA/conf/ftp.backup.conf DATE='$DATE'" > $VESTA/conf/ftp.backup.conf
chmod 660 $VESTA/conf/ftp.backup.conf chmod 660 $VESTA/conf/ftp.backup.conf

View file

@ -515,7 +515,7 @@ local_backup(){
# Defining ftp command function # Defining ftp command function
ftpc() { ftpc() {
ftp -n $HOST <<EOF ftp -n $HOST $PORT <<EOF
quote USER $USERNAME quote USER $USERNAME
quote PASS $PASSWORD quote PASS $PASSWORD
binary binary
@ -541,6 +541,11 @@ ftp_backup() {
# Parse config # Parse config
source $VESTA/conf/ftp.backup.conf source $VESTA/conf/ftp.backup.conf
# Set default port
if [ -z "$(grep 'PORT=' $VESTA/conf/ftp.backup.conf)" ]; then
PORT='21'
fi
# Checking variables # Checking variables
if [ -z "$HOST" ] || [ -z "$USERNAME" ] || [ -z "$PASSWORD" ]; then if [ -z "$HOST" ] || [ -z "$USERNAME" ] || [ -z "$PASSWORD" ]; then
rm -rf $tmpdir rm -rf $tmpdir
@ -552,6 +557,7 @@ ftp_backup() {
exit $E_PARSING exit $E_PARSING
fi fi
# Debug info # Debug info
echo -e "$(date "+%F %T") FTP ftp://$HOST$BPATH/$user.$DATE.tar" echo -e "$(date "+%F %T") FTP ftp://$HOST$BPATH/$user.$DATE.tar"
@ -560,7 +566,7 @@ ftp_backup() {
rm -rf $tmpdir rm -rf $tmpdir
echo "Can't login to ftp://$USERNAME@$HOST" |\ echo "Can't login to ftp://$USERNAME@$HOST" |\
$send_mail -s "$subj" $email $send_mail -s "$subj" $email
echo "Error: can't login to ftp" echo "Error: can't login to ftp ftp://$USERNAME@$HOST"
sed -i "/ $user /d" $VESTA/data/queue/backup.pipe sed -i "/ $user /d" $VESTA/data/queue/backup.pipe
log_event "$E_FTP" "$EVENT" log_event "$E_FTP" "$EVENT"
exit $E_FTP exit $E_FTP

View file

@ -69,7 +69,7 @@ if [ ! -e "$VESTA/conf/ftp.backup.conf" ]; then
fi fi
# Defining fileds to select # Defining fileds to select
fields='$HOST $USERNAME $TIME $DATE' fields='$HOST $USERNAME $PORT $TIME $DATE'
# Listing database # Listing database
case $format in case $format in