Please check the script

[root@central kdump_test]# cat initial_check3.sh
#!/bin/bash
while read server
do
  echo -n $server
  echo
  ssh -n root@$server "cat /boot/config-`uname -r`|grep -e KEXEC -e CRASH"
 ssh -n root@$server "cat /boot/config-`uname -r`"
  if [ $? -ne 0 ]; then
    echo "[ FAIL ]"
  else
    echo "[ done ]"
  fi
done < lnazvm_qacore

where lnazvm_qacore consist of server1.qua and server2.qua


Output is:


[root@central# kdump_test]# ./initial_check3.sh
server1.qua
cat: /boot/config-2.6.18-128.el5: No such file or directory
cat: /boot/config-2.6.18-128.el5: No such file or directory
[ FAIL ]
server2.qua
cat: /boot/config-2.6.18-128.el5: No such file or directory
cat: /boot/config-2.6.18-128.el5: No such file or directory
[ FAIL ]
oo_tatangAsked:
Who is Participating?
 
Seth SimmonsConnect With a Mentor Sr. Systems AdministratorCommented:
the problem is your uname command
with backtick, it's executed first and placed in that command

this means uname -r is executed locally and 2.6.18-128.el5 (your local kernel) is placed there and that kernel is not on the remote system

replace the " with ' only and the command in () and that should run uname on the remote system

ssh -n root@$server '(cat /boot/config-`uname -r`|grep -e KEXEC -e CRASH)'

Open in new window

0
 
ozoCommented:
Is that the result you expected?

Did you mean to use ' instead of "?
0
 
SurranoSystem EngineerCommented:
You don't even need the parentheses.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.