Erro de Autenticação de Usuários FTP: 530 e Formatação de Arquivos

0

Eu tenho um script que estou tentando executar como um cron job. Ao digitar o script por meio de um terminal, não há problema em substituir as variáveis pelo valor real.

#!/bin/bash
cd root/mqsql-backups
HOST='***.***.**.***'
USER='**********'
PASSWD='************'

ftp -n -v $HOST << EOT
ascii
user $USER $PASSWD
prompt
cd backup
put roofsmart_suitecrm_'date "+%m-%d-%Y"'.sql.gz
bye
EOT
sleep 12

Parece que quando chega a hora de chamar a variável de senha, a própria senha não é inserida.

Usando os comandos abaixo, eu consigo me conectar ao servidor ftp sem problemas.

ftp user [USER] [Password]

A segunda pergunta que eu fiz é sobre o arquivo que eu gostaria de enviar.

roofsmart_suitecrm_'date "+%m-%d-%Y"'.sql.gz

Existe alguma maneira de fazer isso funcionar no upload do ftp? Eu fiz desta forma, porque eu tenho outra tarefa Cron que faz backup e comprime um banco de dados mqsql diariamente, este script eu gostaria de executar 2 minutos depois para fazer o upload deste backup para um servidor ftp off site. Embora eu tenha conseguido fazer o trabalho do sqldump cron funcionar (através de muita pesquisa), eu simplesmente não posso fazer cara ou coroa desta questão.

    
por Cole 25.01.2016 / 22:17

1 resposta

0

Eu nunca usei isso antes, mas apenas lendo o manual e alguns exemplos, eu tentaria:

wput --ascii "roofsmart_suitecrm_'date "+%m-%d-%Y"'.sql.gz" "ftp://$USER:$PASSWORD@$HOST/backup/"

Se ainda não tiver wput no seu computador, você poderá instalá-lo com:

sudo apt-get install wput
    
por David Foerster 26.01.2016 / 01:22