使用rsync实现数据实时同步备份--实战2: 使用ssh密钥实现无交互备份

实战2:

使用ssh密钥实现无交互备份。作成脚本,将xuegod-63上的数据,按期备份到xuegod-64上。 html

生成公私钥并拷贝web

[root@xuegod-64 ~]# ssh-keygen #产生主机的公钥和私钥 vim

[root@xuegod-64 ~]# ssh-copy-id rget1@192.168.1.63 #拷贝本身的公钥到要登陆的服务器1.63上。bash

测试,不输密码直接链接:服务器

[root@xuegod-64 ~]# ssh rget1@192.168.1.63 #测试登录ssh

[rget1@xuegod-63 ~]$ exit #成功的登录,且不须要输入密码ide

测试,不输密码直接登陆和备份:测试

[root@xuegod-64 ~]# ls /web-back/ #先查看到在web-back目录下有grub这个目录code

Grubhtm

[root@xuegod-64 ~]# rm -rf /web-back/* #删除这个目录

[root@xuegod-64 ~]# rsync -azP --delete rget1@192.168.1.63:/var/www/html/ /web-back/

#将1.63下/var/www/html/下的文件备份到本机1.64下的/web-back/目录下,咱们能够看到

远程备份是不须要任何密码的!
编写备份脚本:
[root@xuegod-64 ~]# vim /root/rsync-ssh-get-wwwroot.sh #编写一个脚本将1.63下/var/www/html/下的文件备份到本机1.64下的/web-back/目录下

#! /bin/bash

rsync -azP --delete rget1@192.168.1.63:/var/www/html/ /web-back/

#在这里,就把P参数去掉了,由于是后期执行备份,看不见所备份的进度。

增长权限并查看脚本

[root@xuegod-64 ~]# chmod +x rsync-ssh-get-wwwroot.sh #给脚本就一个课执行的权限

[root@xuegod-64 ~]# cat /root/rsync-ssh-get-wwwroot.sh #查看所编写的脚本

#! /bin/bash

rsync -azP --delete rget1@192.168.1.63:/var/www/html/ /web-back/

测试脚本:
[root@xuegod-64 ~]# rm -rf /web-back/* #先删除这个目录下的全部文件

[root@xuegod-64 ~]# ls /web-back/ #查看目录,目录下什么都没有

[root@xuegod-64 ~]# ./rsync-ssh-get-wwwroot.sh #运行脚本,能够看到那些文件再一次过来

grub/device.map

63 100%   61.52kB/s    0:00:00 (xfer#1, to-check=15/18)

grub/e2fs_stage1_5

13380 100%   12.76MB/s    0:00:00 (xfer#2, to-check=14/18)

……

[root@xuegod-64 ~]# ls /web-back/ #能够看到,刚才的文件又出来了

Grub

按期增量备份:
[root@xuegod-64 ~]# crontab –e #脚本以生成,为了之后方便使用,因此建立一个计划任务

01 3 * /root/rsync-ssh-get-wwwroot.sh &

#天天在3点1分的时候 进行备份

备份完后,再在xuegod-64上打包

[root@xuegod-64 ~]# tar cvzf aaa.tar.gz /web-back/

相关文章
相关标签/搜索