集群分发文件脚本
用途:
Linux01(脚本文件)\linux02\linux03
分发脚本使用前提
- 配置ip和主机名称的映射
需要让linux01机器知道linux02和linux03代表的是哪个ip
- 配置SSH无**登录(不使用密码登录)(参考另外一个文档01_SSH免**登录.docx)
ssh 192.168.1.102
(1)在/usr/local/bin目录下创建xsync文件,文件内容如下:
cd /usr/local/bin
vim xsync
#!/bin/bash #1 获取输入参数个数,如果没有参数,直接退出 pcount=$# if((pcount==0)); then echo no args; exit; fi
#2 获取文件名称 p1=$1 fname=`basename $p1` echo fname=$fname
#3 获取上级目录到绝对路径 pdir=`cd -P $(dirname $p1); pwd` echo pdir=$pdir
#4 获取当前用户名称 user=`whoami`
#5 循环 for((host=1; host<4; host++)); do #echo $pdir/$fname [email protected]$host:$pdir echo ------------ linux0$host ---------------- rsync -rvl $pdir/$fname [email protected]linux0$host:$pdir done |
(2)修改脚本 xsync 具有执行权限
[[email protected] bin]# chmod 777 xsync
(3)调用脚本形式:xsync 文件或文件夹名称 (在linux01上执行,拷贝给linux02/linux03)
[[email protected] bin]# xsync /opt/module/hadoop-2.7.2