当前位置: 首页 > news >正文

xsync 集群远程同步脚本

xsync  集群分发 脚本


(1)需求:循环复制文件到所有节点的相同目录下


(2)需求分析:


(a)rsync 命令原始拷贝:

rsync -av /opt/module root@hadoop103:/opt/


(b)期望脚本:

xsync 要同步的文件名称


(c)期望脚本在任何路径都能使用(脚本放在声明了全局环境变量的路径)

[libai@hadoop102 ~]$ echo $PATH
/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/libai/.local/bin:/home/libai/bin:/opt/module/jdk1.8.0_212/bin

(3)脚本实现


(a)在/home/libai/bin 目录下创建 xsync 文件

[libai@hadoop102 opt]$ cd /home/libai
[libai@hadoop102 ~]$ mkdir bin
[libai@hadoop102 ~]$ cd bin
[libai@hadoop102 bin]$ vim xsync

在该文件中编写如下代码

#!/bin/bash#1. 判断参数个数
if [ $# -lt 1 ]
thenecho Not Enough Arguement!exit;
fi#2. 遍历集群所有机器
for host in hadoop102 hadoop103 hadoop104
doecho ==================== $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:$pdirelseecho $file does not exists!fidone
done

(b)修改脚本 xsync 具有执行权限

[libai@hadoop102 bin]$ chmod +x xsync


(c)测试脚本

[libai@hadoop102 ~]$ xsync /home/libai/bin


(d)将脚本复制到/bin 中,以便全局调用

[libai@hadoop102 bin]$ sudo cp xsync /bin/


(e)同步环境变量配置(root 所有者)

[libai@hadoop102 ~]$ sudo ./bin/xsync /etc/profile.d/my_env.sh


注意:如果用了 sudo,那么 xsync 一定要给它的路径补全。
让环境变量生效

[libai@hadoop103 bin]$ source /etc/profile
[libai@hadoop104 opt]$ source /etc/profile

http://www.lryc.cn/news/212316.html

相关文章:

  • 30秒get视频号视频如何下载,保存视频号视频到本地方法!
  • 优化改进YOLOv5算法:加入SPD-Conv模块,让小目标无处遁形——(超详细)
  • 【数据结构】搜索树 与 Java集合框架中的Set,Map
  • 掌握组件缓存:解开Vue.js中<keep-alive>的奥秘
  • Ajax学习笔记第5天
  • 20.1 OpenSSL 字符BASE64压缩算法
  • Panda3d 教程
  • 除自身以外数组的乘积
  • 干洗店小程序上门洗鞋店管理软件功能介绍;
  • 【C语言初学者周冲刺计划】1.1用筛选法求100之内的素数
  • 1.Vue—简介、实例与容器、MVVM模型
  • 【Java笔试强训】Day7(WY22 Fibonacci数列、CM46 合法括号序列判断)
  • Linux进程的概念
  • XML教学视频(黑马程序员精讲 XML 知识!)笔记
  • 自定义组件实现v-model
  • 【自动驾驶】Free space与Ray casting
  • RHCE---正则表达式
  • 3D RPG Course | Core 学习日记一:初识URP
  • Spring Cloud 之RabbitMQ的学习【详细】
  • 第五章 I/O管理 六、I/O核心子系统
  • winfrom窗体比例缩放
  • 宇信科技:强势行业加速融入AIGC,同时做深做细
  • Google Play上的Android广告软件应用程序积累了200万次安装
  • 算法通关村第四关-黄金挑战栈的经典问题
  • 前端开发必备技能!用简单CSS代码绘制三角形,提升用户体验
  • 想翻译pdf文档,试了几个工具对比:有阿里(完全免费,快,好用,质量高,不用注册登录)道最好(有限免费) 百度(有限免费)和谷歌完全免费(网不好)
  • c# .net linux ImageSharp+FastDFS+Base64上传图片,压缩图片大小,图像处理dcoker中使用也可以
  • Flutter FittedBox
  • 亚信科技:发挥自我优势深入AIGC,并购整合高瞻远瞩致力未来路
  • 【设计模式】第17节:行为型模式之“解释器模式”