rsync命令_在Centos系统下通过rsync备份数据

a173c13b41e0723c1257894cd6189719.png

一、案例需求:
Rsync服务器端(www.itkylin.com,ip:192.168.1.2)是一台Samba文件服务器,主要提供给内部网络用户的文件存储,现需要将samba数据通过rsync方式同步备份至另一台机器(rsync客户端)。也就是Rsync服务器端开启rsync服务,rsync客户端通过rsync向Rsync服务器端取数据的程。最后只需设置rsync客户端crontab定时器在指定的时间执行备份脚本即可实现每天同步备份数据防止数据丢失。
注:本列仅限Centos系统下安装配置,Ubuntu系统可参考本站文章:在Ubuntu系统下通过rsync备份数据库二、Rsync服务器端的安装配置(源数据是保持在服务器端):
#CentOS默认是以xinetd方式运行rsync服务,所以我们通过yum方式安装rsync的同时也把xinetd也安装上:
yum install rsync xinetd
通过vi命令编辑/etc/xinetd.d/rsync文件,修改disable = yes为disable = no (注:wq!是vi的命令,表示强制保存退出,以下均同!)
vi /etc/xinetd.d/rsync
#change:
#disable = yes
#to:
disable = no
:wq!
#设置开机启动rsync服务
chkconfig rsync on
service xinetd restart
创建rsyncd目录,通过vi创建并编辑rsyncd.conf配置文件
mkdir /etc/rsyncd
vi /etc/rsyncd/rsyncd.conf
uid = root
gid = root
use chroot = no
#read only = yes
read only = false
hosts allow = 192.168.1.0/24,www.itkylin.com, http://itkylin.com
hosts deny = *
max connections = 5
pid file = /var/run/rsyncd.pid
secrets file = /etc/rsyncd/rsyncd.secrets
#lock file = /var/run/rsync.lock
#motd file = /etc/rsyncd/rsyncd.motd
log file = /var/log/rsync.log
transfer logging = yes
log format = %t %a %m %f %b
syslog facility = local3
timeout = 300
[sambabak]
path = /usr/filedate
list=yes
ignore errors
auth users = itkylin
comment = Samba Bak
#exclude = itkylin
:wq!
#创建rsyncd.conf软连接
ln -s /etc/rsyncd/rsyncd.conf /etc/rsyncd.conf
#通过vi创建并编辑rsyncd.secrets用户密码对文件(注:服务器端是用户名:密码对格式;客户端就只有密码,没有用户名!)
vi /etc/rsyncd/rsyncd.secrets
itkylin:password
:wq!
#设置密码文件权限
chown root:root /etc/rsyncd/rsyncd.secrets
chmod 600 /etc/rsyncd/rsyncd.secrets三、Rsync客户端安装配置(客户端备份服务器端的数据,从服务器端取数据):
#安装rsync软件包,因为客户端只需要运行rsync命令,所以不强制安装xinetd
yum install rsync
#创建rsync目录用于存放rsyncd.secrets密码文件
mkdir /etc/rsync
#通过vi创建并编辑rsyncd.secrets用户密码对文件(注:服务器端是用户名:密码对格式;客户端就只有密码,没有用户名!)
vi /etc/rsync/rsyncd.secrets
password
:wq!
#设置密码文件权限
chmod 600 /etc/rsync/rsyncd.secrets
#rsync命令使用语法:
#/usr/bin/rsync [--参数] [--参数] [备份来源路径] [备份目的路径]
#手动执行rsync命令:
/usr/bin/rsync -avz --delete --password-file=/etc/rsync/rsyncd.secrets itkylin@www.itkylin.com::sambabak /8t/samba四、Rsync客户端定时执行备份脚本程序:
#通过vi创建并编辑rsyncbak.sh脚本
vi /usr/sbin/rsyncbak.sh
#!/bin/sh
/usr/bin/rsync -avz --delete --password-file=/etc/rsync/rsyncd.secrets itkylin@www.itkylin.com::sambabak /8t/samba
:wq!
#设置rsyncbak.sh脚本可执行权限
chmod +x /usr/sbin/rsyncbak.sh
#vi编辑crontab设置定时器
vi /etc/crontab
25 20 * * * root /usr/sbin/rsyncbak.sh
:wq!

五、常见问题
5.1: 如果执行service xinetd restart命令时出现以下错误提示:
xinetd: 服务未能辨识
解决办法:
yum install xinetd
service xinetd restart
5.2: @ERROR: chdir failed
rsync error: error starting client-server protocol (code 5) at main.c(1530) [receiver=3.0.6]
rsync: opendir “.” (in xxxxxxx) failed: Permission denied (13)
解决办法一:取消selinux对rsync的限制:
/usr/sbin/setsebool -P rsync_disable_trans 1
service xinetd restart
解决办法二:禁止selinux :
vi /etc/selinux/config
#change:
#SELINUX=enforcing
#To:
SELINUX=disabled
:wq!
reboot

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值