1、建立信任关系
1-1、取消yes 确认,先 ssh -o "StrictHostKeyChecking no" username@password 链接,然后输入密码,连接后执行exit退出远程服务器。
1-2、SSH 互信的配置非常简单,首先生成 ssh key::ssh-keygen
1-3、把 public key 拷贝到信任方中:ssh-copy-id -i ~/.ssh/id_rsa.pub username@hostname 如:
ssh-copy-id -i ~/.ssh/id_rsa.pub weblogic@10.100.10.104
2、服务器启动脚本
2-1、改写我之前写的服务器脚本并放入相应的服务器
2-2、编写服务器杀进程脚本
#这个是杀掉所以java 进程
#sbin/bin
ps -ef|grep LOCAL=NO|grep -v grep|cut -c 9-15|xargs kill -9 java &
2-3、远程执行启动脚本
2-3-1、远程一台服务器:ssh weblogic@10.100.10.104 "cd /home/weblogic ; ./ tt104.sh"
2-3-2、一键启动多台服务器:
笨方法一键启动所有服务
脚本命令如下:
#!/bin/sh
#这里时注释部分
#set -x
#USER_NAME=`weblogic`
#SCRIPT_DIR=`weblogic1`
export LANG=zh_CN.UTF-8
if [ `whoami` != 'weblogic' ]; then
echo '用户登录错误,请使用weblogic用户化执行!'
exit 9
fi
#设置变量
set sshhome=/home/weblogic
export username=weblogic
set sshx=tt104.sh
export IP1=10.100.10.104
export IP2=10.100.10.105
export IP3=
export IP4=
#104 服务器
ssh $username@$IP1 "cd /home/weblogic ; sh tt104.sh"
#105 服务器
ssh $username@$IP2 "cd /home/weblogic ; sh tt104.sh "
-----------------------------------------------------------------------------------------------------------------------------------------
扩展:
一、文件和目录拷贝
1、文件远程拷贝:scp 文件名 username@hostname:/拷贝到哪个路径下,如:scp tt weblogic@192.168.1.222:/home/weblogic
2、文件夹及下目录远程拷贝: scp -r 文件名 username@hostname:/拷贝到哪个路径下,如:scp -r tt weblogic@192.168.1.222:/home/weblogic
二、远程执行命令:ssh username@hostname "cd 要进入的目录 ; 要执行的命令"
三、参考链接:
1、建立信任
http://www.jb51.net/article/119541.htm
2、远程命令:
http://www.jb51.net/article/64229.htm
http://www.cnblogs.com/ilfmonday/archive/2013/11/15/ShellRemote.html
-------------------------------
这是批量启动,自己一后慢慢研究
-------------------------------
#!/bin/bash
#变量定义
ip_array=("10.100.10.104" "10.100.10.105")
user="weblogic"
remote_cmd="/home/weblogic/tt104.sh"
#本地通过ssh执行远程服务器的脚本
for ip in ${ip_array[*]}
do
if [ $ip = "192.168.1.1" ]; then
port="22"
else
port="22"
fi
ssh -t -p $port $user@$ip "remote_cmd"
done
© 版权声明
文章版权归作者所有,未经允许请勿转载。
体验一下。