| 关键词: ssh 公钥 服务器 文件 rsync 目录 www 自动 cluster2 命令 |
1. 利用的工具:rsync,ssh 2. 特点: l检查原文件并只复制发生变化的数据块 l使用ssh加密数据 l允许传输前压缩 l 从源系统移除数据时,在目标系统上自动移除 l允许设置WAN连接的数据传输速度 l具有复制设备文件的能力 3. Ssh服务器与客户端设置为了实现自动双向验证,我们通过公钥验证,这里用root来连接服务器,首先更改ssh服务器的ssh服务配置文件/etc/ssh/sshd_config. 然后重启服务:#service sshd restart。 为客服端的root用户生成密钥对: #ssh-keygen -t rsa 将在家目录下的.ssh/ 目录下生成id_rsa,id_rsa.pub文件,其中前面一个是私钥,后面一个是公钥,将公钥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分钟自动同步一次。 |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|