資安

使用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
使用Unison 同步文件使用Unison 同步文件

[root@192_168_43_165 ~]# ssh-copy-id [email protected]
[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 [email protected]:/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
使用Unison 同步文件使用Unison 同步文件
現在運行unison命令,同步文件到Backup文件夾裡面。

[root@192_168_43_165 ~]# unison -batch /root/Files /root/Backup
使用Unison 同步文件使用Unison 同步文件
查看一下Backup文件夾,發現文件同步過來了。
使用Unison 同步文件使用Unison 同步文件
現在修改一下Backup文件夾裡面的某個文件,然後再添加已給文件,最後執行一下剛才的命令,看看是否會同步到Files文件夾中:

[root@192_168_43_165 Backup]# echo "testtesttest" > file2.txt
[root@192_168_43_165 Backup]# echo 'hello world!' > index.html
使用Unison 同步文件使用Unison 同步文件
執行unison命令:

[root@192_168_43_165 ~]# unison -batch /root/Files /root/Backup
使用Unison 同步文件使用Unison 同步文件
可以看到Backup文件夾裡面的內容同步到Files裡面了
使用Unison 同步文件使用Unison 同步文件

遠程文件同步
如果需要進行遠程文件同步,必須在本地和遠程服務器上安裝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://[email protected]//root/Files
Contacting server...
Connected [//192_168_43_165//root/Files -> //192_168_43_166//root/Files]
使用Unison 同步文件使用Unison 同步文件
連通性沒問題之後,我們就可以執行命令同步文件了:

[root@192_168_43_165 ~]# unison -batch /root/Files ssh://[email protected]//root/Files
使用Unison 同步文件使用Unison 同步文件

使用Unison 同步文件使用Unison 同步文件
查看第二臺服務器上面的/root/Files文件夾,文件是否同步過來了:
使用Unison 同步文件使用Unison 同步文件

總結
Unison非常易於使用,不需要額外的精力。它可以在GUI以及命令行實用程序中使用任何一種方式進行自定義同步。如果需要使用圖形界面,可以在桌面環境執行unison-gtk-2.40打開圖形界面進行配置。

Leave a Reply

Your email address will not be published. Required fields are marked *