bash script to execute a command remote servers using ssh
Hello,
I am running into few issues, please suggest me what I am missing.
I am running this script on a linux host.
Main idea of this script is to, login to each host via ssh and get uid of user, service user that I trying to run this script, has already deployed ssh keys and provide sudo access to root with password less on all the server.
issue: /tmp/hostname.txt file contains list of IP addresses line by line, when I execute this script, I get the o/p of the first host successfully and stops executing right from that point.
A better way to accomplish this is to invoke the script which contains the commands that you want to be executed at the remote server
As you'll see that, this way
won't work properly while the "commands" is getting longer!
Look at this https://www.unix.com/shell-programmin...te-server.html
The reason why your commands will only be run on the first host connected to is detailed explained here http://72.14.189.113/howto/shell/while-ssh/
Last edited by complex.invoke; 04-03-2012 at 11:31 PM..
This User Gave Thanks to complex.invoke For This Post:
I was able to run the script as suggested works fine !!!!
The only annoying part is, once the user ssh into the each server, I see banner is being displayed on the terminal, how do we remove that from the output.
The only annoying part is, once the user ssh into the each server, I see banner is being displayed on the terminal, how do we remove that from the output.
Thanks,
Just map the ip addresses of your remote servers' with a unique name one by one and line by line in your /etc/hosts on the master server which can manage all your remote servers
A more convenient way to perform your tasks with ssh at the remote servers is to invoke another script ssh.sh
just locate the script ssh.sh in /usr/local/sbin, then make some soft links:
after you have done this, you can login to remote server,say, login to node1, you can just execute
instead of
or
and the same way to execute your commands
instead of
and so
The script below is detailed explained what you can do with no-ssh needed remote commands execution
Last edited by complex.invoke; 04-06-2012 at 12:32 PM..
When I tried to include sudo command in the place script to be executed I am getting this error messages, any idea how can I overcome !!!!
when I run this script I am getting this error message
$ ./remotescript
Pseudo-terminal will not be allocated because stdin is not a terminal.
How to execute setDomainEnv.sh in wblogic via ssh on remote server in shell script
we execute setDomainEnv.sh manually as . ./setDomainEnv.sh from its location ie /opt/SP/users/domian/bin"
My approach is not working.
Please advise.
#!/bin/bash
set -x
base="/opt/SP/users/d1/bin"... (5 Replies)
Hello i am having an issue with bash script and this is the code
now=$(cat hosts1.txt | awk '{print $2;}')
while read n ;do
ssh root@$now 'useradd test1; echo -e "test1\ntest1" | passwd test1 && echo "test1 ALL=(ALL:ALL) ALL" >> /etc/sudoers'
When i execute only part with cat, it... (8 Replies)
Hi,
My goal is to connect from unix server A to windows server B and call a bat file on windows.
I am able to succeed in remoting to windows and executing a command, the issue i am facing is the shell scrip is exiting without making sure of bat file success.
Can you please help me in... (4 Replies)
How should i make the following code working
#!/bin/bash
INPUTFILE="test.txt"
while read STRING; do
IP=`host -t A $STRING | awk '{print $NF}'`
HOSTNAME=`ssh -oPasswordAuthentication=no -oStrictHostKeyChecking=no $IP "hostname"`
echo $HOSTNAME > out.txt
done < $INPUTFILE
At this moment while... (3 Replies)
Hi,
The below command is not giving me the count , Can somebody help me in re-writing this pls .
Proc_Exist=`ssh -q -o "BatchMode=yes" -o "PasswordAuthentication=no" $OAUSER@${Primary_Node} ps -ef |
grep -v grep | grep "${ICM_Proc}" |wc -l `
Also the same problem with below... (13 Replies)
Hi,
I need a script that will connect to a list of servers and first sudo to root and then run a couple of commands.
For security reasons, we can't setup ssh keys as root.
Manually I have to login to a server as user and then sudo to root.
It's not possible to use root@servername , because of... (8 Replies)
Help please!!
I want to use ssh to execute a remote exe and while it's running I want to query for the process ID of the exe (2 different ssh commands)
1. sshpass -p "<passwd>" ssh -f -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@<ipaddress> nohup /tmp/mmds_asyn &
2.... (0 Replies)
Hi all,
I am facing the following issue:
Host A should execute a remote command (say pwd) on host B2.
B2 is not directly reacheable but you have to connect from a to B1, then from B1 you can execute the command ssh user@B2 pwd.
B1 and B2 are directly connected:
A => B1 => B2
| ... (3 Replies)
Hi,
I am having nightmare issue-ing remote ssh command from a CGI perl script.
It just won't run on debug message: It says permission denied. Can I even do this? as the apache server running under DAEMON account probably can't execute it? Is this the case of what's going on?
Here is my... (3 Replies)