linux 目录同步 http,使用Unison 同步文件

导读

Unison是一个跨平台的文件同步工具,它在同步计算机或存储设备之间的数据时非常有用。

环境

Centos7(1): 192.168.43.165

Centos7(2): 192.168.43.166

安装Unison

在两个系统中都要安装epel源,然后都要安装unison:

[root@192_168_43_165 ~]# yum -y install epel-release

[root@192_168_43_165 ~]# yum makecache

[root@192_168_43_165 ~]# yum -y install unison

两台操作系统配置ssh免密登录

[root@192_168_43_165 ~]# ssh-keygen

91a9e8562059968f5a4c32e76cf18bee.png

[root@192_168_43_165 ~]# ssh-copy-id root@192.168.43.166

[root@192_168_43_165 ~]# cd ~/.ssh

[root@192_168_43_165 .ssh]# cat id_rsa.pub > authorized_keys

[root@192_168_43_165 .ssh]# scp id_rsa root@192.168.43.166:/root/.ssh

如何使用Unison

Unison用于将目录中的一组文件同步到结构相似的另一个位置,该位置可以是本地主机或远程主机。

本地文件同步

在root家目录下面创建两个文件夹,一个是"Files",一个是"Backup"。Files里面创建文件,同步到Backup里面。

[root@192_168_43_165 ~]# mkdir Files Backup

[root@192_168_43_165 ~]# cd Files/

[root@192_168_43_165 Files]# touch file{1..10}.txt

44a0e7ae166d28f881847e077e1ede8f.png

现在运行unison命令,同步文件到Backup文件夹里面。

[root@192_168_43_165 ~]# unison -batch /root/Files /root/Backup

cde28635378b7f376a1f463fbdca2850.png

查看一下Backup文件夹,发现文件同步过来了。

e22e1dde30766a31a7d151d939b6f0d1.png

现在修改一下Backup文件夹里面的某个文件,然后再添加已给文件,最后执行一下刚才的命令,看看是否会同步到Files文件夹中:

[root@192_168_43_165 Backup]# echo "testtesttest" > file2.txt

[root@192_168_43_165 Backup]# echo 'hello world!' > index.html

a07f6909ae16fb86cbd5c709be93f49a.png

执行unison命令:

[root@192_168_43_165 ~]# unison -batch /root/Files /root/Backup

e1e83024b2da2557db0c19fc4c026f79.png

可以看到Backup文件夹里面的内容同步到Files里面了

911f792b47e64b40e216390ff965bcdd.png

远程文件同步

如果需要进行远程文件同步,必须在本地和远程服务器上安装Unison。

下面现在两台服务器的root目录下面创建两个文件夹,为同步文件使用的。

# 在第一台服务器创建文件夹。

[root@192_168_43_165 ~]# mkdir Files

# 在第二台服务器创建文件夹。

[root@192_168_43_166 ~]# mkdir Files

下面使用-testServer选项测试本地和远程服务器之间的连通性。

[root@192_168_43_165 ~]# unison -testServer /root/Files ssh://root@192.168.43.166//root/Files

Contacting server...

Connected [//192_168_43_165//root/Files -> //192_168_43_166//root/Files]

3174d5517a2c69ea80e9871063504661.png

连通性没问题之后,我们就可以执行命令同步文件了:

[root@192_168_43_165 ~]# unison -batch /root/Files ssh://root@192.168.43.166//root/Files

379d2ab502cdbafbe2c97fee114ffcf2.png

7b99df04a6cc8e1155ef236968b5d9e8.png

查看第二台服务器上面的/root/Files文件夹,文件是否同步过来了:

db96656cdcd4cf1bbd58758a97d95856.png

总结

Unison非常易于使用,不需要额外的精力。它可以在GUI以及命令行实用程序中使用任何一种方式进行自定义同步。如果需要使用图形界面,可以在桌面环境执行unison-gtk-2.40打开图形界面进行配置。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值