有思俱乐部学习园地

完整备份


一、 环境

服务器A-10.3.15.246:有源文件,完整备份压缩过程在此机器

服务器B-10.3.15.247:被动接收压缩后的文件

二、 scp、ssh免密登录

1. 服务器A生成公钥私钥对

ssh-keygen -t rsa

服务器A生成rsa类型的公钥私钥对,连续按3次回车(如图)

生成后的公钥私钥对在/root/.ssh/目录,id_rsa是私钥,id_rsa.pub是公钥

2. 将公钥传到服务器B

服务器A操作:

cd /root/.ssh/
scp id_rsa.pub root@服务器B:/root/key.pub

服务器B检查是否有文件

服务器B将服务器A的公钥文件写入/root/.ssh/authorized_keys

cat /root/key.pub >> /root/.ssh/authorized_keys

在服务器A测试能否直接连入服务器B

ssh root@服务器B的IP

不用密码登录即成功

三、 服务器B安装pigz

pigz是支持多线程压缩/解压的gzip,用这个软件可以提高十几倍效率。

1. 安装pigz

apt-get install pigz -y

四、 编写脚本

在服务器A:

#!/bin/bash
#创建备份文件夹
mkdir /root/full_backup/
#删除旧备份
rm /root/full_backup/*
#获取当前日期
date=`date +%Y-%m-%d_%H%M%S`
#使用gzip打包
tar -C /root/backup/ -cf - . | pigz > /root/full_backup/full_backup_$date.tar.gz
#使用scp传入服务器B
scp /root/full_backup/full_backup_$date.tar.gz root@10.3.15.247:/home/full_backup/

部分内容根据需求更改

五、 设置定时任务

crontab -e

在最后增加一行:

0 6 15 * * root bash /root/test.sh

设置每月15号上午6点开始备份

工作人员

作者:
信息录入: