Linux自动备份


1. 利用的工具:rsync,ssh

2. 特点:

l检查原文件并只复制发生变化的数据块

l使用ssh加密数据

l允许传输前压缩

l 从源系统移除数据时,在目标系统上自动移除

l允许设置WAN连接的数据传输速度

l具有复制设备文件的能力

3. 简单的备份示意图

图1:备份示意图

4. Ssh服务器与客户端设置为了实现自动双向验证,我们通过公钥验证,这里用root来连接服务器,首先更改ssh服务器的ssh服务配置文件/etc/ssh/sshd_config.

如下图:去掉:椭圆里前面的注释:

clip_image004

图2

然后重启服务:#service sshd restart。

为客服端的root用户生成密钥对:

#ssh-keygen -t rsa

如图3所示,将在家目录下的.ssh/ 目录下生成id_rsa,id_rsa.pub文件,其中前面一个是私钥,后面一个是公钥

clip_image006

图3

将公钥id_rsa.pub的内容复制到ssh服务器的/root/.ssh/authorized.keys文件里。

这样服务器就可以通过公钥对root用户认证,而客户端对服务器的认证是在首次连接时,自动从服务器下载服务器公钥,并放在~/.ssh/known_hosts里。

最后一步:运行一下#ssh-add命令

然后测试:

在客服端输入:

#ssh cluster2 hostname

命令,如果成功的话将直接输出hostname运行结果,而没有输入密码提示。

5. 配置rsync:

我们创建在rsync主服务器ssh客服端)上创建一个测试目录:

#mkdir /www

#echo “this is a rsync test” > /www/index.html

运行rsync命令:

#rsync -v -a -z -e ssh --delete /www/ cluster2:/www

-v显示操作信息

-a目录下的文件及目录

-z压缩

-e ssh通过ssh传输

/www/ 源目录,注意要以“/”结尾后面就是备份目标了,详细的rsync选项请查阅在线文档将远程文件“拉”到本地,只需将源路径和目标路径交换。

6. 剩下的就是通过cron作业,定期复制备份了。如下

#crontab -e

30 * * * * rsync -v -a -z -e ssh --delete /www/ cluster2:/www >/dev/null 2>&1

这样每隔30分钟自动同步一次。

  1. 有备无患Linux操作系统的备份方法介绍
  2. 中小企业如何选择Linux备份工具
  3. 有备无患 Linux服务器备份和恢复技巧

相关内容