首页 > 开发 > 综合 > 正文

Linux上数据自动备份与刻录整合

2024-07-21 02:36:42
字体:
来源:转载
供稿:网友

  作者:蒋年华
  
    linux是公认的运行稳定、安全性较高的操作系统,但是服务器硬件故障和各种意外因素都会导致Linux服务器硬盘上数据丢失。 非凡对于运用在商业领域中的Linux服务器,数据的安全性、完整性和灾难后的数据恢复能力是每一个Linux系统治理员最为关心的问题。Linux作为新一代网络操作系统,在服务器方面的应用越来越广泛。作为专门的网络服务器,一个重要功能就是对服务器数据进行备份,以确保数据的安全。
  
    常见的Linux数据备份方法
  
    Linux操作系统中的数据备份工作是Linux系统治理员的重要工作和职责。传统的Linux服务器数据备份的方法很多,备份的手段也多种多样。常见的Linux数据备份方式仅仅是把数据通过TAR命令压缩拷贝到磁盘的其它区域中去。还有比较保险的做法是双机自动备份,不把所有数据存放在一台计算机上,否则一旦这台计算机的硬盘物理性损坏,那么一切数据将不复存在了。所以双机备份是商业服务器数据安全的基本要求。通常情况下使用的双机备份是双机定时备份文件,而不是实时的。要实现双机备份,必须先在单机上备份所有的文件,然后再把备份文件传输到其它机器上。这样可能比较麻烦,而且有不足之处。例如,这样做对于不需要备份的文件也要在网络上传输,会造成带宽的浪费。
  
    实现备份与刻录的整合
  
    为了弥补Linux上常见备份方法的不足,本文将讲述使用sitback软件将Linux服务器磁盘中的指定数据进行自动备份,并刻录到CDR光盘的方法,以达到数据在光盘中安全存储的目的。此方法将数据备份和光盘刻录两个步骤整合在一起,自动化程度和安全性较高,而且sitback还能实现Linux网络中不同计算机之间的数据备份。
  
    sitback简介
  
    sitback是一款基于开源协议开发的Unix平台下的自动备份软件。与一些Linux开放源码软件不同,sitback开发者仅提供源代码压缩包的形式给Linux用户下载。尽管sitback没有提供安装方便的RPM格式,但是sitback的安装采用了基于GNU协议的自动安装和配置的automake/autoconf模式,使得一般的Linux系统治理员能顺利地安装调试好sitback。
  
    sitback的获取和安装
  
    目前sitback官方网站www.mrbean.dk提供的sitback最高版本为0.3.1。为了能最大程度地体现sitback的最佳性能,sitback的开发者建议Linux用户不要把sitback的开发版本和Beta测试版本使用到实际的数据备份中去,以防出现意外。
  
    安装sitback源代码压缩包可以根据以下几个简单的步骤完成:
  
    ◆建立临时解压目录 /temp;
  
    ◆把sitback压缩包拷贝到/temp目录,并使用“tar xvfz sitback-x.x.x.tar.gz”命令对sitback源代码压缩包进行解压;
  
    ◆执行./configure;
  
    ◆执行make;
  
    ◆执行make install。
  
    通过以上几个步骤可以迅速地安装好sitback。请注重使用超级用户root身份对sitback进行安装。
  
    编译完sitback源代码压缩包之后,接着要在用户根目录中的Home目录下创建一个.sitback目录。该目录用来存放一些数据备份和刻录时产生的临时文件,以及一些脚本文件或磁盘驱动器参数文件。
  
    同所有通过编写脚本文件来运行的程序一样,sitback也需要Linux用户自行编写备份和刻录的脚本文件,并让Linux系统把sitback当作一个备份进程(backup-daemon)来自动执行。使用高效安全的Webmin治理系统来自动执行sitback也很方便。总之,用最少的代码编写出适合Linux系统实际情况的脚本是最为安全、高效的。

  
    将数据刻录至光盘的条件
  
    让sitback自动备份指定的磁盘数据,并将备份的数据直接刻录到光盘中去,必须考虑的条件主要有以下几点:
  
    ◆sitback运行的时间,即备份数据时间;
  
    ◆要备份的源目录;
  
    ◆要备份到的目的目录;
  
    ◆选择存储介质,包括磁介质、光存储介质等;
  
    ◆是否要对备份数据进行校验比较,提高备份安全性;
  
    ◆备份模式,全备份或部分数据备份;
  
    ◆备份数据还原问题。
  
    sitback提供了很多参数供用户选择,具体参数和用法可以参考sitback源代码压缩包里的开发文档和具体的使用手册。
  
    实例运用
  
    实例1
  
    假设某Linux服务器中有以下这些目录:
  
    ◆/usr/smbdata 包含大多数应用软件和用户数据文件;
  
    ◆/usr/grafik 包含有重要的图形文件。
  
    为了备份以上两个目录数据,可以编写一个脚本文件,代码及说明如下:
  
  ARCHIVE=/dev/st0
  #定义要备份的数据
    (ARCHIVE表示要备份的磁盘驱动器、文件目录,甚至主机,例如:
    “backuphost:/dev/st0”、
    “backup@backuphost:/dev/nrt0”、
    “me@192.168.1.17:/tmp/temp_backup.tar.gz”等)
  TARGET=/usr/smbdata
  #要备份的目的目录
  TARGET=/usr/grafik
  #要备份的目的目录
  COMPRESSION=YES
  #备份模式为对数据进行压缩后备份
  VERIFY=YES
  #对备份数据进行校验
  REPORTFILE=/usr/smbdata/latest_backup.txt
  #产生备份报告文件
  REPORTPRINTER=//penguin4/Canon
  #打印机信息
  SMBUSER=computer1
  #SAMBA用户端计算机名
  SMBPASSWD=123abc
  #访问密码
  VOLUMENAME=Full backup - Taastrup
  TIME=1;02;00
  #备份时间,天天2:00进行备份
  TIME=2;02;00
  TIME=3;02;00
  TIME=4;02;00
  TIME=5;02;00
  TIME=6;02;00
  
    以上是一个简单的数据自动备份脚本的样本文件。假如想使用SysV初始化,可以在/etc/rc.d/init.d/中创建一个小的脚本文件来运行sitback。在上述脚本最后一行加入“/usr/local/bin/sitback -d data”才能使得sitback自动运行。查看每次备份的情况时,可以打开临时文件/.sitback/sitback.log,里面有sitback运行的具体记录。
  
    实例2
  
    使用sitback将Linux服务器中数据自动备份、刻录两个步骤进行整合。
  
    为了达到数据备份和光盘刻录整合的目的,需要使用以下脚本来实现。它是来自sitback官方网站的样板脚本。
  
  # Full backup of /home/bean, excluding Images
  #对/home/bean,目录进行全备份
  # bean@mrbean.dk 2002
  
  # Write the archive to my cd-writer at 0,0,0
  #将备份数据在指定时间写入CDR刻录机中
  # (Iomega ZipCD 650, USB), use speed=2, so that i can 刻录机硬件参数
  # do other things while the backup is cooking. Also
  # use on-the-fly copy to avoid too mUCh temporary data.
  # (my machine has no problem supporting this)
  #
  ARCHIVE=0,0,0
  SPEED=2
  #Iomega ZIPCD 650, USB刻录机写入速度,
  CD ON THE FLY
  #写入方式
  # It is a huge advantage to have the files Directory available
  # on the cd, not inside an archive, when restoring my
  # setup, hence the type 'CDRW'
  #
  TYPE=CDRW
  #光盘类型,CDRW可擦写光盘
  
  # Targets... Exclude Images
  TARGET=/home/bean
  #目标文件目录
  EXCLUDE=/home/bean/Images
  #目标文件目录中不用备份的目录(即排除备份的目录)
  # Various stuff. Compression and verification will automagically
  # be turned off by sitback, but i do not want the warnings either,
  # so i just turn it off from the beginning...
  #
  VERIFY=NO
  #对备份数据进行校验
  COMPRESSION=NO
  #备份数据无需压缩
  
  # When done, put a backup report in /home/bean/backup.log
  #
  REPORTFILE=/home/bean/backup.log
  #产生的备份报告文件及路径
  
    关于sitback备份数据的恢复及SSH等安全措施,此处不予举例说明。
总的来说,sitback是一款不可多得的Linux操作系统平台中优秀的数据备份和恢复工具,使用sitback可以使得企业实现安全而高效的备份。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表