rsync和xsync文件同步命令的安装和部署

本文介绍了如何安装rsync服务,并编写名为xsync的自定义文件同步shell脚本,该脚本利用rsync命令实现文件同步。详细步骤包括:通过yum安装rsync,启动并设置开机启动rsync服务,以及在/root/bin下创建并赋予执行权限的xsync脚本的编写和测试过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

xsync命令是自己编写文件同步命令shell脚本,其中调用的是rsync命令

1、rsync的安装

每台机器都需要运行下面的命令:
安装:

yum install rsync;

启动服务以及开机自启动:

systemctl start rsyncd.service
systemctl enable rsyncd.service

2、编写xsync脚本

2.1、首先执行:

echo $PATH
在这里插入图片描述

我这里直接使用的是root用户所以在/root/bin下的脚本可以在任意位置执行,所以编写的xsync脚本就创建在这个目录下面:
在这里插入图片描述2.2、创建xsync文件
然后将下面的代码复制进刚刚创建的xsync文件,然后根据自己的节点进行修改:

   #!/bin/bash
   #1 获取输入参数个数,如果没有参数,直接退出
   pcount=$#
   if((pcount==0)); then
   echo no args;
   exit;
   fi
   
   #2 获取文件名称
  p1=$1
  fname="$p1"
  echo fname=$fname
  
  #3 获取上级目录到绝对路径
  #pdir=$(dirname $(pwd))
  pdir=`cd -P $(dirname $p1); pwd`
  #pdir=$(pwd)
  #pdir=$(cd -P $dirname p1; pwd)
  #pdir= $(pwd)
  echo pdir=$pdir
 
  
  #4 获取当前用户名称
  user=`whoami`
  
  #5 循环,这里host根据自己的节点数和主机名设置
  for i in slave1 slave2; do
          echo $pdir/$fname $user@$i:$pdir
          echo --------------- $i ----------------
          rsync -rvl $pdir/$fname $user@$i:$pdir
  done

2.3、加上执行权限:

chmod 777 xsync

2.4、测试:
在任意文件夹下,运行同步脚本文件xsync:
在这里插入图片描述

### 关于尚硅谷Hadoop课程中的`xsync`工具 在尚硅谷的大数据Hadoop教程中,`xsync`被用于简化多个节点之间的配置文件同步工作。对于分布式系统的部署来说,保持各个节点上的配置一致是非常重要的。 当涉及到多台机器组成的集群环境时,手动逐个登录每台服务器去修改配置显然是低效且容易出错的做法。因此,在设置好一台主机(通常是namenode)上的配置之后,可以利用`xsync`来快速地把更改推送到其他所有参与计算的datanodes上[^1]。 具体操作如下所示: 假设已经按照官方文档完成了基本安装并编辑好了核心站点属性文件,则可以通过下面这条命令完成整个集群内指定路径下文件的一致性分发: ```bash xsync /opt/module/hadoop/etc/hadoop/workers ``` 此命令会依据`/opt/module/hadoop/etc/hadoop/workers`列表里的IP地址或主机名向对应的远程计算机发送相同位置处的数据副本。这不仅限于worker节点定义本身;任何需要跨设备共享的信息都可以采用这种方式处理[^3]。 值得注意的是,虽然这里提到的是通过`xsync`来进行workers文件同步,但实际上这个方法适用于任何类型的纯文本格式配置项更新场景——只要确保源端拥有最新版本即可[^2]。 另外一种常见的做法是从另一台已准备好环境的目标机那里获取所需材料而不是推送本地变更给他人。这时就可以借助SCP协议下的安全复制功能实现反向传输目的: ```bash scp -r student@hadoop102:/opt/module/hadoop-3.1.3 /opt/module/ ``` 不过需要注意权限问题以及网络连接状态良好才能顺利完成上述过程[^4]。 最后还可以考虑更高级别的解决方案比如Rsync服务,它能够提供增量备份特性从而减少不必要的带宽消耗: ```bash rsync -av /opt/module atguigu@hadoop103:/opt/ ``` 这种方法特别适合频繁变动但又不想每次都重新传送全部内容的情况[^5]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值