BUG笔记

一、rsync分发文件时失败
vim xsync //创建脚本
#!/bin/bash
#1. 判断参数个数
if [ $# -lt 1 ]
then
echo Not Enough Arguement!
exit;
fi
#2. 遍历集群所有机器
for host in hadoop01 hadoop02 hadoop03
do
echo ====================  $host  ====================
#3. 遍历所有目录,挨个发送
for file in $@
do
#4判断文件是否存在
if [ -e $file ]
then
#5. 获取父目录
pdir=$(cd -P $(dirname $file); pwd)
#6. 获取当前文件的名称
fname=$(basename $file)
ssh $host "mkdir -p $pdir"
rsync -av $pdir/$fname $host:$pdir
else
echo $file does not exists!
fi
done
done

该脚本主要用来在三台虚拟机之间互传文件和配置的环境,这样就只用在一台上配置然后分发给其他两台就行,节省了大量时间的精力。

但是当我们开始分发文件时,往往会报错:

image-20231024192315994

可以看出hadoop01成功分发,而02和03没有成功,这种错误一般是由于没有rsync环境导致的。

要保证三台集群都有rsync的环境,没有的可以通过以下命令安装:

yum install -y rsync

当环境都搭建好之后再运行就可以了。

image-20231024192647172

注意:我的是root账户,如果是其他账户还要对分发的文件赋权,一般命令为

chmod +X 文件名

的是root账户,如果是其他账户还要对分发的文件赋权,一般命令为

chmod +X 文件名

脚本文件一般放在全局环境下,root账户放在/root/bin/目录下,其他账户放在/home/账户名/bin/目录下。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一只小小小杨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值