{eval=Array;=+count(Array);}

问答专栏Q & A COLUMN

如何同步两个linux机器?

wangtdgoodluckwangtdgoodluck 回答0 收藏1
问题描述:有两个机器,一个debian的台式机用来搞开发,一个surface上virtual box装的debian负责带给别人展示。代码都是用dropbox传的,基本surface每次一开机代码就到位了。但是其他软件就很麻烦。想问的是linux上有什么方案能像dropbox一样,机器1上有了变动就能自动移植到机器2上?
收藏问题

2条回答

Tecode

Tecode

回答于2022-06-28 11:12

在日常开发运维工作中,经常会遇到多台服务器上的数据同步问题,特别是集群部署时,如果不是自动化同步数据,全靠人工同步那工作量就会很大。

Linux的文件同步工具 Rsync

Rsync是Linux系统下的一款数据备份工具,使用它可以增量备份,不光光支持本地复制还支持远程同步,功能十分强大。

1、Rsync优点:

  • Rsync在第一次同步时是全量同步,后面同步时只会传输修改过的文件;

  • 在传输过程中还可以进行压缩传输,性能高(比scp要好);

  • 另外可以保持文件原来的权限/时间/软硬连接,避免了我们同步文件后还要设置权限的尴尬。

2、Rsync缺点:

  • Rsync是根据Linux守护进程来触发同步的,不能实时的检测到文件变化,存在时间差。

Linux上的 Inotify 特性

Inotify 是Linux内核的一个特性,它主要用来监控文件系统的操作(创建、写入、读取)并及时向专门的程序发出通知。它的优点就是:响应及时,比Cron轮询要高效很多

Linux上文件同步最佳实践:Inotify + Rsync

鉴于上面介绍的Rsync和Inotify,在实际运维工作中我们都是将两者搭配使用,即:使用Inotify实时监测文件系统变化,然后利用Rsync进行数据同步。

这样做的好处就是可以实现近乎实时的进行已修改文件的增量同步。

以上就是我的观点,对于这个问题大家是怎么看待的呢?欢迎在下方评论区交流 ~ 我是科技领域创作者,十年互联网从业经验,欢迎关注我了解更多科技知识!

评论0 赞同0
  •  加载中...
_ang

_ang

回答于2022-06-28 11:12

rsync+inotify 可以实现实时同步目录

评论0 赞同0
  •  加载中...

相关问题

最新活动

您已邀请0人回答 查看邀请

我的邀请列表

  • 擅长该话题
  • 回答过该话题
  • 我关注的人
向帮助了您的网友说句感谢的话吧!
付费偷看金额在0.1-10元之间
<