rsync是类unix系统下的数据镜像备份工具,从软件的命名上就能够看出来了——remote sync。linux
它的特性以下:vim
能够镜像保存整个目录树和文件系统。centos
能够很容易作到保持原来文件的权限、时间、软硬连接等等。安全
无须特殊权限便可安装。服务器
快速:第一次同步时 rsync 会复制所有内容,但在下一次只传输修改过的文件。rsync 在传输数据的过程当中能够实行压缩及解压缩操做,所以能够使用更少的带宽。ssh
安全:能够使用scp、ssh等方式来传输文件,固然也能够经过直接的socket链接。socket
支持匿名传输,以方便进行网站镜象。[1]ide
系统环境:工具
Server :A:centos 5.6 IP:192.168.1.125 网站
Client :B:linux 5.5IP:192.168.1.123
A和B都要安装RSYNC软件
rsync安装
[root@localhost rsync]# ls
inotify-tools-3.14.tar.gzrsync-3.0.4.tar.gz
ocaml-3.10.2.tar.gzunison-2.32.52.tar.gz
[root@localhost rsync]#
[root@localhost rsync-3.0.4]# tar zxvf rsync-3.0.4.tar.gz
[root@localhost rsync]# cd rsync-3.0.4
[root@localhost rsync-3.0.4]# ./configure ;make ; make install
在server:A上配置
[root@localhost /]# vim /etc/rsyncd.conf//安装默认是没有的,需手动建立
uid = nobody
gid = nobody
use chroot = no
max connections = 10
strict modes = yes
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
[soft]
path = /soft
comment = soft file
ignore errors
read only = no
write only = no
hosts allow = *
hosts deny = 192.168.12.123
list = false
uid = root
gid = root
auth users = backup
secrets file = /etc/server.pass//文件不作解释看懂的
[root@localhost /]# vim /etc/server.pass//手动建立的
backup:back12345
[root@localhost /]# chmod 600 /etc/server.pass
[root@localhost /]# /usr/local/bin/rsync –daemon//启动rsync守护进程
[root@localhost /]# ps -ef |grep rsync
root946010 07:39 ?00:00:00 /usr/local/bin/rsync –daemon
在client:B配置
[root@localhost /]# rsync --list-only backup@192.168.1.125::soft //查看服务端要同步的文件
Password:
drwxr-xr-x4096 2013/03/25 07:20:02 .
drwxr-xr-x4096 2013/03/25 07:23:06 rsync
[root@localhost /]#rsync -av backup@192.168.1.125::soft /tmp///同步到本地
Password: //输密码
receiving incremental file list
./
rsync/
rsync/rsync-3.0.4.tar.gz
把服务器同步目录的内容同步到本地,使用密码文件。(咱们在写脚本的时候必用的)
[root@localhost /]# more /etc/server.pass //手动建立
back12345
[root@localhost /]#rsync -av --password-file=/etc/server.pass backup@192.168.1.125::soft /soft/bk///此时不须要输入密码了
客户端,能够写脚本并把它放到cron计划任务中去执行
[root@localhost /]# crontab –e
0422***rsync -av --password-file=/etc/server.pass backup@192.168.1.125::soft /
[root@localhost /]# service crond restart
Stopping crond:[OK]
Starting crond:[OK]
[root@localhost /]# crontab –l//查看任务列表避免未保存
0422***rsync -av --password-file=/etc/server.pass backup@192.168.1.125::soft /
到此一个简单的备份系统就搭建完成