rsync+ssh

rsync是类unix系统下的数据镜像备份工具,从软件的命名上就可以看出来了——remote sync。它的特性如下:

1、可以镜像保存整个目录树和文件系统。
2、可以很容易做到保持原来文件的权限、时间、软硬链接等等。
3、无须特殊权限即可安装。
4、优化的流程,文件传输效率高。
5、可以使用rcp、ssh等方式来传输文件,当然也可以通过直接的socket连接。
6、支持匿名传输。

在使用 rsync 进行远程同步时,可以使用两种方式:远程 Shell 方式(建议使用 ssh,用户验证由 ssh 负责)和 C/S 方式(即客户连接远程 rsync 服务器,用户验证由 rsync 服务器负责)。
无论本地同步目录还是远程同步数据,首次运行时将会把全部文件拷贝一次,以后再运行时将只拷贝有变化的文件(对于新文件)或文件的变化部分(对于原有文件)。

rsync+ssh
在常驻模式(daemon mode)下,rsync默认监听TCP端口873。SSH情况下,rsync用户端执行程式必须同时在本地和远程机器上安装。

rsync 在首次复制时没有速度优势,速度不如 tar,因此当数据量很大时您可以考虑先使用 tar 进行首次复制,然后再使用 rsync 进行数据同步。

另外,无法实现实时更新,如果想实现实时更新rsync需要借助lsyncd工具


增量备份
rsync -av /src_dir/ user@IP_Addres:/dest_dir/
        A-->B 同步  本地到远端

rsync -av user@IP_Addres:/src_dir/  /dest_dir/
        B-->A 同步   远端到本地

镜像备份
rsync -av --delete /src_dir/ user@IP_Addres:/dest_dir/
        A-->B 同步  本地到远端

rsync -av --delete user@IP_Addres:/src_dir/  /dest_dir/
        B-->A 同步  远端到本地

举例:
-----------------------常规增量备份-------------------------
A:
[root@server www]# ls
a  b  c  d
[root@server www]# rsync -av /www/ root@10.1.1.95:/www/
root@10.1.1.95's password:
building file list ... done
./
a
b
c
d

sent 262 bytes  received 114 bytes  107.43 bytes/sec
total size is 0  speedup is 0.00
[root@server www]#

B:
[root@localhost www]# ls   //发现同步成功
a  b  c  d
[root@localhost www]#
-----------------------常规增量备份-------------------------

-----------------------镜像备份-------------------------
A:
[root@server www]# rm -rf *
[root@server www]# rsync -av /www/ root@10.1.1.95:/www/
root@10.1.1.95's password:
building file list ... done

sent 52 bytes  received 20 bytes  28.80 bytes/sec
total size is 0  speedup is 0.00
[root@server www]#

B:
[root@localhost www]# ls   //删除同步端的文件同步的另外一端在增量备份中不受影响
a  b  c  d
[root@localhost www]#

A:
[root@server www]# rsync -av --delete /www/ root@10.1.1.95:/www/
root@10.1.1.95's password:
building file list ... done
deleting d
deleting c
deleting b
deleting a
./

sent 62 bytes  received 26 bytes  35.20 bytes/sec
total size is 0  speedup is 0.00
[root@server www]#

B:
[root@localhost www]# ls   //使用增量备份后就会删除同步另一端的文件保持两者相同,即镜像同步
[root@localhost www]#
-----------------------镜像备份-------------------------
posted @ 2012-08-07 15:29  枯木-Linux  阅读(421)  评论(0编辑  收藏  举报