QQ登录

只需一步,快速开始

登录 | 立即注册 | 找回密码

熊天琪游戏论坛 - 玩出名堂

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 28|回复: 0

[文本教程] Linux下用rsync在不同服务器之间备份数据脚本

[复制链接]
发表于 2018-1-12 02:09:57 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x


1、参考图



2、参考脚本
#!/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
#备份服务器的IPserver="192.168.50.100"
#备份服务器的SSH用户账号user="rsync_user"
#备份服务器的SSH服务端口号port=50000
SSH="ssh -p $port -l $user -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no"
#避免同时启动同一个脚本多次的锁文件lock_file="/opt/rsync/lock"
#需备份的源目录sync_dir="/opt/source/sync"
function rsync_data{local ilocal nlocal ret
n=`ls $sync_dir | wc -l`
if [ $n -ge 1 ]; thenecho "Info: $n files need rsync"
rsync -az -e "$SSH" $sync_dir $server:~/ 2>/dev/nullret=$?
if [ $ret -eq 0 ]; thenfor i in `ls $sync_dir`do$SSH $server "mv ~/sync/$i ~/backup/data" 2>/dev/null
if [ $? -eq 0 ]; thenrm -f "$sync_dir/$i"fidoneelseecho "Error: rsync return $ret"ret=1fielseecho "Info: no file need rsync"ret=0fi
return $ret}
if [ -f $lock_file ]; thenpid=`cat $lock_file`if ps -p $pid > /dev/null ; thenexit 0fifi
echo $$ > $lock_file
#同步数据rsync_data
#删除锁文件rm -f $lock_file
exit 0
3、可以根据自己的具体情况灵活配置cron服务进行增量数据的同步
作者简介:
AnyTopOne是一个开源软件(Free and Open-Source Software)爱好者,先后从事Linux系统管理、程序开发、大规模平台架构设计、团队管理等工作,从业经验13年有余,具有丰富的IT行业从业经验,喜欢与其大家干货经验分享与交流。
[table=98%][/table]
熊天琪的论坛真是太好啦, 我太喜欢熊天琪啦
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Loading...

QQ|小黑屋|Archiver|手机版|熊天琪 ( 鄂ICP备14006674号,鄂公网安备42020502000003号 

安全联盟

GMT+8, 2018-4-25 00:16 , Processed in 0.125817 second(s), 29 queries .

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表