Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1612058
  • 博文数量: 104
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 4631
  • 用 户 组: 普通用户
  • 注册时间: 2013-09-11 10:57
个人简介

欢迎关注:https://zhangdd.com

文章分类

全部博文(104)

文章存档

2018年(9)

2016年(4)

2015年(23)

2014年(54)

2013年(14)

分类: 系统运维

2014-03-27 15:16:12

RSYNC软件介绍:
rsync
是类unix系统下的数据镜像备份工具,从软件的命名上就可以看出来了——remote sync。它的特性如下:
可以镜像保存整个目录树和文件系统。
可以很容易做到保持原来文件的权限、时间、软硬链接等等。
无须特殊权限即可安装。
优化的流程,文件传输效率高。
可以使用rcpssh等方式来传输文件,当然也可以通过直接的socket连接。
支持匿名传输,以方便进行网站镜象。
必须在服务器AB上都安装rsync,其中A服务器上是以服务器模式运行rsync,而B上则以客户端方式运行rsync。这样在web服务器A

运行rsync守护进程,在B上定时运行客户程序来备份web服务器A上需要备份的内容中,因此本文开了两个虚拟机。

IP10.0.0.10作为服务器

IP10.0.0.12作为客户端。

======服务器端安装配置=======

1、安装rsync

yum install rsync –y

2vi /etc/xinetd.d/rsync

把原来的YES改成NO

service rsync
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/bin/rsync
server_args = --daemon
log_on_failure += USERID

}

3、随系统启动RSYNC

chkconfig rsync on

4、配置/etc/rsyncd.conf(需要手动生成)

rsyncd.conf的参数写在上边就是全局参数和写在模块里的就是模块参数

vi /etc/rsyncd.conf     #####注意://后面的文字是注释,写入配置文件时记得去掉,不然可能报错

#全局参数

uid = root //运行RSYNC守护进程的用户

gid = root //运行RSYNC守护进程的组

use chroot = no //不使用chroot

max connections = 45 // 最大连接数为5

strict modes =yes //是否检查口令文件的权限

port = 873 //默认端口873

#模块参数

[backup] //这里是认证的模块名,在client端需要指定

path = /web/   //需要做镜像的目录,不可缺少!

comment = backup for web//这个模块的注释信息

ignore errors //可以忽略一些无关的IO错误

read only = yes // 只读

list = no //不允许列文件

auth users = gao //认证的用户名,如果没有这行则表明是匿名,此用户与系统无关

secrets file = /etc/rsync.pas //密码和用户名对比表,密码文件自己生成

hosts allow = 10.0.0.12 //允许主机,只允许填IP,不允许填域名

hosts deny = 0.0.0.0/0 //禁止主机

#transfer logging = yes

#注释:下面这些绿色文件是安装完RSYNC服务后自动生成的文件

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

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

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

5、配置rsync密码(在上边的配置文件中已经写好路径) /etc/rsync.pas(名字随便写,只要和上边配置文件里的一致即可),格式(一行一个用户)

账号:密码

vi /etc/rsync.pas

加入:

rsync:123456

6、权限:因为rsync.pas存储了rsync服务的用户名和密码,所以非常重要。要将rsync.pas设置为root拥有, 且权限为600

cd /etc

chown root.root rsync.pas

chmod 600 rsync.pas

chmod 600 rsyncd.conf

8、让配置生效

service xinetd restart

9、启动rsync server

RSYNC服务端启动

/usr/bin/rsync rsyncd --daemon

10、加入rc.local

在各种操作系统中,rc文件存放位置不尽相同,可以修改使系统启动时把rsync --daemon加载进去。

vi /etc/rc.local

加入一行/usr/bin/rsync rsyncd --daemon

11、检查rsync

netstat -a | grep rsync

 

 

========客户端安装配置=========

1、安装rsync

yum install rsync  -y

1、设定密码

vi /etc/rsync.pas

123456

2、修改权限

cd /etc

chown root.root rsync.pas

chmod 600 rsync.pas

3client连接SERVER

SERVER端取文件

rsync -vzrtopg --progress –delete rsync@10.0.0.10::backup/backup/web --password-file=/etc/rsync.pas

#4、向SERVER端上传文件(这一步不用执行,如果执行,前面主机的/etc/rsyncd.conf文件的参数还要修改)

#rsync -vzrtopg --progress --password-file=/etc/rsync.pas /backup/web/rsync@10.0.0.10::backup

这个命令将把本地机器/web目录下的所有文件(含子目录)全部备份到RSYNC SERVER10.0.0.10)的backup模块的设定的备份目录下。

请注意如果路径结束后面带有"/",表示备份该目录下的东东,但不会创建该目录,如不带"/"则创建该目录。

RSYNC用法:

rsync [OPTION]... [USER@]HOST::SRC [DEST] #RSYNC SERVER备份文件到本地机器

rsync [OPTION]... SRC [SRC]... [USER@]HOST::DEST #从本地机器备份文件到RSYNC SERVER

5、自动运行

1vi /backup/rsync.sh //制作脚本文件

把下边的内容复制进去

#!/bin/bash

rsync -vzrtopg --progress --deletegao@10.0.0.10::backup /backup/web/ --password-file=/etc/rsync.pas

2) /backup/rsync.sh文件执行权限

chmod 744 /backup/rsync.sh

3) 执行/backup/rsync.sh文本

./backup/rsync.sh

6crontab -e

加入0 12 * * *  /backup/rsync.sh //每天的12点运行一次rsync.sh脚本文件

7、启动rsync服务:

  /usr/bin/rsync --daemon

 

阅读(4452) | 评论(0) | 转发(4) |
给主人留下些什么吧!~~