利用rsync和ssh备份实例
时间:2008-01-16 13:33:19 来源: 作者:
|
大家可以复制,但请大家保留本文的完整,谢谢!![本人保留著作权} 作者:rhinux 备份的重要性不言而喻,现在向大家介绍一种本人在实际工作中用到的几乎是完全免费,但又非常实用的备份方法. [color=blue]一,简述:[/color] 备份主要采用rsync利用sshd服务进行备份,而无需建立任何其他服务. [color=blue]二, 服务器配置:[/color] 1,RedHat AS3 2,rsync 2.4.6 [RedHat AS3 自带] 3,ssh-keygen [RedHat AS3 自带] 4,sshd[RedHat AS3 自带] [color=blue]三, 环境描述:[/color] 1,111.111.111.111 ---需被备份的资料存储于该服务器 2,222.222.222.222 ---备份服务器 [color=blue]四, 备份设置[/color] 1,添加帐号: 分别在111.111.111.111和222.222.222.222上建立备份专用帐号如bak确保在111.111.111.111上的bak具有读取需备份资料的权限,在222.222.222.222上的bak具有写权限,用来执行备份脚本. 2,添加备份脚本: ####################################################### 说明:在222.222.222.222的/backup/db_backup/"日期"/111.111.111.111/3306/下备份 111.111.111.111的/db/mysql/3306/data/abc文件夹 .并按照日期保留最近4日的数据. 参数 “-e ssh”直接用222.222.222.222上执行该脚本的用户登录到111.111.111.111. 将脚本保存到/home/bak/backupdata.sh 加上可执行属性. 3,添加crontab: 命令:$ crontab -e 添加如下语句后保存 0 2 * * * /home/bak/backupdata.sh 以后就每天凌晨2点执行 但这样还不能无人守候的情况下自动运行,要想自动完成备份工作还需要分发bak帐号公钥.接下来就来讲讲怎样做: [color=blue]五, sshd的配置[/color] 1,建立key: 在111.111.111.111下用bak帐号执行如下命令:
注意这里不需要输入passphrase. 2,分发公钥: 使用scp命令
3,为222.222.222.222的bak添加公钥 在222.222.222.222的/home/bak/.ssh/下建立文件authorized_keys (如没有.ssh文件夹请自行建立,接下来将刚拷贝到 /home/bak/下的111.111.111.111-rsync-key.pub的内容导入 /home/bak/.ssh/authorized_keys 用如下命令: $ mkdir /home/bak/.ssh 4,现在用bak登录111.111.111.111,输入如下命令: $ ssh 222.222.222.222 如果不用密码可以直接登录了那就成功了.... [color=blue]六,本人省略了以上命令和工具参数的说明,一方面也是我没有时间去说明,另一方面也希望能让初学者养成看man文档的习惯.通过man的学习可以按各位的需要选择更适合你的参数.[/color] [color=blue] 七,本来很早就想将这篇文章写出来和大家分享了,可是这段时间我和我爱的宝贝飞飞的感情问题,一直困扰着我.同样这篇和我上次的Apache 服务器Log分析应用实例http://bbs.chinaunix.net/forum/viewtopic.php?t=455139&show_type=new 一样献给我最爱的飞飞,希望她能真正明白我对她的感情. [/color] [color=blue]八,由于本人也是初学者,本文略显粗糙,如有任何指点和问题欢迎和我联系,大家相互交流提高 :hoash2003@hotmail.com qq群:9024486 [/color] rhinux 2005年02月05日 于上海 大家可以复制,但请大家保留本文的完整,谢谢!









文章评论
共有 位网友发表了评论 查看完整内容