公司的某台linux服务器实在是让人不放心,就害怕在哪个雷雨交加的晚上,脆弱的它宕机了…没办法,资源有限,只好把自己平时办公的电脑贡献出来,作为镜像备份服务使用。办公电脑装的是window XP和centos5 双系统,1TB硬盘。在linux下分了400GB硬盘空间作为备份用。南京RHCE认证培训
言归正传。
实际环境:两台centos5服务器进行数据同步备份。
备份方式采用:rsync+ssh (因为这是最简单的一种备份方式了,而且rsync备份的速度非常块,不但可以备份文件,连同文件的属性,所有者,所属组织等信息都能详细备份,而且每次备份只检测更新部分。所以,rsync对我来说是最理想的备份方式。)
软件安装:rsync ,ssh 关于ssh,一般默认都是安装好的,可以直接用了。至于rsync都是自己现装的。linux的依赖关系实在烦人,所以决定采用源码包编译安装,
下载解压完成后,进入解压完后的目录,直接按照configure,make,make install三部曲来就ok了。(别忘装GCC)。南京RHCE认证培训
下面就是实践过程:
假设:主服务器IP地址是:192.169.10.100
备份服务器IP地址是:192.168.10.110
现在主服务器、备份服务器上安装rsync软件 .
安装完后:
一:备份服务器上穿件ssh密钥(用来免密码登录目标服务器),这里我用slave这个帐号来进行镜像同步(用哪个帐号来同步数据,就用哪个帐号来制作密钥)。南京RHCE培训
#ssh-keygen -t rsa<==这个步骤在产生 Key pair
Generating public/private rsa key pair.
Enter file in which to save the key (/home/test2/.ssh/id_rsa): <==这里按下Enter
Enter passphrase (empty for no passphrase): <==这里按 Enter
Enter same passphrase again: <==再按一次 Enter
Your identification has been saved in /home/test2/.ssh/id_rsa. <==这是私钥
Your public key has been saved in /home/test2/.ssh/id_rsa.pub. <==这是公钥
The key fingerprint is: *********************
# 注意∶ -t 指的是『使用何种密码演算方式?』由于我们使用 RSA ,
# 所以直接输入 -t rsa 即可建立两支 Keys !
# 此外,建立的两把 Keys 都放置在家目录下的 .ssh 这个目录中!
# 察看一下这两把 Keys 吧
$ ll ~/.ssh 南京RCHE认证培训
-rw------- 1 test2 test2 887 Nov 12 22:36 id_rsa
-rw-r--r-- 1 test2 test2 233 Nov 12 22:36 id_rsa.pub
-rw-r--r-- 1 test2 test2 222 Oct 31 11:20 known_hosts
上面出现的know_hosts,就是用ssh第一次登录目标服务器时候,是需要你输入yes的,输入完之后就有了这个东东了。第二次就不需要输入yes了,直接输入密码就可以了。key制作好了,密码也不输入了,就直接登录远程服务器了。南京RHCE认证培训
上面的**************.pub就是公钥。把这个文件的复制到主服务器的master用户的家目录下。ssh文件夹内。重命名为authorized_keys 如果有多个客户端要连进来,那就用cat id_rsa.pub 》 authorized_keys 把公钥的信息追加到authorized_keys文件就可以了。
接下来就可以尝试一下免密码登录了。
$ssh master@192.168.10.100 回车 是不是直接进去了呢? ->(我在这里郁闷了一个晚上,当时家里没有网线,看了些参考资料始终没有搞定,原因在于我用CRT软件连的虚拟机做实验,这里要在真是的shell环境先方可以,不然,死活要你输入密码,你得把密钥导入到CRT当中才可以的。估计putty也是这样。)
上诉都成功后,就可以用slave账户同步master账户的资料了(只要master有权限的都可以同步)。南京RHCE认证培训
输入命令:南京RHCE认证培训
rsync -av -e ssh master@192.168.10.100:/home /home
将主服务器/home 下的内容同步到 本机的/home目录下面。
这个地方大家可以做个实验,就是关于路径后面的/问题,比如:/home/ /home/ 这样跟上面的效果不同。