Linux:服务器间同步文件的脚本(实用)

这篇具有很好参考价值的文章主要介绍了Linux:服务器间同步文件的脚本(实用)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、功能描述

比如有三台服务器,hadoop102、hadoop103、hadoop104,且都有atguigu账号
循环复制文件到所有节点的相同目录下,且脚本可以在任何路径下使用

二、脚本实现

1、查看环境变量

echo $PATH

Linux:服务器间同步文件的脚本(实用),Linux,linux

2、进入/home/atguigu/bin目录
在该目录下创建脚本,则该脚本可以在任何路径下使用,因为,这个路径添加在环境变量中

3、创建脚本文件xsync

#!/bin/bash

#1. 判断参数个数
if [ $# -lt 1 ]
then
	echo Not Enough Arguement!
	exit;
fi

#2. 遍历集群所有机器
for host in hadoop102 hadoop103 hadoop104
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

4、修改脚本权限

chmod 777 xsync

三、优化

如果想在执行脚本的时候,避免输入服务器密码,那么,需要配置服务器间的免密登陆
参考:Linux服务器间配置免密登陆文章来源地址https://www.toymoban.com/news/detail-861010.html

到了这里,关于Linux:服务器间同步文件的脚本(实用)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 如何在Linux机器上使用ssh远程连接Windows Server服务器并使用rsync同步文件

    如何在Linux机器上使用ssh远程连接Windows Server服务器并使用rsync同步文件

       当前在研究goploy自动化开源部署工具,该工具部署在linux机器上,而要部署服务的目标服务器有一部分是windows server服务器,goploy自动化部署,使用rsync部署方式,底层依赖于ssh远程连接目标服务器,所以,要实现自动化部署,必须先实现ssh远程连接目标windows server服务器

    2024年02月05日
    浏览(15)
  • Linux服务器同步Windows目录同步-rsync

    Linux服务器同步Windows目录同步-rsync

    最近需要,Linux的服务器同步Windows的一个目录。查了下,大概有三种方法:网盘同步;rsync同步;挂载目录。 网盘同步,可以选择搭建一个Nextcloud 。但是问题在于,我需要的是,客户端和服务端的同步,而不是客户端和客户端的同步。服务端没有界面,安装客户端的网盘软件

    2024年02月11日
    浏览(5)
  • linux两台服务器时间同步

    让Linux两台服务器时间同步,可以通过网络时间协议(NTP)来实现。NTP是一种可以在网络时间服务器和客户端之间同步时间的协议,通过使用NTP,可以保证网络中的所有计算机时间的准确性。 在服务器1上安装NTP服务: 编辑ntp配置文件/etc/ntp.conf,将server字段改为服务器1的IP地

    2024年02月09日
    浏览(7)
  • 服务器巡检脚本(linux)

    2024年02月20日
    浏览(7)
  • Windows→Linux,本地同步到服务器

    Windows→Linux,本地同步到服务器

    本地-远程,增删改移全自动,不限文件/夹文件。注意是 本地到远程 单向,反之 远程-本地 无法自动同步,需要手动download到本地。 当然远程文件都是只读的,你肯定是操作本地文件的,除了远程代码生成的新文件,这里是唯一需要手动download到本地的。 配置文件会生成在项

    2024年03月25日
    浏览(9)
  • Linux下Samba服务器的安装与配置(简单实用)

    Linux下Samba服务器的安装与配置(简单实用)

    为了可以实现Linux与windows之间实现文件的共享,方便文件可以直接修改,而不是像以前需要拷贝文件再进行修改,samba的诞生是为了实现现在的这些需求。我们知道Linux之间可以使用NFS服务器来实现文件的共享,samba的诞生就是为了使windows能够访问Linux的资源。 下面是samba服务

    2024年02月12日
    浏览(10)
  • Linux服务器与群晖rsync同步,linux服务器通过rsync的方式备份数据到群晖

    Linux服务器与群晖rsync同步,linux服务器通过rsync的方式备份数据到群晖

    准备需要备份linux服务器的配置,安装rsync即可 1.登录群晖服务器,点击套件中心  2.点击红色框框,跳转到套件界面 3.点击Active Backup for Business 4.点击文件服务器-添加服务器-选择rsync服务器-下一步 5.填写远程服务器信息 6.在群晖系统上创建备份任务 打开群晖的Active Backup fo

    2024年02月10日
    浏览(12)
  • Linux服务器定时执行脚本清理日志

    程序的日志不正确或者启动脚本命令不正确,随着程序的持续运行,日志文件越来越大,持续占用设备硬盘,如果定期手动清理日志又比较占用大脑CPU和内存,如果忘了就是事故,所以写一个定时执行的脚本去清理日志很有必要。 清理日志有两种方式,一种是清空文件,主要

    2024年02月05日
    浏览(7)
  • Linux部署NTP时间服务器实现内外网时间同步

    Linux部署NTP时间服务器实现内外网时间同步

            NTP(Network Time Protocol)是网络时间协议,它的作用是同步网络中每台计算机的时间,使他们处于相同的时间环境,确保服务或软件在计算机中正常运行。         在ntp时间同步架构中,节点分为服务端(server)和客户端(client),server端配置为ntp时钟源,用来为

    2024年04月16日
    浏览(11)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包