linux远程备份工具Rsync

       Rsync(remote sync)是类unix系统下的远程数据镜像备份工具,具有如下特性:

   ● 可以镜像保存整个目录树和文件系统。
   ● 可以很容易做到保持原来文件的权限、时间、软硬链接等等。
   ● 无须特殊权限即可安装。
   ● 优化的流程,文件传输效率高。
   ● 支持匿名传输

    Rsync 安装
    安装环境:RedHat Enterprise Linux AS4
    所需软件:rsync-3.0.8.tar.gz
    安装路径:/usr/local/rsync
    下载地址:http://rsync.samba.org/ftp/rsync/src/

    安装过程:
    tar xvzf rsync-2.6.7.tar.gz
    cd rsync-2.6.7
    ./configure --prefix=/usr/local/rsync   //指定rsync工具的安装路径
    make
    make install

   下面开始编辑Rsync工具的配置文件Rsyncd.conf,默认安装时没有,需要手工创建。我们在/etc目录下新建rsyncd.conf文档。如下:vi /etc/rsyncd.conf

#全局选项
strict modes =yes                              #是否检查口令文件的权限
port = 873                                     #默认端口873
log file = /var/log/rsyncd.log                 #日志记录文件

pid file = /usr/local/rsync/rsyncd.pid         #运行进程的ID

#模块选项
[test]                                         # 这里是认证的模块名,在client端需要指定
max connections = 5                            #客户端最大连接数,默认0(没限制)
uid = livedoorcn                               #指定该模块传输文件时守护进程应该具有的uid
gid = livedoorcn                               #指定该模块传输文件时守护进程应该具有的gid
path = /home/rsync_test                        # 需要做备份的目录
ignore errors                                  # 可以忽略一些无关的IO错误
read only = no                                 #no客户端可上传文件,yes只读
write only = no                                #no客户端可下载文件,yes不能下载
hosts allow = *                                #充许任何主机连接
hosts deny = 10.5.3.77                         #禁止指定的主机连接
auth users = livedoorcn                        # 认证的用户名,如果没有这行,则表明是匿名
secrets file = /usr/local/rsync/rsyncd.scrt    # 指定认证口令文件位置

保存退出,下一步需要指定rsync的密码文件。

在客户端新建密码文件 vi /usr/local/rsync/rsyncd.scrt

livedoorin:mzl

保存退出。

Rsync 的启动
 rsync 的启动方式有多种,我们在这里介绍以下几种:
● 守护进程方式:
/usr/local/rsync/bin/rsync --daemon
● inetd方式:
在/etc/services中加入:
rsync           873/tcp
然后在/etc/inetd.conf中加入:
rsync   stream  tcp     nowait  root   /usr/local/bin/rsync rsyncd --daemon

验证启动是否成功

[root@localhost bin]# netstat -an | grep 873
tcp        0      0 0.0.0.0:873                 0.0.0.0:*                   LISTEN     
tcp        0      0 :::873                      :::*                        LISTEN

至此,Rsync工具在Linux系统上安装完毕,下面进行调试:

实例演示
cd /usr/local/rsync/bin

本地文件同步

[root@localhost bin]# rsync -azvr /txt/  /txt2/      #txt文件夹和txt2文件夹内容进行同步
building file list ... done

sent 105 bytes  received 20 bytes  250.00 bytes/sec
total size is 3409  speedup is 27.27

远程下载文件
./rsync -vzrtopg --progress --delete
[email protected]::test /tmp/rsync

远程上传文件
./rsync -vzrtopg --progress --delete /tmp/rsync 
[email protected]::test 

Rsync 同步参数说明
-v是verbose

-z是压缩

-r是recursive,

-p 表示保持文件原有权限

-t 保持文件原有时间

-g 保持文件原有用户组

你可能感兴趣的:(linux,备份,职场,rsync,休闲)