利用rsync自动备份 完全配置方法 增加了ip限制

一、服务器端配置:

安装rsync
#系统一般是默认安装的
如果没有安装可以到安装光盘里去找(我的系统为CentOS4.6 所以在第一张光盘的CentOSRPMS目录下)
#配置/etc/rsyncd.conf

#系统上rsync安装后,并没有创建rsyncd.conf文档,笔者是自己创建的rsyncd.conf文档
[root@rsync ~]#
uid=nobody # 该选项指定当该模块传输文件时守护进程应该具有的uid.默认值为”nobody”.
gid=nobody # 该选项指定当该模块传输文件时守护进程应该具有的gid.默认值为”nobody”.
max connections=4 # 最大连接数为4
use chroot=no # 不使用chroot
log file=/var/log/rsyncd.log # 日志记录文件
pid file=/var/run/rsyncd.pid # 进程ID文件
lock file=/var/run/rsyncd.lock # 指定支持max connections参数的锁文件
#auth users=root

hosts allow = 192.168.100.90 # 哪些电脑可以访问rsync服务
hosts deny = 192.168.100.0/24 # 哪些电脑不可以访问rsync服务

[postfix] # 这里是认证的模块名,在client端需要指定
path=/var/mail # 需要做镜像的目录
comment = backup mail # 注释
ignore errors # 忽略一些无关的IO错误
read only = yes # 只读
list = no # 不允许列文件
auth users = postfix # 指定用户
secrets file=/etc/rsyncd.pwd # 认证文件名,主要保存用户密码,权限设为600,所有者root,否则客户端会报错

密码文件
在server端生成一个密码文件/etc/rsyncd.pwd
[root@rsync ~]# echo postfix:xxx >>/etc/rsyncd.pwd
[root@rsync ~]# chmod 600 /etc/rsyncd.pwd

启动rsync
[root@rsync ~]#rsync Cdaemon
[root@rsync ~]#echo “rsync Cdaemon” >> /etc/rc.d/rc.local #添加到自启动文件

检查rsync
[root@rsync ~]#netstat -na | grep 873 #rsync 默认使用的是873端口,除非特殊情况,一般不要去修改
tcp 0 0 0.0.0.0:873 0.0.0.0:* LISTEN
tcp 0 0 :::873 :::* LISTEN

二、客户端配置:

#在本机生产密码文件
[root@client ~]#echo XXX >>/etc/rsyncd.pwd # rsync服务器postfix密码(注:只要密码)

#客户端备份服务器上指定模块中的数据
[root@client ~]#rsync -vzrtopg Cprogress Cdelete Cpassword-file=/etc/rsync.pas postfix@192.168.100.1::postfix /home/mail/ #备份rsync服务器上postfix中模块指定文件夹,并删除本地服务器上没有的内容
# -v, Cverbose 详细模式输出
# -z, Ccompress 对备份的文件在传输时进行压缩处理
# -r, Crecursive 对子目录以递归模式处理
# -t, Ctimes 保持文件时间信息
# -o, Cowner 保持文件属主信息
# -p, Cperms 保持文件权限
# -g, Cgroup 保持文件属组信息
# Cprogress 显示传输进度
# Cdelete 删除本地备份目录中服务器模块指定目录中没有的文件
# Cpassword-file 从指定文件中得到密码

#制定计划任务
[root@client ~]#crontab -e
0 0 * * * rsync -vzrtopg Cprogress Cdelete Cpassword-file=/etc/rsync.pas postfix@192.168.100.1::postfix /home/mail/

windows相关软件下载地址:

参与评论