当前位置: 首页 > 知识 >正文

linux/centos rsync安装配置教程(实测通过)

一、服务器配置:

# yum -y install xinetd

# vi /etc/xinetd.d/rsync

放入下面的代码

service rsync

{

disable=yes

socket_type=stream

wait=no

user=root

server=/usr/bin/rsync

server _ args=daemon

log_on_failure +=USERID

}

Disabled in=Yes to Disabled=No.

然后启动xinetd。

# /etc/init.d/xinetd start或服务xinetd重新启动

注意:如果服务器上安装了防火墙,记得打开端口。默认端口是873。

# telnet 127.0.0.1 873

Trying 127.0.0.1.

telnet: connect to address 127.0.0.1: Connection refused

# iptables -A INPUT -s 192.168.0.0/255.255.255.0 -p tcp -m tcp --dport 873 -j ACCEPT

# iptables -A INPUT -p tcp -m tcp --dport 873 -j DROP

# vi /etc/rsyncd.conf(如果该文件不存在,请自己创建)

#Global Settings

Uid=root #作为什么身份运行rsync?

gid=root

Use chroot=no # Do not use Croute.

最大连接数=20 #最大连接数

secrets file=/etc/rsyncd . secrets #密码文件位置、认证文件设置、用户名和密码设置。

Log file=/var/log/rsyncd.log #指定rsync的日志文件,但不将日志发送到syslog。

pid file=/var/run/rsyncd.pid #指定rsync的pid文件

Lock file=/var/run/rsync.lock # Specifies the lock file that supports the maximum number of connections parameter. The default value is/var/run/rsyncd.lock.

comment=hello world

#motd file=/etc/rsyncd.motd #欢迎信息文件名和存储位置(此文件不可用,可自行添加)。

[backup] #这里是认证模块的名称,需要在客户端指定。

Path=/titan24/www/repos #要镜像的目录。

Auth users=rsync #授权帐户。认证的用户名,如果没有这样的线,说明是匿名的,多个用户用它来分隔。

Read only=NO # yes只读值NO表示可读写模式,数据恢复使用NO。

主机允许=192.168.3.128 #允许的服务器IP。

Host Rejection=* # Blacklist

List=true #允许列文件

# ignorerrors #可以忽略一些无关的IO错误。

#exclude=cache/111/cache/222/#忽略的目录

# vi /etc/rsyncd.secrets(设置用于访问(身份验证)的用户名和密码)

Rsync: 111111 #用户名:密码

给文件正确的权限

# chown root:root /etc/rsyncd.secrets

# chmod 600 /etc/rsyncd.secrets#(必须是600)

二、client 端进行同步

客户端默认好像已经装了rsync,没有的话装下:

# yum -y install rsync

执行异步同步操作:

/usr/bin/rsync -avz --progressrsync@192.168.3.191:backup/www

# crontab -e #(可以定时每三分钟同步一次文件)

*/3* * * * rsync -avz --progressrsync@192.168.3.191:backup/www

下面这个命令完整一点:

#vi /etc/rsyncd.pas

加入密码

rsyncofpass

注意,客户端的密码文件只需要密码,而不需要用户名!

更改文件权限:

#chmod 0600 /etc/rsyncd.pas

#rsync -vzrtopgu --progress --delete --password-file=/etc/rsyncd.pas rsync_user@192.168.0.2:rsync_module_name1 /www/

这个命令行中-vzrtopg里的v是verbose,

z是压缩传输,

r是recursive,

topg都是保持文件原有属性如属主、时间的参数。

u是只同步已经更新的文件,避免没有更新的文件被重复更新一次,不过要注意两者机器的时钟的同步。

progress是指显示出详细的进度情况,

delete是指如果服务器端删除了这一文件,那么客户端也相应把文件删除,保持真正的一致。

后面的rsync_user@192.168.0.2:rsync_module_name1中,之后的rsync_module_name1是模块名,

也就是在/etc/rsyncd.conf中自定义的名称,rsync_user是指定模块中指定的可以同步的用户名。

最后的/www是备份到本地的目录名。

在这里面,还可以用-e ssh的参数建立起加密的连接。

可以用password-file=/password/path/file来指定密码文件,这样就可以在脚本中使用而无需交互式地输入验证密码了,这里需要注意的是这份密码文件权限属性要设得只有属主可读。

#/usr/local/rsync/bin/rsync -vzrtopg progress deletersync_user@192.168.0.2:rsync_module_name1/tmp/

Password:

或者你也可以制定password文件

由于需要系统crontab执行,所以这里采用读入密码文件的方式,

这个时候就成功了。

请继续浏览下一页:同步命令说明

---------------------------------同步命令说明:---------------------------------

1 显示目录内容

命令

——

a) rsync

b) rsync -r

c) rsync jack@192.168.0.1:

d) rsync ssh_user@192.168.0.1:

命令说明

———

a) 显示目录内容(第一层)

b) 递归显示目录内容

c) 显示远程主机目录内容

*注1:端口模式, 基于rsync用户的身份验证

*注2:rsync server上的目录必须具有xx7的权限.

d) 查看远程主机目录内容

*注1:remote shell模式, 通过ssh连接的基于系统本地用户的身份验证

*注2:这里只使用了一个冒号(:),同时用户名是远程主机的ssh 用户,密码也是ssh用户对应的密码。

*注3:使用””,则列出文件夹本身的信息。若要列出文件夹内容,应使用”/”。

参数说明

———

-r 对目录进行递归操作

2 本地目录之间同步

命令

——

a) rsync -av progress/*** 注意(/) ***

b) rsync -av progress

c) rsync -avu progress delete /

d) rsync -av progress temp-dir=/tmp /

命令说明

———

a) 同步src-dir目录下所有文件到dst-dir目录下

b) 同步src-dir目录下所有文件到dst-dir/src-dir目录下

c) 对src-dir目录内容向dst-dir目录下进行差异更新,有增加/更新则添加替换,有减少则对其删减

d) 比a)多了temp-dir=/tmp,即指定/tmp为临时交换区,这样可以避免因目标目录空间不够引起的无法同步文件的错误。

参数说明

———

-a 相当于-rlptgoD 的集合

-u 等同于update,在目标文件比源文件新的情况下不更新

-v 显示同步的文件

progress 显示文件同步时的百分比进度、传输速率

delete 删除目标目录中多于源目录的文件

3 异地主机之间同步

命令

——

a) rsync -avz progress jack@192.168.0.1:/

b) rsync -avz progress jack@192.168.0.1:/password-file=/home/jack/rsync.jack

c) rsync -avuz progress delete jack@192.168.0.1:/password-file=/home/jack/rsync.jack

d) rsync -avz progress jack@192.168.0.1:/

命令说明

———

a) 同步本地目录的内容到远程主机192.168.0.1的目录下,jack是rsync数据库用户(参见3. /etc/rsync.secrets)

b) 通过自动读取用户密码而实现非交互登录文件同步

c) 较b)多了-u和delete

d) 同步远程主机内容到本地目录

相关文章:
  • 5月9日基金净值:工银聚润6个月持有混合A最新净值0.9762,跌0.37%
  • 7月6日基金净值:富国可转债A最新净值2.04,涨0.05%
  • 3月29日基金净值:长信金利趋势混合A最新净值0.4444,涨0.5%_基金频道_证券之星
  • 6月30日基金净值:中加消费优选混合A最新净值0.9706,涨0.3%
  • 占比30%!这类产品成发行热点
  • 6月5日基金净值:交银内需增长一年持有混合最新净值0.8361,跌0.75%
  • 4月14日基金净值:信澳智远三年持有期混合A最新净值0.8368,涨1.41%
  • 4月7日基金净值:东方红创新趋势混合最新净值0.6916,涨0.39%_基金频道_证券之星
  • 6月29日基金净值:信诚中证800有色指数(LOF)A最新净值1.476,跌0.72%
  • 5月26日基金净值:景顺长城内需增长混合最新净值9.342,跌0.42%