linux两台服务器之间文件做同步

文章目录

概要

实现两台 Linux 服务器之间的文件同步,确保两台服务器上的文件保持一致。

一.使用到的包

1.使用到的包

1.unison-2.32.52-1.el6.rf.x86_64.rpm

2.inotify-tools-3.13-1.el6.rf.x86_64.rpm

2.下载地址:

bash 复制代码
https://download.csdn.net/download/yini123321/13054010

3.安装包

bash 复制代码
1.unison安装
rpm -ivh unison-2.32.52-1.el6.rf.x86_64.rpm

2.inotify
rpm -ivh inotify-tools-3.13-1.el6.rf.x86_64.rpm

4.验证安装是否成功
1.unison(任意一种都可以)

bash 复制代码
1.which unison

2.unison -version

3.rpm -qa | grep unison

2.inotify(任意一种都可以)

bash 复制代码
1.rpm -qa | grep inotify-tools

2.which inotifywait

3.inotifywait --version

二.服务器做免密登录

1.在服务器上执行如下命令(如果是以普通用户做免密切换到普通用户执行)

bash 复制代码
ssh-keygen -t rsa
bash 复制代码
一直回车
bash 复制代码
cd /home/test/.ssh

> 在以上目录下会生成两个文件
id_rsa
id_rsa.pub

2.需要登录的服务器

bash 复制代码
1.切换到普通用户
cd /home/test/.ssh
bash 复制代码
2.写入
cat id_rsa.pub >authorized_keys

3.测试登录

bash 复制代码
ssh 127.0.0.1(这你服务器的IP)

三. 同步脚本

1.创建shell脚本(rsync.sh)

bash 复制代码
#!/bin/bash
IP=目标IP
src=/data
dst=/data
/usr/bin/inotifywait -mrq -e create,delete,modify,move,attrib,close_write $src | while read line; do /usr/bin/unison  -batch ${src} ssh://${IP}/${dst}
echo -n "$line " >> /var/log/inotify/inotify$(date +%u).log
echo `date | cut -d " " -f1-4` >> /var/log/inotify/inotify$(date +%u).log
done

2.授权

bash 复制代码
chmod -R 755 rsync.sh

四.定时任务执行

bash 复制代码
1.编辑定时任务
crontab -e
* * * * * /home/test/rsync.sh > /dev/null 2>&1 &
2.查看定时任务
crontab -l

* * * * * /home/test/rsync.sh > /dev/null 2>&1 &

小结

` 以上只是做了源同步到目标服务器,同样的目标同步到源,可以在目标服务器上做同样的操作即可,

相关推荐
well061213 分钟前
Linux 文件相关底层知识
linux·运维·服务器
Lsetea28 分钟前
OpenSSL verify报CA certificate key too weak:auth_level与弱密钥链排查
运维·https·ssl证书·openssl·证书链
羔羊++40 分钟前
26_实验二十五_busybox构建根文件系统
linux
熊猫钓鱼>_>1 小时前
从闲置平板到家里的“控制大脑“:鸿蒙智慧中控面板完整实战
运维·人工智能·华为·自动化·电脑·ai编程·harmonyos
xUxIAOrUIII1 小时前
日常笔记-1005-1
linux·笔记·python·macos
nazisami1 小时前
程序地址空间
linux·虚拟地址
奥德元1 小时前
XiaoMate功能介绍: 让桌宠帮你分析你的桌面屏幕
github
TunerT_TQ1 小时前
【开源评测】dots:自带浏览器的 Web AI Agent——C++ 级反检测路径的工程取舍与争议
github
不会就选b1 小时前
Linux之TCP<2>
linux·网络·tcp/ip
DP DPharness1 小时前
浏览器自动化插件时,三个可核对的判断维度
运维·自动化