centos6.5环境利用scp实现自动化文件备份
centos6.5环境利用scp自动上传备份文件到指定服务器中
需要备份的主机 192.168.3.17
存放备份的主机 192.168.3.18
目的:将3.17主机上/data/storage的文件每天备份一次,并且同步到远程主机中
需要备份的主机:
mkdir -p /data/scripts
mkdir -p /data/backup
vim backfile.sh
#!/bin/sh
backpath=/data/backup/ #本地备份目录
date=`date +%y%m%d`
site=storage
tar zcf ${backpath}${site}”-“${date}.tar.gz /data/${site} #压缩网站数据,并以网站名-时间方式命名
scp -l 200000 ${backpath}${site}”-“${date}.tar.gz root@192.168.3.18:/data/bak #上传到远程服务器/data/bak中
# scp -P 2222 -l 200000 ${backpath}${site}”-“${date}.tar.gz root@192.168.3.18:/data/bak #上传到远程服务器/data/bak中,ssh端口非默认22端口用此命令,-P 2222 代表2222端口,-l 200000 代表传输速率限制为20M,如果不限制可能内网带宽被占满影响其他程序正常的网络交互
chmod +x /data/scripts/backfile.sh
配置3.17免密码访问3.18
ssh-keygen -t rsa -P \’\’
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
fd:10:ef:b1:1f:cf:7e:af:39:e4:4d:03:57:dd:6e:ef root@centossz008
The key\’s randomart image is:
+–[ RSA 2048]—-+
| o|
| +|
| . ..|
| . o . .o|
| S o o o..|
| + o..o|
| +o.+.|
| .o=E|
| ++B|
+—————–+
ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.3.18
如果ssh端口非默认的22端口,使用如下命令:
ssh-copy-id -i /root/.ssh/id_rsa.pub “-p 28290 root@192.168.3.18”
计划任务,每天晚上1点1分备份一次:
1 1 * * * /bin/bash -x /data/scripts/bakfile.sh >/dev/null 2>&1
目标备份服务器配置:
mkdir -p /data/bak
2 2 * * * /bin/find /data/bak -mtime +15 -exec rm -f {} \;