linux跨机器操作服务

linux跨机器操作服务

​ 最近在多台机器部署了mq服务,为了写个shell脚本达到跨机器一键启停所有mq的目的。需要解决各机器间自动登录权限的问题。我采用的方法是利用sshpass

​ 操作流程:

​ 下载sshpass-1.06.tar.gz,地址 https://sourceforge.net/projects/sshpass/files/
或者 https://download.csdn.net/download/renhuan28/10479363

​ 下载后解压安装

tar -zxvf sshpass-1.06.tar.gz
cd sshpass-1.06
#在你的系统上测试存在的特性, ./configure --prefix=/软件要安装的路径
#但是我们也可以直接./configure而不指定路径,通常通过从源码包编译安装的软件默认路径都是/usr/local/
./configure  
#编译程序
make
#检查是否编译成功,返回0则是成功
echo  $
#安装文件
make install

针对个人amq用户使用

在amq根目录下建立 .bash_profile

# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin
#引向sshpass命令所在文件夹
PATH=$PATH:/data/databus/sshpass/bin

export PATH

这样便可以在此用户下使用sshpass了

主要代码 do.sh

do{
password=XXX;
hosts=`sed -n '/^[^#]/p' hostlist`
       for host in $hosts
           do
sshpass -p $password ssh $host "$@" -o StrictHostKeyChecking=no
     done
return 0
}

  if [ $# -lt 1 ]
        then
                echo "$0 cmd"
                exit
        fi
        do "$@"
        echo "return from do"

do.sh ./${activemqbin}/activemq start

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值