码迷,mamicode.com
首页 > 系统相关 > 详细

linux 服务器数据备份

时间:2017-11-02 14:25:22      阅读:272      评论:0      收藏:0      [点我收藏+]

标签:inux   回车   keygen   免密码   数据   cal   记录   gen   bsp   

目的:每天定时将A服务器和B服务器上的数据压缩后备份到C服务器

1.选择免密码登陆

1.1分别在A,B服务器上的根目录下执行:

ssh-keygen -t rsa

--然后一直回车键.最后在~目录会生成 .ssh文件,里面有三个文件,

authorized_keys  id_rsa  id_rsa.pub

  authorized_keys:存放远程免密登录的公钥,主要通过这个文件记录多台机器的公钥

  id_rsa : 生成的私钥文件

  id_rsa.pub : 生成的公钥文件

  know_hosts : 已知的主机公钥清单

其中

id_rsa.pub为生成的公钥,将其拷贝到C服务器,authorized_keys,know_hosts在全新的服务器上没有
1.2 分别将A,B上的id_rsa.pub,通过scp传到C
A:
scp -p -P<端口> ~/.ssh/id_rsa.pub root@<remoteIP>:/root/.ssh/A_rsa.pub

 

B:
scp -p -P<端口> ~/.ssh/id_rsa.pub root@<remoteIP>:/root/.ssh/B_rsa.pub

--scp 命令,-P为指定端口,不指定为默认的22端口.

然后在C服务器上将传过来的文件追加到authorized_keys:

//追加A
cat /root/.ssh/A_rsa.pub >> /root/.ssh/authorized_keys 
//追加B
cat /root/.ssh/B_rsa.pub >> /root/.ssh/authorized_keys 

 

 验证是否成功:

ssh -P<端口> <remote>

 

能进去就表示成功.

2备份脚本的实现

2.1

在备份文件之前将其压缩,并生成md5,在C服务器进行md5验证,文件一致后,删除A服务器上对应的md5,gz,以及20天之前的文件

#!/bin/bash
######### cache ###########
#local filepath
localpath=$1
#topath
topath=$2
#date
date=$(date +%y%m%d)
filename=*.log
#status
mdstatus=1
#md5 localfile
#md5sum ${localpath}${filename} > "${date}".md5
#cd
cd "${localpath}"
#tar localfile
tar zcf ${filename}"-"${date}.tar.gz ${filename}
#md5 local tar
md5sum ${filename}"-"${date}.tar.gz > "${date}".md5
#scp
scp -P1022 ${filename}"-"${date}.tar.gz root@<remoteIP>:${topath}
scp -P1022 ${date}.md5 root@<remoteIP>:${topath}
#ssh
mdstatus=`ssh root@<remoteIP> -p 1022 -tq << remotessh
cd "${topath}"
md5sum -c --status ${date}.md5 
echo $?
exit
remotessh`
#delete
if [ "${mdstatus}" -eq 0 ] ;
then
    echo "success"
    find ${localpath} -mtime +20 -name "*.log" -exec rm -rf {} \;
    rm -rf ${localpath}*.gz
    rm -rf ${localparh}*.md5
fi

 3.定时任务执行脚本

crontab -e

分 时 日 月 周 [命令]

* * * * * [commond]

0 8 * * * [脚本路径]

完成

linux 服务器数据备份

标签:inux   回车   keygen   免密码   数据   cal   记录   gen   bsp   

原文地址:http://www.cnblogs.com/changxiadai/p/7771770.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!