Pessoal, estou trabalhando em uma aplicação web rodando em OC4J . A aplicação está rodando em um servidor Unix, porém, uma das funcionalidades exigidas requer que eu me conecte em um outro servidor Unix e execute um comando nesse outro servidor utilizando o método java.lang.Runtime.exec().
Alguém tem uma dica ou um código exemplo de como fazer isso? Como posso me conectar remotamente em um servidor Unix e executar um comando nesse servidor?
Use o ssh para conectar-se seguramente ao outro servidor Unix e executar comandos. (suponho que um dos servidores Unix tenha o ssh, e o outro - que executa os comandos - tenha o sshd. )
Sabe onde posso conseguir alguma documentação sobre o assunto?
man ssh
man sshd
Afinal de contas, você está no Unix
Pois é, esse é um dos meus problemas, eu estou trabalhando em uma máquina Windows. Quando for para produção, a aplicação irá para um servidor Unix, porém eu não tenho acesso a esse servidor. Por enquanto, só tenho uma máquina Windows disponível.
Dah uma olhada nesse tutorial que eu fiz,
http://kemperacc.blogspot.com/2006/11/reboot-remoto-via-java.html
voce pode trocar o reboot pra qq outro comando…
[]s
Dica: se puder, faça o seguinte: (só é necessário ter máquinas Windows)
- Baixe o VMWare Server ( http://www.vmware.com )
- Baixe o Solaris 10 ( http://sun.com/solaris ) ou algum sabor preferido de Linux (como o Ubuntu, http://www.ubuntu.com/ )
- Baixe a JVM para o Solaris ou para o Linux
- Instale o Solaris ou o Linux no VMWare
- Teste sua aplicação nessa máquina “simulada” dentro do VMWare antes de pô-la no servidor Unix. Você verá que não é só o problema de executar uma aplicação remota que pode fritar sua aplicação no Unix; você pode ter outros problemas (por exemplo, por acaso você está se lembrando que Unix tem permissões de diretórios, que os diretórios são separados por “/” e não por “”, etc. etc. etc. )
Estou atento para os problemas de difereça de ambiente, na verdade, a aplicação já está rodando em um servidor Unix, porém não tenho permissão para utilizar esse servidor para desenvolvimento.
Creio que o manual indicado acima pode me ajudar. Vou fazer alguns testes.
Valeu pela ajuda.