阿里云
阿里云多端小程序中小企业获客首选
发表主题 回复主题
  • 9281阅读
  • 2回复

[解决方案]linux下使用rsync远程定时备份服务器数据

级别: 论坛版主
发帖
3414
云币
8980

        数据备份是容灾的基础,是指为防止系统出现操作失误或系统故障导致数据丢失,而将全部或部分数据集合从应用主机的硬盘或阵列复制到其它的存储介质的过程。传统的数据备份主要是采用内置或外置的磁带机进行冷备份。但是这种方式只能防止操作失误等人为故障,而且其恢复时间也很长。随着技术的不断发展,数据的海量增加,不少的企业开始采用网络备份。网络备份一般通过专业的数据存储管理软件结合相应的硬件和存储设备来实现。 e" St_z(  
_lamn }(x0  
:]\([Q+a  
最近 项目上线、很多东西都要己捣鼓、所以闲来就捣鼓了下rsync。 a!=D[Gz*5  
KET2Ws[w  
 R}O_[  
下面 要介绍的就是网络备份、使用rsync实现数据的备份。 ~_/(t'9  
G"h'_7  
E*]bgD7V  
这里我们准备两台服务:服务器机器: 192.168.1.180 客户端机器:192.168.1.190 实现 180的数据同步保存到190服务器。 "N`[r iq{  
<sBbT `  
C{U?0!^  
一、安装rsync,并通过xinetd管理rsync 阿里服务器默认安装了rsync 如果没有安装 可以执行一下命令 be.*#[  
e)d`pQ6  
jYk&/@`Ly  
yum install rsync xinetd -y YNQY4\(  
aDU<wxnSvO  
,J+}rPe"sf  
二、vi  /etc/xinetd.d/rsync 使其随xinetd启动而启动 .+$ Q<L  
service rsync Q+[n91ey**  
{ ,Q  
        disable = no//默认为yes ~E17L]ete  
        flags           = IPv6 JRB9rSN^  
        socket_type     = stream `sn^ysp  
        wait            = no fD[*_^;h)  
        user            = root ].-1v5  
        server          = /usr/bin/rsync 6^]+[q}3  
        server_args     = --daemon EJMM9(DQ7  
        log_on_failure  += USERID H?yK~bGQ  
} GS$ifv  
bCRV\myd`  
H\ F :95  
三、启动服务 /etc/init.d/xinetd restart 'jWr<]3  
M:Pc,  
@>,^":`#  
查看 873端口是否启动 m*&]!mM"0G  
f6hnTbJ  
j()7_  
netstat antup|grep 873 E(>=rD/+  
u^^[Q2LDU}  
oH97=>  
也可以  vi /etc/services  查看  以文件为准。 6]K_m(F  
rsync           873/tcp                         # rsync <cps2*'  
rsync           873/udp                         # rsync (KjoSN( K  
1m4$p2j  
%~4M+r6T  
四、创建用户 3dg1DR;  
useradd rget ;17E(tl  
#设置密码 ZgTW.<.%2  
echo '123456' | passwd --stdin rget  dm\F  
,0 M_ Bk"  
n@<YI  
#设置权限 D+rxT: d  
setfacl -R -m user:rget:rwx /www/52itstyle/ ^UP`%egR  
LBw1g<&  
0"jY.*_EW  
#设置默认权限 及时以后目录变动更改 NVkV7y X]  
setfacl -R -m default:rget:rwx /www/52itstyle/ g|o,uD  
/CrSu  
KjD/o?JUr  
#查看权限是否正确 红色标注部分 pC#E_*49  
getfacl /www/52itstyle/ D}-/c"':}  
\j$&DCv   
^um<bWNc  
getfacl: Removing leading '/' from absolute path names owVX*&b{  
# file: www/52itstyle/ N=V==Dbu-  
# owner: root /2&c$9=1  
# group: root )v'WWwXY>  
user::rwx )HEa<P^kJl  
user:rget:rwx >xN .F/[K  
group::r-x fBU`k_  
mask::rwx P0;n9>g  
other::r-x iDpSj!x/_  
default:user::rwx ld[I}88$  
default:user:rget:rwx [*Z;\5&P  
default:group::r-x sU=H&D99  
default:mask::rwx &sl0W-;0  
bTI|F]^!  
P9R9(quI  
五、手动备份(需要手动输入密码) p'Y^ X  
rsync  -azP  --delete  rget@192.168.1.180:/www/52itstyle   /www/ ]}V<*f  
# rsync 命令说明 ncaT?~u j  
Lc}LGq!  
A[B<~  
如果 /www 目录下出现 /52itstyle 目录说明备份成功。 AzPu)  
N"Z{5A  
m&d|t>3<  
六、使用ssh密钥实现无交互备份 49eD1h3'X[  
2_>N/Z4T  
<;lkUU(WT2  
#生成密钥 )7hqJa-V  
ssh-keygen Kf3"Wf^q   
}H53~@WP>  
Fw_#N6Q  
# 复制密钥 ldf\;Qk  
ssh-copy-id   rget@192.168.1.180 hWjc<9  
[z:!j$K  
VG5i{1  0  
#测试登陆 j/DzCcp7  
ssh   rget@192.168.1.180   ?d*z8w  
/l3V3B7  
e[1hz_v  
编写脚本 KR} ?H#%  
vi /root/rsync/rsync-ssh-get.sh Zpt\p7WQ  
6bg ;q(*7  
b1I]>\  
#!/bin/bash /PVk{3  
rsync  -az  --delete  rget@192.168.1.80:/www/52itstyle   /www/   # -P去掉  不看进度 PI {bmZ  
!|(-=2`  
Ov@gh kr  
cVv=*81\  
X0HZH?V+  
计划任务 )$2QZ qX  
crontab -e )D O?VRI  
01  3 * * * /root/rsync/rsync-ssh-get.sh&   qZdQD  
SO/c}vnBB  
gT. sj d  
这里每天凌晨三点自动执行备份任务。 |"}FXa O  
[ 此帖被小柒2012在2015-11-23 20:45重新编辑 ]
级别: 新人
发帖
2
云币
3
只看该作者 沙发  发表于: 2015-12-08
Relinux下使用rsync远程定时备份服务器数据
  1. #crontab -e  
  2. 01  3 * * * /root/rsync/rsync-ssh-get.sh > /root/rsync.log
u@) U"FZ  
加上记录日志功能, 这样出现问题,方便查
级别: 论坛版主
发帖
3414
云币
8980

只看该作者 板凳  发表于: 2015-12-11
回 1楼(qianglong) 的帖子
哈哈 多谢
发表主题 回复主题
« 返回列表上一主题下一主题

限100 字节
如果您在写长篇帖子又不马上发表,建议存为草稿
 
验证问题: ECS是阿里云提供的什么服务? 正确答案:云服务器
上一个 下一个
      ×
      全新阿里云开发者社区, 去探索开发者的新世界吧!
      一站式的体验,更多的精彩!
      通过下面领域大门,一起探索新的技术世界吧~ (点击图标进入)