#sync #cli #scp

bin+lib hbx

增量同步工具

1 个不稳定版本

0.1.2 2023年7月2日

#8#scp

Apache-2.0 协议

26KB
628 行(不含注释)

hash box

用于增量同步文件,节省磁盘空间

使用场景

  • 服务器中有大量只读工具包需要同步到其他服务器
  • 充分利用内网带宽进行同步

原理

有两个只读目录a和b,其中有大部分文件相同。通过计算a和b目录中文件的md5值,可以判断两个目录中有哪些文件相同,相同文件可以只存储一份。

两个目录中的文件以该文件的md5值为名称存储,并记录目录的目录结构和文件md5的映射关系。

服务器和服务器间同步文件时,通过同步md5文件和目录信息文件来加快同步,同步到新机器上后通过硬连接的方式即可恢复a和b目录

安装

cargo install --path ./

用法

hbx --help

交叉编译

可以利用cross-rs进行交叉编译解决服务器不同glibc兼容问题

待办事项

  • P2P方式批量同步

许可证

Apache-2.0 协议

依赖

~10–27MB
~401K SLoC