esta sintaxe é o Mikrotik: ping 192.168.10.10 count=10 os comandos são um pouco
diferentes, mas
vamos la, se eu digitar isso aqui no terminal:
ssh -i ~/.ssh/id_dsa anderson@10.4.0.1 "ping 192.168.10.10 count=10"
funciona perfeitamente, ja dentro do script cgi não funciona, eu acredito que
ele não espera o
retorno do comando ou algo assim, digo isso porque se eu digitar um comando
errado como:
ssh -i ~/.ssh/id_dsa anderson@10.4.0.1 "pingsss 192.168.10.10 count=10"
ai aparece a mensagem dizendo que pingsss não é valido, então se ele retorna o
erro deveria retornar
quando da certo também. é como se ele não conceguisse esperar o retorno para
jogar para o stdout e
atropela tudo, ja tentei colocar um sleep pra ver se resolve, mas nada.
por ultimo fiz mais um teste, coloquei pra ele fazer uma rotina que demora um
pouco
ssh -l anderson -i /var/www/scripts/id_dsa 10.4.0.1 "export file=teste1;export
file=teste2;export
file=teste3;export file=teste4;export file=teste5"
essa rotina vai criar 5 backups, demora uns 10 segundos, e oque percebi é que
ocorre o login e logo
em seguida o usuario anderson desconecta, mas os comandos continuam a ser
executados, então eu acho
que o apache/cgi não concegue prender o comando ssh quando o retorno é 0
(executado com sucesso),
ele executa o comando e desconta, então o comando contia sendo executado no
mikrotik, mas como o
usuario se desconectou não tem pra quem mostrar a saida, o problema agora sei
que é este, a solução
que eu não faço idéia de qual será....
Att.
Anderson Junior