Boa tarde a todos,
Tenho que fazer uma classe que copie 1 arquivo para dois servidores diferentes através de SSH, pois os servidores são LINUX. Eu não tenho nenhum conhecimento sobre o assunto(API que faça transfêrencia através de SSH e sua utilização).
Alguém poderia me dar um help ?
Vlw Pablo.
O programa Java vai rodar em uma máquina Linux também? Se for isso, é mais fácil, porque você pode dar um comando (como scp ou sftp) através de Runtime.exec().
Vai sim, na verdade a cópia desses arquivos vão de um servidor para 2 outros(webServers).
Os três em máquinas LINUX.
Basta usar um comando (como scp ou sftp) através de Runtime.exec() ?
Acho mais fácil, mais rápido e mais confiável. (Há bibliotecas SSH para Java mas ouvi dizer que elas ou são caras, ou são difíceis de usar.)
Redirecionar a saída desses comandos para um arquivo, e veja se você pode também passar a senha por linha de comando. Não se esqueça de testar o valor de retorno para ver se o comando executou com sucesso.
Vc conhece uma API que facilite? q nao tenha q desenvolver essa interface? de preferencia free(open source)
Boa pergunta. É o caso de você dar uma procurada por “Runtime.exec” e “scp” ou “sftp”. (Não sei se o que você quer copiar pode ser copiado via scp ou sftp).
http://www.guj.com.br/posts/list/102651.java
Não sei se funcionou pro cara, porque ele não deu mais sinal de vida.
Aqui na empresa funciona muito bem.
Boa sorte.
Vlw galera, brigadaum pela força.
QQ coisa posto de novo, se funcionar vou postar aqui.
Abraços.
Celso,
Vc pode me informar de qual library vem isso aqui ?
import ch.ethz.ssh2.ChannelCondition;
import ch.ethz.ssh2.Connection;
import ch.ethz.ssh2.Session;
import ch.ethz.ssh2.StreamGobbler;
Vlw.