1.scp
目的:一次只能实现一台服务器和另外一台服务器之间的数据拷贝
调用: scp -r /opt/module/ rooot@主机ip:/opt
2 .rsync
目的:远程同步
调用: rsync -rvl /opt/module root@主机ip1:/opt/temp ==>将本机的/opt/module目录同步到主机ip1的/opt/temp目录下
3. 编写集群分发脚本 xsyns 实现一台服务器与多台服务器之间的文件拷贝
#!/bin/sh
# 获取输入参数个数,如果没有参数,直接退出
pcount=$#
if((pcount==0)); then
echo no args...;
exit;
fi
# 获取文件名称
p1=$1
fname=`basename $p1`
echo fname=$fname
# 获取上级目录到绝对路径
pdir=`cd -P $(dirname $p1); pwd`
echo pdir=$pdir
# 获取当前用户名称
user=`whoami`
# 循环
for((host=1; host<=2; host++)); do
echo $pdir/$fname $user@slave$host:$pdir
echo ==================slave$host==================
rsync -rvl $pdir/$fname $user@slave$host:$pdir
done
#Note:这里的slave对应自己主机名,需要做相应修改。另外,for循环中的host的边界值由自己的主机编号决定。
调用格式:xsync 文件名称
4 编写脚本 xcall
目的:该脚本用于在所有主机上同时执行相同的命令。
#!/bin/sh
pcount=$#
if((pcount==0));then
echo no args...;
exit;
fi
echo ==================master==================
$@
for((host=1; host<=2; host++)); do
echo ==================slave$host==================
ssh slave$host $@
done
#Note:这里的master和slave都是对应自己主机名,需要做相应修改。另外,for循环中的host的边界值由自己的主机编号决定。
记得:最后chmod a+x xcall 给文件添加执行权限即可。
5 SSH无密码登录
目的:远程登录别的主机,进行相应的操作
调用:ssh 另一台电脑的 ip 即可