云服务器促销,免费安装宝塔面板!
开启左侧

[宝塔面板] Linux系统怎么实现两台服务器互相备份数据?

[复制链接]
当流科技 发表于 2017-8-31 23:58:27 | 显示全部楼层 |阅读模式

本站会员必须 邮箱验证成功后 才能发帖。马上注册查阅更多教程,下载海量资源,让你轻松玩做站

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

4 o  X4 _. t+ r7 T' u2 F考虑到在本机上备份数据,一旦该机器硬盘出现故障,数据无法取出。远程手动备份数据费时费力且不及时。最好的方法就是通过脚本实现远程自动互备。但远程无论是通过SSH登陆,还是通过scp拷贝文件都需要输入密码。为了克服这个问题,首先需要实现不需要密码的SSH登陆,这样就可以使用rsync,scp,rexec等命令来做的远程备份了。
9 F% v! d* n5 \' Z3 X. }# v2 ]  f" {' |9 n
1. 设置无需密码的ssh登陆,方法如下:
- x8 {5 h- O3 c  L1 a5 K假设A,B两服务器,现在需要在A机上用root登陆B机,而不需要输入密码,那我们可按照下面的步骤来做:) k3 q6 T/ o3 t
1)在A机上生成钥匙对,执行以下命令:. [( D- w1 C2 V2 x1 U3 C% [7 e
  1. ssh-keygen -t rsa
    . E  w! E8 N6 l* t+ A/ Q
  2. Generating public/private rsa key pair.
    & l6 K* B0 g, z$ a+ j
  3. Enter file in which to save the key (/root/.ssh/id_rsa): /root/.ssh/id_rsa
复制代码
7 i8 |, n  ?- O: O

8 I: _, j+ \3 ?+ O1 C( s$ ]Enter passphrase (empty for no passphrase):直接回车
: \: E: u7 M( [) _9 a  _8 h9 B; {. v
Enter same passphrase again:直接回车
* v  Q$ A; t# N' V0 m: t. u+ K. P  u9 e3 s
Your identification has been saved in /root/.ssh/id_rsa.
* _+ J( r) t; Z, eYour public key has been saved in /root/.ssh/id_rsa.pub.* B6 M" v- N1 r4 Y# a( ^' ]
The key fingerprint is:4 _8 T) E3 d6 _/ \6 T8 p5 ?
f6:61:a8:27:35:cf:4c:6d:13:22:70:cf:4c:c8:a0:23 root@host1
% a' `8 o) _1 n: S, |. }6 G/ H' k/ z, c2 }$ m& L. t+ c
这样,在/root/.ssh/路径下会生成id_rsa,和id_rsa.pub,其中id_rsa是密钥,id_rsa.pub是公钥。5 _$ T. H# I$ p% V5 G
3 G8 q" k5 _/ p/ v* A; M
2)把在A机生成的id_rsa.pub拷贝到B机上,假设拷贝到B机的临时目录下,如:
# g: |, n! B' y  iscp /root/.ssh/id_rsa.pub root@218.242.214.20:/tmp
2 b$ h1 u6 a/ g9 ]3)用root帐号登陆B机,进入其主目录,创建authorized_keys文件,并设置好权限。: z. o" D  T3 E' H9 H4 g
  1. cd ~/.ssh
    7 s. a2 w1 e& f. D0 N
  2. cat /tmp/id_rsa.pub >>authorized_keys
    2 X, ?/ H/ _7 W- b2 H% t% ]
  3. chmod  400 authorized_keys
    ; C( T/ }) Q3 _+ ~9 ?( g) K
  4. rm -f /tmp/id_rsa.pub
复制代码
% [' e) p, W" Y: W
, ?' L: O) ?$ \
4)测试% x8 G. l7 d5 g9 a) {
在A机上转到root帐号,尝试登录B机。看看是不是不要密码.
" z/ {1 u! J' Y" |' Q& ?- L说明:+ m. Z  W5 p% T& ~. S* o" i; f
authorized_keys文件的权限很重要,如果设置为777,那么登录的时候,还是需要提供密码的。5 r! C& Q7 m/ F. E
记得将临时目录下的id_rsa.pub删除,养成个好习惯。; i( E  f- t# l" J! _
本方法在Red Hat9.0上测试通过。
$ K- K- p; \" B1 y  Y
. {# ]: b9 }- Q# v
; T0 O- a2 ~" Y& _/ s2. 编辑crontab文件$ C. O1 v7 [  D$ l
vi /etc/crontab; M+ N- ]  Y! ^* A4 u
如设置每天凌晨3:00执行cron.daily中的脚本:
# k- Q9 _. d9 Q- H6 X+ ?: x9 V
  1. 00 3 * * * root run-parts /etc/cron.daily
复制代码
. l! R& g; C+ l/ a, {8 S
  S& W- S$ E5 E- Y5 j; m/ e
3.编辑cron.daily中的脚本  s2 V2 i0 z: V& a* u# X
  1. cd /etc/cron.daily/3 ^0 P: ^' o1 {9 z! N1 S
  2. vi backupdb
    7 l: ?! G" M" E: M5 v
  3. 5 K% w  z% l  L! H9 t% ?% Q
  4. pg_dump -U postgres voipack > /voipack.sql
    # J: Q. W7 g& F1 S, t& s
  5. pg_dump -U postgres regserver > /regserver.sql
    & v" `9 O& Q) `/ y7 ]- H  R
  6. tar -cvjf /aavm.tgz.bz2 /usr/local/aavm
      a3 y8 b. F6 k/ \) y7 D. p0 Q" O
  7. tar -cvjf /oracle.tgz.bz2 /var/oracle
    ' R$ [$ H, {5 d
  8. scp /voipack.sql root@218.242.214.20:/root/218.242.214.23_backup
    . U, _# D* J; M$ d3 T$ p! C; C
  9. scp /regserver.sql root@218.242.214.20:/root/218.242.214.23_backup, M* i2 H8 u4 |4 d
  10. scp /aavm.tgz.bz2 root@218.242.214.20:/root/218.242.214.23_backup
    6 T! I9 ?" t! f
  11. scp /oracle.tgz.bz2 root@218.242.214.20:/root/218.242.214.23_backup
复制代码

! M( D2 {' Y: F- l
) l+ k% Q; K+ N: I' K. u. e, e将23上产生的备份文件copy到218.242.214.20:/root/218.242.214.23_backup路径下
2 f5 S- T1 g7 t& N' L, [% r$ u3 D
同样的方法可以将假设B服务器上的数据备份到A服务器,实现双机的互备。
当流科技-专业Discuz建站、仿站业务,专注处理discuz!论坛挂马,专注提供论坛托管维护服务! 提供Discuz论坛空间、VPS、云服务器!咨询QQ 569160956 778521512
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

精彩课程推荐

抱歉,当前存在网络问题或服务器繁忙,详细错

主讲:我心枫叶 Discuz!教程

Discuz!论坛网盘附件免跳转下载(手机版网

主讲:当流科技 Discuz插件

discuz论坛搬家教程,如何搬迁到新服务器?

主讲:风雨兼程 Discuz!教程

宝塔面板绑定域名无法访问后台怎么解决?

主讲:风雨兼程 服务器学院

Discuz!X3.3全新安装和升级后快速回复框丢

主讲:风雨兼程 Discuz!教程

宝塔面板phpmyadmin 数据库502 Bad Gateway

主讲:当流科技 服务器学院

Discuz! X3.4虚拟人气虚拟用户在线插件 完

主讲:执手天涯 Discuz插件

宝塔面板mysql怎么用navicat 连接数据库呢

主讲:当流科技 服务器学院

商务合作

0551-66191059
service#dangliu.net
点击这里给我发消息
dz论坛/Discuz!论坛新手

关注微信公众号

QQ扫码 加 DZ技术群