ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Linux基于rsync工具快速分发目录或文件到其他服务器节点

2021-10-28 00:03:20  阅读:202  来源: 互联网

标签:rsync #- pdir echo host fname Linux 服务器


#!/bin/sh
#xsync脚本基于rsync工具,rsync 远程同步工具,主要用于备份和镜像。具有速度快、避免复制相同内容和支持符号链接的优点,它只是拷贝文件不同的部分,因而减少了网络负担。
#rsync -rvl $pdir/$fname $user@hadoop$host:$pdir
#常用参数:
#-r, –recursive 对子目录以递归模式处理
#-R, –relative 使用相对路径信息
#-l, –links 保留软链结
#-v, –verbose 详细模式输出,传输过程可见
#…
#
#在/usr/local/bin 目录下创建 xsync 文件,向里面添加:
# 获取输入参数个数,如果没有参数,直接退出
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=2; host<=3; host++)); do
    echo $pdir/$fname $user@10.4.7.8$host:$pdir
    echo ==================10.4.7.8$host==================
    #rsync -rvl $pdir/$fname $user@10.4.7.8$host:$pdir
done
#Note:这里的slave对应自己主机名,需要做相应修改。另外,for循环中的host的边界值由自己的主机编号决定。
#最后chmod a+x xsync给文件添加执行权限即可。
#使用xsync filename就能将filename分发到集群中的各个节点中。

标签:rsync,#-,pdir,echo,host,fname,Linux,服务器
来源: https://blog.csdn.net/qq_33734357/article/details/121005047

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有