【Linux Rsync3.0 实用版安装】
*安装环境:Linux CentoS 5.3
*安装目的:Linux 各服务器之间同步文件,保持文件的一致性,也可以是群集服务器之间的同步方案。本文讲求简单,易操作,可行性。为初学者提供帮助。
一、下载rsync版本;
下载当前最新稳定版本:(虽然系统已经安装,我们这里使用下载编译的:)
cd /usr/src 下:
wget http://rsync.samba.org/ftp/rsync/src/rsync-3.0.7.tar.gz
二、解压rsync;
tar xzf rsync-3.0.7.tar.gz && cd rsync-3.0.7 && ./configure --prefix=/usr/local/rsync &&make &&make install (至此rsync安装完毕)
三、安装配置rsync;
默认安装完,/etc下没有rsyncd.conf这个文件,不过我们可以新建:
输入以下内容:
[root@localhost ~]# cat /etc/rsyncd.conf
#########[global] 全局配置
uid = nobody
gid = nobody
use chroot = no
max connections = 30
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsyncd.lock
log file = /var/log/rsyncd.log
transfer logging = yes
log format = %t %a %m %f %b
syslog facility = local3
timeout = 300
[www]
read only = yes
path = /usr/local/webapps
comment = www
auth users = www
secrets file = /etc/rsync.pas
hosts allow = 192.168.0.10,192.168.0.20
以上是rsyncd.conf文件的内容,下面是注释*
[www] # 要同步的模块名
path = /usr/local/webapps #要同步的目录
comment = www #这个名名称无所谓,最后模块名一直)
read only = no # no客户端可上传文件,yes只读
write only = no # no客户端可下载文件,yes不能下载
#list = yes #是否提供资源列表
auth users = www #登陆系统使用的用户名,没有默认为匿名。
hosts allow = 192.168.0.10,192.168.0.20 #本模块允许通过的IP地址
hosts deny = 192.168.1.4 #禁止主机IP
secrets file=/etc/rsync.pas #密码文件存放的位置【更多参考请访问:http://wuyizhaizhu.blog.163.com/blog/static/1151518692010725381632/ 】
四、设置rsync服务器端同步密钥;
vi /etc/rsync.pas
username:userpasswd (表示用户名:密码)
我的rsync.pas如下:
test:test999
保存完毕,chmod 600 /etc/rsync.pas 更改权限。
五、rsync启动守护进程;
默认端口为tcp 873 ;如图:
六、服务器端部署完毕,设置客户端;
既然服务端设置了密钥,可以端的密钥就得与服务器端一致:
vi /etc/rsync.pas 输入服务器端密码:
test999
保存即可开始同步:执行如下语句
rsync -aP --delete [email protected]::www /usr/local/webapps --password-file=/etc/rsync.pas 这里的【/usr/local/webapps 是客户端的目录,不是服务器的目录,也可以改成其他你需要同步的目录。】如果报错如下:
解决办法: chmod 600 /etc/rsync.pas (密码文件不能让其他访问 O(∩_∩)O~)
【注意* @前面的www是认证的用户名;100后面的www是rsync服务器端的模块名称】
ps -ef |grep rsync
root 6626 1 0 13:56 ? 00:00:00 /usr/local/rsync/bin/rsync --daemon
root 6636 2641 0 13:58 pts/0 00:00:00 grep rsync
如果想重启的话必须得删除:/var/run/rsync.pid如下方式:
kill -9 6626 ;rm -rf /var/run/rsync* ;/usr/local/rsync/bin/rsync --daemon