`
haiouc
  • 浏览: 118490 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Linux通过脚本实现远程自动备份

阅读更多

      考虑到在本机上备份数据,一旦该机器硬盘出现故障,数据无法取出。远程手动备份数据费时费力且不及时。最好的方法就是通过脚本实现远程自动互备。但远程无论是通过SSH登陆,还是通过scp拷贝文件都需要输入密码。为了克服这个问题,首先需要实现不需要密码的SSH登陆,这样就可以使用rsync,scp,rexec等命令来做的远程备份了。

===> 实现远程备份的方案较多,这仅是方法之一

 

  1. 设置无需密码的ssh登陆方法如下:
  假设A,B两服务器,现在需要在A机上用root登陆B机,而不需要输入密码,那我们可按照下面的步骤来做:

 

  1)在A机上生成钥匙对,执行以下命令:
  ssh-keygen -t rsa
  Generating public/private rsa key pair.
  Enter file in which to save the key (/root/.ssh/id_rsa): /root/.ssh/id_rsa
  Enter passphrase (empty for no passphrase):直接回车
  Enter same passphrase again:直接回车
  Your identification has been saved in /root/.ssh/id_rsa.
  Your public key has been saved in /root/.ssh/id_rsa.pub.
  The key fingerprint is:
  f6:61:a8:27:35:cf:4c:6d:13:22:70:cf:4c:c8:a0:23 root@host1

  这样,在/root/.ssh/路径下会生成id_rsa,和id_rsa.pub,其中id_rsa是密钥,id_rsa.pub是公钥。

 

  2)把在A机生成的id_rsa.pub拷贝到B机上,假设拷贝到B机的临时目录下,如:
  scp /root/.ssh/id_rsa.pub root@218.242.214.20:/tmp

 

  3)用root帐号登陆B机,进入其主目录,创建authorized_keys文件,并设置好权限。
  cd ~/.ssh
  cat /tmp/id_rsa.pub >>authorized_keys
  chmod 400 authorized_keys
  rm -f /tmp/id_rsa.pub

 

  4)测试
  在A机上转到root帐号,尝试登录B机。看看是不是不要密码.

  说明:
  authorized_keys文件的权限很重要,如果设置为777,那么登录的时候,还是需要提供密码的。
  记得将临时目录下的id_rsa.pub删除,养成个好习惯。
  本方法在Red Hat9.0上测试通过。

 

 

  2. 编辑crontab文件
  vi /etc/crontab

  如设置每天凌晨3:00执行cron.daily中的脚本:
  00 3 * * * root run-parts /etc/cron.daily

 

  3.编辑cron.daily中的脚本
  cd /etc/cron.daily/

 

  vi backupdb
  pg_dump -U postgres voipack > /voipack.sql
  pg_dump -U postgres regserver > /regserver.sql
  tar -cvjf /aavm.tgz.bz2 /usr/local/aavm
  tar -cvjf /oracle.tgz.bz2 /var/oracle
  scp /voipack.sql root@218.242.214.20:/root/218.242.214.23_backup
  scp /regserver.sql root@218.242.214.20:/root/218.242.214.23_backup
  scp /aavm.tgz.bz2 root@218.242.214.20:/root/218.242.214.23_backup
  scp /oracle.tgz.bz2 root@218.242.214.20:/root/218.242.214.23_backup

 

  将23上产生的备份文件copy到218.242.214.20:/root/218.242.214.23_backup路径下
  同样的方法可以将假设B服务器上的数据备份到A服务器,实现双机的互备。

分享到:
评论

相关推荐

    Linux 下通过脚本实现远程自动备份

    ### Linux下通过脚本实现远程自动备份 在现代IT环境中,数据备份是非常关键的一个环节,尤其是在服务器维护过程中。本文将详细介绍如何在Linux环境下利用脚本来实现远程自动备份,包括搭建SSH无密码登录环境、配置...

    linux自动备份文件 并上传到远程服务器 脚本实现

    本文将详细介绍如何利用Shell脚本在Linux系统上实现MySQL数据库的定时自动备份,并通过FTP协议上传至远程服务器。 #### 目标需求分析 目标是开发一个脚本,该脚本能定期执行MySQL数据库的备份,并将这些备份文件...

    嵌入式系统/ARM技术中的Linux 下通过脚本实现远程自动备份

    最好的方法就是通过脚本实现远程自动互备。但远程无论是通过SSH登陆,还是通过scp拷贝文件都需要输入密码。为了克服这个问题,首先需要实现不需要密码的SSH登陆,这样就可以使用rsync,scp,rexec等命令来做的远程...

    如何在linux下实现mysql数据库每天自动备份 txt

    本文将详细介绍如何通过编写Shell脚本并结合Cron定时任务来实现MySQL数据库的每日自动备份。 #### 一、准备阶段 在开始之前,请确保您的Linux系统已经安装了MySQL服务器以及相关的命令行工具。如果尚未安装,可以...

    linux下远程定时备份oracle数据库

    在远程备份Oracle数据库时,你需要获取Oracle数据库服务器的SSH访问权限,并配置相应的SSH密钥对,以便无密码登录。这样可以避免每次备份时手动输入密码,增加自动化程度。同时,确保Linux环境中的用户有执行Oracle...

    基于Linux的数据远程自动备份实现方法 (1).pdf

    总的来说,基于Linux的数据远程自动备份实现需要综合运用多种工具和技术,通过合理的规划和配置,可以实现高效、安全的数据保护,确保业务的连续性和数据的完整性。对于任何使用Linux作为服务器操作系统的组织来说,...

    基于Linux的数据远程自动备份实现方法.pdf

    - **Cron**:Linux的定时任务调度器,可以设置定期执行备份脚本,实现自动备份。 - **BackupPC**:一个集中化的、面向Windows和Linux客户端的备份系统,支持增量和全量备份,适合大规模环境。 - **Duplicity**:...

    linux远程复制备份文件

    远程复制备份文件,实现从一台机器复制文件到另外一台机器 用户名密码等在脚本中配置,实现自动输入,自动复制,完成备份

    windows下通过ssh自动备份的脚本

    在Windows操作系统中,SSH(Secure Shell)是一种网络协议,用于安全地远程登录和执行命令,常见于Linux系统,但也可通过工具在Windows下实现。本文将详细介绍如何利用SSH在Windows环境下创建一个自动备份脚本,以...

    Oracle备份脚本(Linux)

    这篇文章将详细介绍 Oracle 备份脚本在 Linux 系统中的实现,包括备份脚本的编写、备份目录的设置、备份日志的记录、磁盘空间的检查、远程服务器的备份等多个方面。 备份脚本的编写 备份脚本的编写是 Oracle 备份...

    Linux+ftp+自动上传备份文件脚本

    这个脚本可以通过`cron`定时执行,实现自动化备份。 6. **Crontab定时任务**: `crontab`是Linux的定时任务调度工具,用于安排周期性执行的任务。通过编辑`crontab -e`来添加定时任务,如`0 0 * * * /path/to/...

    python交换机自动备份脚本

    Python交换机自动备份脚本是一种高效管理网络设备的方法,它能帮助网络管理员便捷地备份多个交换机的配置,包括华为、思科、华三和Aruba等不同品牌的设备。这样的脚本大大提高了工作效率,减少了手动操作的繁琐和...

    windows&linux svn自动化全备份&增量备份脚本

    - `rsync`:Linux下的文件同步工具,可用于实现远程备份。 - `cron`:Linux的定时任务调度器。 - `Task Scheduler`:Windows的任务计划程序。 【压缩包子文件的文件名称列表】: - **linux下-SVN全量和增量备份...

    oracle自动备份、Oracle远程备份

    4. **第三方工具**:除了Oracle自带的工具,市场上还有许多第三方备份软件,如NetBackup、Tivoli、Veritas BackupExec等,它们支持与Oracle的集成,实现自动化备份。 Oracle远程备份主要涉及到将备份数据存储在远离...

    文件自动备份脚本ForLinuxWithSVN

    7. **定时任务设置**:为了实现自动备份,脚本可能会与Linux的cron定时任务服务集成,按照设定的时间间隔自动运行。 附带的"AutoCommit使用手册(Linux).doc"文档很可能是详细的操作指南,涵盖了如何安装和配置SVN,...

    自动实现linux平台下的sybase数据库转储及远程备份.pdf

    标题中的“自动实现Linux平台下的Sybase数据库转储及远程备份”是指在Linux操作系统环境下,利用Sybase数据库的特性以及Linux的定时任务机制,结合FTP远程传输技术,自动化完成数据库的备份并将其存储到远程服务器的...

    linux下Oracle自动备份到远程

    通过上述方法,在Linux环境下实现Oracle数据库的自动备份及远程传输已经成为可能。这种方法不仅简化了备份流程,提高了数据的安全性,也为企业的IT运维工作带来了极大的便利。当然,针对不同的应用场景,还需要根据...

    用脚本实现异地备份重要的数据库文件

    本文将详细介绍如何通过编写脚本实现远程服务器重要数据的异地备份。 #### 引言 在当今的信息时代,数据已经成为企业最重要的资产之一。对于那些依赖于专业平台程序(如ASP+SQLServer)构建的网站来说,虽然网站...

    Linux下利用NBD实现远程实时备份.pdf

    通过设置相应的脚本或工具,可以定时或实时地将本地数据同步到远程NBD设备上,实现数据的备份。这种方法特别适用于需要快速响应的环境,如无盘工作站或者对数据安全性有高要求的场景。 然而,NBD的性能受到网络条件...

Global site tag (gtag.js) - Google Analytics