Страница 1 из 1

Скрипт для загрузки файлов на FTP

Добавлено: 2014-01-28 12:58:42
tom.cat
Всем привет. Понадобилось заливать бэкап бд на удаленный фтп. Проблема в том, что не удается загрузить файлы на удаленный сервер, хотя по filezille все загружается нормально.
Часть скрипта с фтп связкой.

Код: Выделить всё

FTPD="mysql"
FTPU="user"
FTPP="pass"
FTPS="remoteftp"
.....................
$FTP -n $FTPS <<END_SCRIPT
quote USER $FTPU
quote PASS $FTPP
prompt off
binary
cd $FTPD
quote PASV
put $DUMPFILE
quit
При заливке выдает следующую ошибку:

Код: Выделить всё

Connected to remoteftp.
220 Wellcome!!!
331 Please specify the password.
230 Login successful.
Interactive mode off.
200 Switching to Binary mode.
250 Directory successfully changed.
227 Entering Passive Mode (10,3,29,169,254,61).
local: mysql.tar.gz remote: mysql.tar.gz
ftp: Can't open `mysql.tar.gz': No such file or directory
221 Goodbye.
Хотя этот файл естессно существует и находится в данной директории, откуда запускается собственно скрипт.
Пробовал менять put на mput. Ошибка та же.
А вот, если включить интерактивный режим - prompt on, то файл находит, но предлагает выбрать ANPQY, мне это не надо, т.к. скрипт будет в кроне висеть.
Что делать? :smile:

Re: Скрипт для загрузки файлов на FTP

Добавлено: 2014-01-30 22:33:28
Alex Keda

Код: Выделить всё

# functions
ftp_upload(){
        backup_file=$1
        /usr/bin/ftp -inv -P 2121 <<EOF
        open $ftp_host
        user $ftp_user $ftp_pass
        binary
        mkdir $year
        cd $year
        mkdir $month
        cd $month
        mkdir $day
        cd $day
        put $backup_file $new_file_name
        bye
EOF
}
разберётесь думаю.
$backup_file - полный путь

Re: Скрипт для загрузки файлов на FTP

Добавлено: 2014-01-31 8:09:25
tom.cat
Благодарю!