Script FTP

1. Script FTP

Jardel Fischer
jardelfi

(usa Red Hat)

Enviado em 03/12/2007 - 10:06h

Bom dia Colegas..
Criei o seguinte script afim de automatizar um processo de ftp aqui na empresa, porem ele nao roda na crontab, se rodo ele na mao, executa 100%

# Executa coleta dos arquivos no cliente pelo ftpserver;
cd /home/pastaX
ftp -in <<EOF
open ftpdocliente.com.br
user XXXXXX SENHAXXXXX
binary
cd DIRETORIO
mget *BCM (Coleta todos os arquivos com ext. .BCM)
mdelete *.BCM (Após apaga os arquivos acima)
bye (finaliza esse ftp)
EOF


#envia do ftpserver ao servidor da rede interna
ftp -in <<EOF
open 10.15.X.X
user XXX SENHAXXX
bin
cd /pastaY
mput *.BCM
bye
EOF

rm -f /pastaX/*.BCM

Alguma sugestão???



  


2. Contrab

Rodrigo Ferreira Valentim
engos

(usa openSUSE)

Enviado em 03/12/2007 - 10:23h

Você deixou uma linha em branco no fim do arquivo da crontab?

Se você agendar outra coisa qualquer na crontab, funciona?


3. crontab

Jardel Fischer
jardelfi

(usa Red Hat)

Enviado em 03/12/2007 - 10:31h

sim ele executa... tanto é que no log da cron o script é executado nos times informados, porém nãon executa os comandos... To achando que pode ser alguma incompatibilidade do ftp com a cron não?


4. Re: Script FTP

Rodrigo Ferreira Valentim
engos

(usa openSUSE)

Enviado em 03/12/2007 - 10:55h

No log do ftp, você consegue ver até onde ele foi?

Talvez ele não esteja achando o comando ftp.

Se não for isso, verifique a permissão do usuário se ele pode fazer o ftp. Ou você colocou na cron do root?


5. Cron X Script

Jardel Fischer
jardelfi

(usa Red Hat)

Enviado em 03/12/2007 - 11:04h

no log da cron aparece:

Dec 3 10:30:01 navegantes crond[3393]: (root) CMD (/root/verifica_ftp_msc.sh >> /var/log/verifica_ftp_msc.log)
Dec 3 10:33:01 navegantes crond[3406]: (root) CMD (/root/verifica_ftp_msc.sh >> /var/log/verifica_ftp_msc.log)

quanto ao script, dei permissao total para ele conforme abaixo
-rwxrwxrwx 1 root root 353 Nov 30 16:17 verifica_ftp_msc.sh


Acho que ele não entende o comando ftp...

daria para usar o wget confirma? com ele é possivel copiar os arquivos do servidor e apagar em seguida?


6. Re: Script FTP

Rodrigo Ferreira Valentim
engos

(usa openSUSE)

Enviado em 03/12/2007 - 12:37h

Fiz um teste aqui com seu script via crontab e funcionou bem.

Talvez ele não esteja achando o comando ftp.

Faça a seguinte alteração, execute o script na mão e verifica se ele encontrou o comando ftp. Se encontrou retire a linha do comando "echo" e deixe rodar pela cron:

FTP=`which ftp`
cd /home/pastaX
echo $FTP
$FTP -in <<EOF
...


7. nada...

Jardel Fischer
jardelfi

(usa Red Hat)

Enviado em 03/12/2007 - 14:12h

engos... faleu pela forca mas ainda nao funcionou...

segue resultados..

Script = teste.sh

FTP=`which ftp`
cd /home/msc
echo $FTP
$FTP -in <<EOF

Quando executado gera o retorno:
[root@navegantes tmp]# ./teste.sh
/usr/kerberos/bin/ftp
[root@navegantes tmp]#

Minha cron:
*/1 * * * * /root/verifica_ftp_msc.sh
(com a ultima linha em branco)

log da cron:
Dec 3 14:01:41 navegantes crontab[4571]: (root) BEGIN EDIT (root)
Dec 3 14:01:45 navegantes crontab[4571]: (root) REPLACE (root)
Dec 3 14:01:45 navegantes crontab[4571]: (root) END EDIT (root)
Dec 3 14:02:01 navegantes crond[27969]: (*system*) RELOAD (/etc/crontab)
Dec 3 14:02:01 navegantes crond[27969]: (root) RELOAD (cron/root)
Dec 3 14:04:10 navegantes crontab[4612]: (root) BEGIN EDIT (root)
Dec 3 14:04:30 navegantes crontab[4612]: (root) END EDIT (root)

Script:

[root@navegantes in]# vi /root/verifica_ftp_msc.sh
#!/bin/bash

FTP=`which ftp`
cd /home/xxxx
#echo $FTP
$FTP -in <<EOF
open ftpserver_do_cliente
user userxxx senhaxxx
binary
cd diretorio
mget *BCM (coleta os .BCM)
mdelete *.BCM (apaga do servidor do cliente os .BCM)
bye (sai do ftp)
EOF

# Inicia a transmissao do ftpserver_interno para o servidor destino (interno)
$FTP -in <<EOF
open 10.15.19.1
user usery senhay
bin
cd /xxx/xxx
mput *.BCM
bye
EOF

rm -f /home/xxx/*.BCM

O que pode ser???




8. Re: Script FTP

Rodrigo Ferreira Valentim
engos

(usa openSUSE)

Enviado em 03/12/2007 - 15:16h

Nunca vi a configuração da cron com a opção /1:

*/1 * * * * /root/verifica_ftp_msc.sh


Desse jeito aqui também não funcionou, mas quando tirei e deixei:

* * * * * /root/verifica_ftp_msc.sh


Funcionou.

Recomendo retirar o /1 e testar.

PS: Nunca tive esse problema com nenhuma distro da Red Hat, SuSE e Mandriva, mas na distro que estou agora (Debian) sou obrigado a dar um boot de tempos em tempos, pois tem vezes que a cron trava!


9. Re: Script FTP

Jardel Fischer
jardelfi

(usa Red Hat)

Enviado em 03/12/2007 - 15:57h

infelizmente tambem nao funcionou..


10. Re: Script FTP

Jardel Fischer
jardelfi

(usa Red Hat)

Enviado em 03/12/2007 - 15:57h

infelizmente tambem nao funcionou.. vou testar com o reboot da maquina e reporto..

valeus


11. Re: Script FTP

Ricardo Brito do Nascimento
rbn_jesus

(usa Fedora)

Enviado em 12/12/2007 - 10:05h

o */1 no cron é para executar a cada min


12. Re: Script FTP

Ricardo Brito do Nascimento
rbn_jesus

(usa Fedora)

Enviado em 12/12/2007 - 11:44h

Cara descobri o teu problema!!!!
estava precisando do mesmo script para resolver o meu problema e consegui arrumar o teu script.

em vez de 'cd' use 'lcd'
e teu escript funciona!!!
valeu.



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts