1

最近在做服务器迁移的时候,遇见了一个很头疼的问题。那就是我原本的服务器数据实在是太多了高达250G,而且不能在短时间立马切换。所以需要一个过渡期,但是在此期间又会新增文件或者用户修改文件,那么如何实时传输文件的时候仅仅传输已经变更的文件了。

使用场景

现有服务器A和服务器B,如果服务器A的指定目录(例如 /iiske/daxi/ )中的内容发生变更(增删改和属性变更),实时将这些变更同步到服务器B的目标目录中(例如 /www/daxi/ )。

数据镜像备份工具Rsync

Rsync是一个非常快速和灵活的文件复制工具。它支持本机或者是和远程服务器间的文件复制。Rsync使用了delta-transfer算法,它只需要传送源端和目标端的文件差异部分,大大减少了网络带宽的消耗和复制耗费的时间。Rsync多用于数据备份和镜像。

Rsync使用了快速检查算法,通过比较文件大小或最后修改时间的变化来判断文件是否需要同步。

Rsync连接远程主机有两种方式:使用ssh或rsync daemon。这里使用Rsync方式来实现远程文件备份。

在Linux中也可以使用 scp 命令进行服务器之间文件数传。

Linux scp 命令用于 Linux 之间复制文件和目录。scp 是 secure copy 的缩写, scp 是 linux 系统下基于 ssh 登陆进行安全的远程文件拷贝命令。scp 是加密的,rcp 是不加密的,scp 是 rcp 的加强版。例如:  A :/home/xiaoke/a.txt     B :/home/xiaoming/将服务器A文件a.txt拷贝到服务器B下面

scp    /home/xiaoke/a.txt    root@192.168.18.111:/home/xiaoming/

如果是文件夹则添加  -rscp  -r   /home/xiaoke    root@192.168.18.111:/home/xiaoming/注:-r  递归复制整个目录。2

Rsync的安装与操作

安装Rsync

分别在服务器A和服务器B执行:

sudo yum install rsync

安装完毕后,会发现rsync的配置文件位于 etc/rsyncd.conf 。该文件使用daemon方式同步时需要使用,这里用不着也就不描述了。

配置服务器A和B之间的免密登录:

服务器A执行:

ssh-keygen#注意,在这里会生成一个公钥,这个公钥拷贝到那个服务器#则进入该服务器不需要再输入密码,记住一定不要输入公钥名和密码#只需要敲回车就OK了,否则你会头疼,小编就因为这个问题折腾了很久。这个没有#任何说明完全靠后面的提示摸索出来的。生成公钥过程一定不要输入任何东西,直接回车直接回车直接回车!!!#生成密钥复制公钥到远程主机ssh-copy-id root@IP

 报错:/usr/bin/ssh-copy-id: ERROR: No identities found

一开始在网上搜索原因的时候,大部分的都是说ssh-copy-id -i id_rsa.pub root@ip地址 中的公钥不存在或者应该加上-i 等,但是都没有解决我的问题,后来在发现是dsa与rsa的问题, 所以我建议大家先看一下执行的是 ssh-keygen -t dsa 还是 ssh-keygen -t rsa ,以免在执行 ssh-copy-id -i /root/.ssh/id_rsa.pub root@ip地址 报错:/usr/bin/ssh-copy-id: ERROR: No identities found

注意,上面这个问题慎重执行,容易生成多个公钥。不建议操作。

如果你按照这个方法没有解决问题,那么你可以看看笔者上面ssh-keygen所述部分。

rsync -avPz --progress  /iiske/   134.222.44.121:/xke把当前A服务器iiske目录下的文件拷贝到    B服务器134.222.44.121的xke目录下如果进入需要输入密码,则表示你的公钥不在B服务器上面,重复上面的操作就可以。

写入脚本中(不是必须)

vim auto.sh#脚本代码#!/bin/bashecho "***程序开始执行***"  rsync -avPz --progress  /iiske/   134.222.44.121:/xkeecho  "***程序结束***"/bin/bash  auto.sh #运行  sudo nohup一直执行,复制xshell退出时程序结束
#!/bin/bashecho "****ok***"inotifywait -mrq --timefmt '%d/%m/%y %H:%M'  --format '%T%w%f%e'  -e  modify,delete,create,attrib  /iiske | while read filedo echo "开始执行" rsync -avPz --progress /iiske/ 122.212.34.221:/xke rsync -avPz --delete /iiske/ 122.212.34.221:/xke echo "ok"done

运行中有任何问题可以私信作者。

linux手动安装rsync_Linux服务器之间文件如何实现实时同步传输相关推荐

  1. linux手动安装rsync_Linux中安装使用rsync | 学步园

    获取 rsync-3.1.0  我的网盘里放了一个 .地址: http://pan.baidu.com/s/1dDs4lSt 安装 rsync-3.1.0.tar.gz#tar zxvf rsync- ...

  2. linux服务器拷贝目录文件夹,linux两台服务器之间文件/文件夹拷贝

    linux两台服务器之间文件/文件夹拷贝 跨服务器拷贝需要用到的命令是scp. ----------------------拷贝文件夹--------------------------------- ...

  3. Debian8 Linux上安装SSH服务器并配置sshd_config文件启用root ssh登录

    Debian Linux上安装SSH服务器 安装SSH服务器debian Linux允许我们通过ssh协议登录debian服务器.SSH是从远程位置登录debian的首选方法,因为ssh协议通过Int ...

  4. mac服务器文件传输,scp实现mac与linux服务器之间文件传输

    1.mac上传文件到linux服务器 scp 文件名 用户名@服务器ip:目标路径 如:scp -P端口号 /Users/test/testFile test@xxx.xxx.xxx.xxx:/tes ...

  5. 云服务器之间进行文件转移,windows服务器之间文件如何转移

    windows服务器之间文件如何转移 内容精选 换一换 当您有如下需求时,可以考虑使用用户数据注入功能来配置弹性云服务器:需要通过脚本简化弹性云服务器配置通过脚本初始化系统已有脚本,在创建弹性云服务器 ...

  6. 在本地实现完成多台服务器之间文件拷贝-进阶版

    上一篇文章: 在本地实现完成多台服务器之间文件拷贝 准备工作: rsync同步时,删除目标目录比源目录多余文件的方法(–delete) Linux scp 免密码 传输文件 本地电脑与一台服务器之间实 ...

  7. 在本地实现完成多台服务器之间文件拷贝

    前言: linux怎么使多条命令同时执行 Linux scp 免密码 传输文件 问题1: 在本地实现完成两台服务器之间文件拷贝: 准备工作: 先在其中一台服务器上生成一对公钥和私钥; ssh-keyg ...

  8. Linux下安装Oracle11g服务器

    Linux下安装Oracle11g服务器 安装环境 Linux服务器:SuSe10 sp2 64位 Oracle服务器:Oracle11gR2 64位 系统要求 Linux安装Oracle系统要求 系 ...

  9. 不同windows服务器之间同步文件,WindowsServer2016配置DFS实现两个服务器之间文件同步...

    <WindowsServer2016配置DFS实现两个服务器之间文件同步>由会员分享,可在线阅读,更多相关<WindowsServer2016配置DFS实现两个服务器之间文件同步(1 ...

最新文章

  1. JMS规范、ActiveMQ Broker和ActiveMQ传输协议
  2. SFB 项目经验-81-在企业内部外部限制访问ECP
  3. 查找文本(grep)
  4. html 属于mvvm框架,前端MVVM框架avalon揭秘 - HTML编译器
  5. 信息学奥赛一本通C++语言——1083:计算星期几
  6. 安装Vmware-tools时CD/DVD找不到Vmware-tools压缩包
  7. python解析器打包_打包发布Python模块的方法详解
  8. 计算机网络使用双绞线连接时,计算机网络技术期末试卷A
  9. 计算机界面视频录制软件,视频录制工具怎么用?这样的电脑录屏方法超实用!...
  10. codeigniter mysql -1_mysql-Codeigniter-多个数据库连接
  11. 安装配置Axis2,为Eclipse安装配置Axis2插件教程
  12. iphone开发:ipa打包
  13. 根据GFF3文件统计外显子大小和数量以及内含子大小
  14. 计算机无法连接路由器上网,为什么路由器无法连接到网络,但是路由器无法连接到互联网!...
  15. 仿百度糯米TP5项目笔记
  16. 189邮箱smpt服务器,客户端软件配置-帮助中心-中国电信189邮箱
  17. predefined Serial item
  18. 计算机平面设计与工程论文,浅谈计算机平面设计和设计软件相互结合
  19. 睡眠质量不好怎么改善,这些助眠好物让你失眠快速入睡
  20. 伯克利摘得最佳论文,陈丹琦、杨笛一等华人团队获杰出论文,ACL2022奖项公布...

热门文章

  1. 【Beta版本】冲刺-Day6
  2. html网页特殊符号代码
  3. Android APK反编译具体解释(附图)
  4. JS正则表达式使用方法及示例
  5. (C#)WinForm窗体间传值
  6. Doctype文档类型学习小结
  7. 已成功与服务器建立连接,但是在登录过程中发生错误。 (provider: SSL Provider, error: 0 - 接收到的消息异常,或格式不正确。)
  8. 解决chrome在ubuntu+root模式下打不开的问题
  9. 解决django关于图片无法显示的问题
  10. Java compiler level does not match解决方法