SSH远程登录及远程命令执行
SSH免密登录
1.创建ssh的公钥私钥
ssh-keygen #创建远程登录的公钥私钥,并且默认存放到~/.ssh文件中
2.将公钥远程传输到目标主机上
ssh-copy-id root@ip #输入远程主机的密码就将公钥传输到了远程主机的~/.ssh目录下
ssh root@ip #实现远程主机的登录
远程执行命令
# 执行一条命令
> ssh root@ip '命令' # 这个时候你配置了密钥就用输入密码了
# 这里有一个-t的参数 加了-t就是一直保持登录状态 这里执行脚本不需要
# 执行一个本地脚本
> ssh root@xxx.xxx.xxx.xxx < test.sh
# 如果脚本里需要带参数这里需要加-s
> ssh root@xxx.xxx.xxx.xxx 'bash -s' < test.sh helloworld # helloword是参数\
# web负载均衡是不是需要3台
ip=(ip1 ip2 ip3) # 除非你确定你本机不需要执行脚本 就不用写本机ip了啊
for ip in ${ip[*]};do
ssh root@${ip} < test.sh # test.sh 在本机然后这个是lnp意见的脚本
done
# 我这一个脚本需要执行1个小时...
# ip1 执行完了 再去ip2 然后再去ip3 这样就是3个小时