Remotly running the script


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Remotly running the script
# 1  
Old 06-25-2013
Remotly running the script

Hi Experts,

I have one script which I have to run on multiple servers.
One way is to keep that script on every unix box and run it. I am looking for some best practise to do it. Like remotly login to the server using credentials and execute the script.

below is the snippet from the script:-

Code:
 
grep -E '^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' Myfile | awk '{for(i=2;i<=NF;i++)print $1,$i}' > temp
printf "Host/AliasName\t\t\t\t\t\tIPAddress\t\t\tResolved\tReplied\n" >log.txt
while read ip host
do
ip1=$(ping -q -c 1 -t 1 "$host" |grep PING | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}')
ping_stat=`ping -c 4 useipapd01 | grep loss | awk '{print $6}'`
if [[ "$ip1" = "$ip" && "$ping_stat" = "0%" ]]
then
echo "$host $ip Y Y" | awk '{printf "%-50s\t%-15s\t%8s\t%8s\n",$1,$2,$3,$4}' >>log.txt
else
echo "$host $ip N N"| awk '{printf "%-50s\t%-15s\t%8s\t%8s\n",$1,$2,$3,$4}' >>log.txt
fi

I came to know about SSH but in the script itslef i have to give username and password. Is there a way to read the servers name, username and password from the file and login to the server and execute that script mentioned above.

Thanks in advance.
# 2  
Old 06-25-2013
Keeping password on a file is not a best practice. If you need to give password in clear text, i guess you can use expect.
# 3  
Old 06-25-2013
Thanks Rajamadhavan.

But question here is like same script I have to run on 5 servers. So thinking of keeping the script on one server and remotely log in to rest of five servers and execute it.
Any guidance on how we can do it in shell scripting?
# 4  
Old 06-25-2013
Hi, u can use ssh key sharing. In this method, u can share ssh keys among specific users in the client and server machines. Then place the scripts in each on the client servers. Then finally execute the remote script using ssh.
That the simplest and best or the next option is doing something with TCP.
# 5  
Old 06-25-2013
i strongly suggest you use one script and run it on the remote servers using ssh ... this way you only have to maintain 1 version of the script ... you can make copies of the script on some backup on a remote server just to make sure you do not lose work should you lose your "primary" server ...
This User Gave Thanks to Just Ice For This Post:
# 6  
Old 06-26-2013
Thanks Just Ice,

I am keeping the host file on one server and running the script using the below command.

Code:
 
 ssh hostname@useipapd03 'bash -s' < TestPing.sh

it is running fine but problem is in my script am logging output results to one file. But that file is getting generated in the remote server. So if am dng it for 10 servers I have to log into 10 servers and see the output results.

Is there any way to log the output of script into the local server instead of output server.
# 7  
Old 06-26-2013
you have some options ...

1. have your remote commands' output sent to the console and redirect all output from ssh command to a logfile. you may want to use some kind of separator to make compiled logfile reading easier.
Code:
for host in $(< host.list)
do
     echo "\n=== $host ===\n"
     ssh -n root@$host "cd /dir; pwd; ls -lrt"
done > /dir/log

2. have your script collect the remote hosts' log files at the end of processing
Code:
for host in $(< host.list)
do
    ssh -n root@$host "hostname; some_command > /dir/log;"
    scp -p root@$host:/dir/log /localdir/log.$host
done

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Why script is running sometimes and not running sometimes?

Hi, I have a script which does couple of database connection and run some SELECT queries to get some output in the file. I am surprised to see :eek: that when i run my script some times it gives the desired out put and sometimes it shows some error :confused: . Suppose if i execute it say... (3 Replies)
Discussion started by: Sharma331
3 Replies

2. Shell Programming and Scripting

Script will keep checking running status of another script and also restart called script at night

I am using blow script :-- #!/bin/bash FIND=$(ps -elf | grep "snmp_trap.sh" | grep -v grep) #check snmp_trap.sh is running or not if then # echo "process found" exit 0; else echo "process not found" exec /home/Ketan_r /snmp_trap.sh 2>&1 & disown -h ... (1 Reply)
Discussion started by: ketanraut
1 Replies

3. Shell Programming and Scripting

Shell Script for continuously checking status of a another script running in background, and immedia

Hi, I want to write a script which continuously checking status of a script running in background by nohup command. And if same script is not running then immediately start the script...please help.. i am using below command to run script nohup system_traps.sh & but in some... (9 Replies)
Discussion started by: ketanraut
9 Replies

4. Shell Programming and Scripting

Running a script in system() call and want the script's output

Hi All, I have a script(sample.sh) displaying the output of "dd" command. Now i am using this script in system() call as, system("sh sample.sh") in an application file. I want the output of system("sh sample.sh") in the application file itself. How can i get it? Many thnaks.... (9 Replies)
Discussion started by: amio
9 Replies

5. Shell Programming and Scripting

script for reading logs of a script running on other UNIX server

Hi, I have a script, running on some outside firwall server and it's log of success or failure is maintained in a file. I want to write a script which ftp that server and reads that file and checks the logs and if failure , I will send mail notification. Please let meknow if I am not... (1 Reply)
Discussion started by: vandana.parwani
1 Replies

6. Shell Programming and Scripting

Running a unix script(which is calling another script inside that) in background

Hi all, I am having a script ScriptA which is calling a script ScriptB in the same server and copying files to second server and have to execute one script ScriptC in the second server. THis First script ScriptA is the main script and i have to execute this process continously. for Keeping... (2 Replies)
Discussion started by: rohithji
2 Replies

7. Shell Programming and Scripting

run oracle query remotly with shell script

hello how to run shell script to excute oracle queries on remote db ? i have tried as following sqlplus -s user/password@remote_server "select query;" but not working also this one sqlplus -s user/password@remote_server `select query;` not working :( i add this line to run another... (4 Replies)
Discussion started by: mogabr
4 Replies

8. Shell Programming and Scripting

How to stop a script running in remote server from local script

Hi, I have googled for quite some time and couldn't able to get what exactly I am looking for.. My query is "how to stop a shell script which is running inside a remote server, using a script"??? can any one give some suggestions to sort this out. (1 Reply)
Discussion started by: mannepalli
1 Replies

9. Solaris

Running from Shell Vs running from RC script

Hi, i have a script which need to do behave differently when run as a startup process from init.d/ rc2.d script and when run manually from shell. How do i distinguish whether my script is run by init process or by shell?? Will the command /proc/$$/psinfo | grep "myscript" work well???... (2 Replies)
Discussion started by: vickylife
2 Replies

10. Shell Programming and Scripting

want to login remotly to server and start exe

Hello Unix Guru I need help to write the shell script My requirement is i have to start exe in unix hosts ( 20 unix server) through shell script . currently i have to login to all host rlogin -l testadmin servername /users/testadmin/bolt/ source boltsrc ./executor start ... (1 Reply)
Discussion started by: getdpg
1 Replies
Login or Register to Ask a Question