I am trying to connect the remote ssh server via ruby using
Net::SSH.It is working fine for me for all the commands provided via
script and i could able to read the output of the command successfully.
But when i use the below command it is getting stuck in SSH.exec!(cmd)
and control is not returned from the line. Only if i click Ctrl+c in
command line the script is getting ended.
The command is ./wcsadmin.sh start --> this is used to start the
processes of my application in remote server
Please find the below code snippet of my ruby script:
Net::SSH.start(host, username, :password => password) do |ssh| puts 'before exit' output = ssh.exec!(/opt/wcsadmin.sh start) puts 'Executed command'
The output of the command when i do it manually is :
[[email protected] bin]# ./wcsadmin.sh start
Starting Network Control System…
This may take a few minutes…
stty: standard input: Invalid argument
Network Control System started successfully.
Starting SAM daemon…
Starting DA daemon…
Starting DA syslog daemon…
if i use ssh.exec(’./wcsadmin.sh start’) the only difference is the
above output is getting printed but still the program is never ended.I
need to manually end it by hitting ctrl+c.When i searched in google i
could find you can use nohup command('nohup /opt/wcsadmin.sh start
/tmp/teststartserver.log 2>&1’) to skip the hangup signals and tried
the same.This also writes the output to teststartserver.log but getting
hanged.Can anyone please help me out on this issue?
Thanks in Advance!