2.可以很容易做到保持原來文件的權限、時間、軟硬鏈接等;
3.無須特殊權限即可安裝;
4.優化的流程,文件傳輸效率高;
5.可以使用rcp、ssh等方式來傳輸文件,當然也可以通過直接的socket連接;
6.支持匿名傳輸。
在linux上,如果我們想要遠程拷貝文件,我么可以使用scp命令,scp也是一個非常簡單輕巧的命令,那么今天又與散仙所說rsync有什么區別呢? 其實主要的區別在文章標題上就體現出來了,rsync的同步僅僅對增量的文件會實現拷貝備份,不會對已有的沒有改變的文件做備份,什么意思呢?
散仙舉例子如下: A服務器上,有個a文件夾里面有個a.txt文件,第一次我們在B服務器上對A服務器上的a文件夾執行備份,那么會把a.txt文件拷貝到B服務器上的某個文件夾下,現在我們把A服務器上的a文件夾下新增一個b.txt,再次執行同步,就會發現這次僅僅同步了b文件,原來的a文件沒有變化,如果我們改變了A服務上的a或b文件的內容,那么再次同步時,就會把發生的改變的文件,也給同步過來,這就是與scp最大的不同,因為scp沒有這個功能。 如果沒有rsync組件,可以先執行yum install rsync命令進行安裝,散仙所用的rsync命令,無須配置任何conf文件,只需要用命令行就可以了,非常簡潔。
測試機器IP如下:
序號
IP地址
簡稱
1
192.168.46.32
A機器
2
192.168.46.11
B機器
先看下A機器上,logs文件夾下的文件:
[root@h2 logs]# ll
總用量 4
-rw-r--r-- 1 root root 3 8月 30 02:29 a.txt [root@h2 logs]#
然后,我們在B機器上,執行同步命令如下:
[root@h3 logs]# ll
總用量 0
[root@h3 logs]# rsync -av --delete 192.168.46.32:/root/logs /root/logg/ receiving incremental file list logs/ logs/a.txt
sent 34 bytes received 107 bytes 282.00 bytes/sec total size is 3 speedup is 0.02 [root@h3 logs]# ll
總用量 4
-rw-r--r-- 1 root root 3 8月 30 02:29 a.txt [root@h3 logs]#
然后,我們在A機器上的log文件下,新增一個b.txt,再測試同步命令:
[root@h3 logs]# rsync -av --delete 192.168.46.32:/root/logs /root/logg/ receiving incremental file list logs/ logs/b.txt sent 34 bytes received 125 bytes 318.00 bytes/sec total size is 5 speedup is 0.03 [root@h3 logs]#
通過日志,我們發現如果新增一個使用rsync僅僅同步了新增的文件: 現在我們在A服務器上的log文件夾下的a.txt里面新增一行內容,再次執行同步命令:
[root@h3 logs]# rsync -av --delete 192.168.46.32:/root/logs /root/logg/ receiving incremental file list logs/a.txt sent 37 bytes received 128 bytes 330.00 bytes/sec total size is 9 speedup is 0.05 [root@h3 logs]#
我們發現rsync命令也能很好的識別出來 最后我們在來看下,同時改動,A服務器上的a和 b文件,一個新增一行,一個刪除一行,來測下增量:
[root@h3 logs]# rsync -av --delete 192.168.46.32:/root/logs /root/logg/ receiving incremental file list logs/ logs/a.txt logs/b.txt sent 65 bytes received 174 bytes 478.00 bytes/sec total size is 10 speedup is 0.04 [root@h3 logs]#
我們發現rsync也能很好的識別出來。 最后,我們在來看下,如何在B服務器上向A服務器上發送數據,注意,散仙剛在上面的演示,是從B服務器上下載A服務器上的數據,現在我們要演示的是如何在B服務上主動發送數據到A服務器上,原理一樣,都是以增量的方式的操作的,只不過寫IP的方式,變換了一下位置:
[root@h3 logs]# rsync -av --delete /root/logg/logs/b.txt 192.168.46.32:/root/ sending incremental file list b.txt sent 87 bytes received 37 bytes 248.00 bytes/sec total size is 10 speedup is 0.08 [root@h3 logs]#
希望本文所述對大家CentOS服務器維護有所幫助。
更多關于云服務器,域名注冊,虛擬主機的問題,請訪問三五互聯官網:m.shinetop.cn