rsync备份

  远程备份rsync的使用

 /*rsync不仅可以远程同步数据,还可以本地同步数据(类似于cp),但不同于cp的是的是rsync不会像cp一样覆盖以前的数据(如果数据已经存在),

 它会先判断已经存在的数据和新数据有什么不一样,只有不同时才会把不同的部分覆盖掉,也就是rsync支持增量备份。如果linux系统中灭有rsync命令,

 可以用yum install -y rsync安装!*/

 rsync常用的选项

 -a:归档模式,表示以归档方式传输文件,并保持所有属性,等同于-rpltgoD,-a选项后面可以跟上一个-no-OPTION这个表示关闭-rpltgoD中的某一

 个。eg:-a--no-l等同于rptgoD!

 -r:对子目录以递归处理,主要针对目录来说的,如果单独传一个文件不需要加-r,但若传输的是目录则必须加-r

 -v:打印一些信息出来,比如速率,文件数量等

 -l:保留软连接

 -L:向对待常规文件一样处理软链接,如果是SRC中有软连接,则加上该选项后将会把软连接指向的目标文件拷贝到DST

 -p:保持文件权限

 -o:保持文件属主信息

 -g:保持文件属组信息

 -D:保险文件设备信息

 -t:保持文件时间信息

 --delete:删除那些DST中SRC没有的文件

 --exclude=PATTERN指定不需要传输的文件,等号后面跟文件名!

 --progress在同步的过程中可以看到同步进程的状态,比如统计要同步的文件数量,同步的文件传输速度等等!

 -u:加上这个选项会把DST中比SRC还新的文件排除掉,不会覆盖!

 //rsync同步之ssh隧道方式,用到了ssh必须安装openssh-clients包 

/把本地的文件推到远方电脑上

 [root@wang ~]# rsync -avP test.c [email protected]:/home/wang/22/      //同步test.c文件到192.168.1.114上 
reverse mapping checking getaddrinfo for bogon [192.168.1.114] failed - POSSIBLE BREAK-IN ATTEMPT!
[email protected]'s password:                                                //需要输入192.168.1.114中wang用户的密码 
sending incremental file list
test.c
           9 100%    0.00kB/s    0:00:00 (xfer#1, to-check=0/1)

sent 83 bytes  received 31 bytes  12.00 bytes/sec
total size is 9  speedup is 0.08
/*远程主机上同步后的结果 
[wang@localhost ~]$ ls                        
22
[wang@localhost ~]$ cd 22
[wang@localhost 22]$ ls
test.c
[wang@localhost 22]$                    */

//把远方的文件拉到本地

[root@wangxiangzhe ~]# rm test.c           //删除本地文件中的test.c文件 
rm:是否删除普通文件 "test.c"?y
[root@wangxiangzhe ~]# ls                 //确认是否删除 
anaconda-ks.cfg  install.log.syslog  mnt   公共的  视频  文档  音乐
install.log      lianxi              wang  模板    图片  下载  桌面
[root@wangxiangzhe ~]# rsync -avP [email protected]:/home/wang/22/test.c   /root/      //把远方的文件拉到本地 
reverse mapping checking getaddrinfo for bogon [192.168.1.114] failed - POSSIBLE BREAK-IN ATTEMPT!
[email protected]'s password:
receiving incremental file list
test.c
           9 100%    8.79kB/s    0:00:00 (xfer#1, to-check=0/1)

sent 30 bytes  received 101 bytes  4.76 bytes/sec
total size is 9  speedup is 0.07
 [root@wangxiangzhe ~]# ls                        //可以发现test.c文件已经在本地 
anaconda-ks.cfg  install.log.syslog  mnt     wang    模板  图片  下载  桌面
install.log      lianxi              test.c  公共的  视频  文档  音乐

/注意:rync默认是通过22端口的,但当22端口不能使用时我们需要作如下处理

[root@wangxiangzhe ~]# rsync -avP -e " ssh -p 10022 "[email protected]:/home/wang/22/test.c   /root/  /指定要用的端口号


你可能感兴趣的:(rsync)