手机版
你好,游客 登录 注册
背景:
阅读新闻

rsync 安装 配置 实例

[日期:2013-05-14] 来源:51cto  作者:melodyfeng [字体: ]

一、介绍: 不想看可以跳过

  Rsync是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。Rsync本来是用以取代rcp的一个工具,它当前由 rsync.samba.org维护。Rsync使用所谓的“Rsync演算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快。运行Rsync server的机器也叫backup server,一个Rsync server可同时备份多个client的数据;也可以多个Rsync server备份一个client的数据。

  Rsync可以搭配rsh或ssh甚至使用daemon模式。Rsync server会打开一个873的服务通道(port),等待对方Rsync连接。连接时,Rsync server会检查口令是否相符,若通过口令查核,则可以开始进行文件传输。第一次连通完成时,会把整份文件传输一次,下一次就只传送二个文件之间不同的部份。

  Rsync支持大多数的类Unix系统,无论是Linux、Solaris还是BSD上都经过了良好的测试。此外,它在windows平台下也有相应的版本,比较知名的有cwRsync和Sync2NAS。

  Rsync的基本特点如下:

  1.可以镜像保存整个目录树和文件系统;

  2.可以很容易做到保持原来文件的权限、时间、软硬链接等;

  3.无须特殊权限即可安装;

  4.优化的流程,文件传输效率高;

  5.可以使用rcp、ssh等方式来传输文件,当然也可以通过直接的socket连接;

6.支持匿名传输。

二、安装服务端客户端

实验使用的系统为:CentOS 6.2 32位 (192.168.5.180{server}  192.168.5.181{client} )

①:检查下是否系统已经安装了

这里已经安装成功了。

如果没有安装,可以到 http://rsync.samba.org/ftp/rsync/ 下载

然后编译安装下

# tar -zxvf            rsync-3.0.9.tar.gz

#  ./configure

# make && make install

②: 服务端配置文件的配置

可以看到rysnc服务是关闭的(disable = yes),这里把它开启,把disable的值改为no。

③:创建rsync服务器配置文件/etc/rsyncd.conf

[root@hyj etc]# vim /etc/rsyncd.conf

uid = root

gid = root

port = 873 # 指定运行端口,默认是873,您可以自己指定

hosts allow = 192.168.05.181 #允许访问的客户机

#hosts deny = 0.0.0.0/32 #拒绝访问的

use chroot = no

max connections = 1

timeout=

##下面这些绿色文件是安装完RSYNC服务后自动生成的文件,当然也可以手动配置到指定路径

pid file = /var/run/rsyncd.pid ##pid文件的存放

lock file = /var/run/rsync.lock ##锁文件的存放位置

log file = /var/log/rsyncd.log ##日志记录文件的存放

#motd file = /etc/rsyncd.motd #欢迎

##上面这段是全局配置,下面的模块可以有

[test] ##模块名字,自己命名

path = /home/hyj/workspace/test  #指定文件目录所在位置,这是必须指定

comment = rsync files  ##注释

ignore errors  ##忽略IO

read only = yes

list = no  ##是否把rsync服务器上提供同步数据的目录显示

## 下面这一行,同步验证时用的账号,如果没有这项就是匿名同步,client同步时不用用户名也能同步。

auth users = rsync

secrets file = /etc/rsync.passwd  ## 指定认证文件

④:创建认证文件

[]# vim /etc/rsync.passwd

(1) :  fynsd:701123 ##用户名:密码。注意这个不是系统用户,只是rsync用户。所以不用useradd。

(名字随便写,只要和上边配置文件里的“auth users”参数一致即可),格式(一行一个用户)

账号:密码

(2)、把密码文件的权限改成600

[root@hyj etc]# chmod 600 /etc/rsync.passwd  ##只能所有者可读,否则报错

wu  ⑤:启动rsync 服务

#/usr/bin/rsync --daemon

#lsof -i :873

COMMAND  PID USER  FD  TYPE  DEVICE SIZE/OFF NODE NAME

rsync  28651 root    4u  IPv4 1328410      0t0  TCP *:rsync (LISTEN)

rsync  28651 root    5u  IPv6 1328411      0t0  TCP *:rsync (LISTEN) 设置下开机自动启动

⑥: 客户端安装跟服务端一样(只需要创建下配置文件 /etc/rsyncd.conf配置文件)

检查端口启动情况:

⑦:实验

Rsync的命令格式可以为以下六种:

  rsync [OPTION]... SRC DEST

  rsync [OPTION]... SRC [USER@]HOST:DEST

  rsync [OPTION]... [USER@]HOST:SRC DEST

  rsync [OPTION]... [USER@]HOST::SRC DEST

  rsync [OPTION]... SRC [USER@]HOST::DEST

  rsync [OPTION]... rsync://[USER@]HOST[:PORT]/SRC [DEST]

rsync [OPTION]... [USER@]HOST::SRC  DEST

从远程rsync服务器中拷贝文件到本地机。当SRC路径信息包含"::"分隔符时启动该模式。

如:rsync -av fynsd@192.168.5.180::test /tmp

rsync [OPTION]... SRC  [USER@]HOST::DEST

从本地机器拷贝文件到远程rsync服务器中。当DST路径信息包含"::"分隔符时启动该模式。

如:rsync -av /tmp    fynsd@192.168.5.181::test

进行验证。上面验证的时候需要输入密码;此时可以使用下面的命令来实现

#/usr/bin/rsync -vzrtopg --delete --progress fynsd@192.5.180::test /usr/local/share/rsync_backup --password-file=/etc/rsync.pass

上面这个命令行中-vzrtopg里的v是verbose,z是压缩,r是recursive,topg都是保持文件原有属性如属主、时间的参数(也可以用直接用a来代替rtopg,a为--archive归档模式,表示以递归方式传输文件,并保持所有文件属性,等于-rlptgoD)。--progress是指显示出详细的进度情况,--delete是指如果服务器端删除了这一文件,那么客户端也相应把文件删除,保持真正的一致。

基本功能已经可以实现,详细的还需要进一步的配置。如有不足之处,望大家指出,一起学习!!!

linux
相关资讯       rsync  rsync配置  rsync安装 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款