如果你不想努力了,就来看看这个脚本吧!!!

2021-08-24 16:24:29 浏览数 (1)

我这一个回车键下去,可能你就不用努力了!!!

脚本思路如下,在一台机器上生成密钥后发送给其他机器,配置免密登录;从本地yum仓库中拉取安装包,然后解压,配置环境变量,配置jdk环境。

运行环境:本地yum仓库,三台测试机器

废话不多说,直接上干货!

第一个脚本:
代码语言:javascript复制
#!/bin/bash

SERVERS="master slave1 slave2"
PASSWORD=123
BASE_SERVER=192.168.200.6

auto_ssh_copy_id() {
    expect -c "set timeout -1;
        spawn ssh-copy-id $1;
        expect {
            *(yes/no)* {send -- yesr;exp_continue;}
            *password:* {send -- $2r;exp_continue;}
            eof        {exit 0;}
        }";
}

ssh_copy_id_to_all() {
    for SERVER in $SERVERS
    do
        auto_ssh_copy_id $SERVER $PASSWORD
    done
}

expect -c "set timeout -1;
	spawn ssh-keygen;
	expect {
		*id_rsa* {send -- r;exp_continue;}
		*pass* {send -- r;exp_continue;}
		*again* {send -- r;exp_continue;}
		eof        {exit 0;}
	}";
ssh_copy_id_to_all
for SERVER in $SERVERS
do
	scp install.sh $SERVER:~/
	scp end.sh $SERVER:~/
	ssh $SERVER ~/install.sh
done 
第二个脚本:

脚本名称为:install.sh,因为第一个脚本调用了第二个脚本,要不然找不到。

代码语言:javascript复制
#!/bin/bash

BASE_SERVER=192.168.200.3
yum -y install wget
wget $BASE_SERVER/softwares/jdk-8u261-linux-x64.tar.gz
tar -zxvf jdk-8u261-linux-x64.tar.gz 
mv jdk1.8.0_261 jdk
mv jdk /export/servers/
cat >> /etc/profile << EOF
export JAVA_HOME=/export/servers/jdk
export PATH=$PATH:$JAVA_HOME/bin
EOF
rm -rf jdk-8u261-linux-x64.tar.gz install.sh

说明(重要):

这两个脚本的使用前提是要搭建一个本地yum仓库,否则无法进行安装,将jdk的安装包上传到本地yum仓库中,注意修改第二个脚本中yum仓库的地址,修改成你的,还有jdk版本要对应,安装路径改成自己的,第二个脚本的名字为install.sh,运行完成后,记得source一下就可以查看jdk版本信息了。

如果运行失败,检查你的ip,文件路径,安装包名字是否正确。

0 人点赞