Linux作为新一代网络操作系统,在服务器方面的应用越来越广泛。作为专门的网络
服务器,一个重要功能就是对服务器数据进行备份,以确保数据的安全。本文将介绍
在Linux系统下一些常用的数据备份方法。
1、本机上数据的手工备份
  Linux系统上配有功能强大的tar命令,可以灵活地备份数据。tar最初是为了制
作磁带备份而设计的把文件和目录备份到磁带中,然后从磁带中提取或恢复文件。当
然,现在我们可以使用tar来备份数据到任何存储介质上。tar非常易于使用稳定可靠
,而且在任何 Linux系统上都有这个命令。因此是最经常使用的备份工具。
  (1)使用tar命令备份数据的格式如下:
  $ tar cvf backup.tar /home/html
  上述命令是将/home/html 目录下的所有文件打包成tar文件backup.tar。
  cvf是tar的命令参数。
  c代表创建一个档案文件,
  v代表显示每个备份的文件名字,
  f表示tar创建的档案文件名是后面的backup.tar,
  /home/html 代表tar要备份的文件或和目录名。
  (2)使用tar命令恢复数据的格式如下:
  $ tar xvf backup.tar
  上述命令将备份文件backup.tar恢复到当前目录下。
  通常情况下,tar对文件进行备份的时候并不对文件进行压缩,因此备份文件的
尺寸非常大。使用如下的命令,将使tar在备份结束以后,自动使用gzip命令对备份
文件进行压缩,得到一个相应的gz文件。
  $ tar zcvf /home/html
  这样,我们可以得到压缩文件。
  是压缩的备份文件。
2、本机数据的自动备份
  使用上述命令,我们可以手工备份数据,但是每天定时做这些操作可能比较繁琐
。当然,Linux为我们提供了强大的工具来进行自动备份。这就是cron。
  cron是一个后台进程,一旦启动,将根据自己的配置文件定时地执行任务。我们
可以编写一个shell脚本文件来进行文件备份,然后让cron定时地启动这个脚本文件
来对数据进行备份。
  例如,我们每天备份/home/html目录下的所有的文件
到/home/admin/backup/backup_xxxx目录下,xxxx代表备份的日期。这个工作,可
以编写一个如下的shell脚本backup.sh来进行:
  #!/bin/sh
  cd /home/admin/backup
  year=`date +%Y`
  month=`date +%m`
  day=`date +%d`
  now=$year-$month-$day
  mkdir backup_$now
  tar zcvf backup_$now/ /home/html
  这个脚本在备份数据的时候,自动读取系统日期,然后以系统当前的日期建立一
个新的目录,将备份的数据打包压缩放在这个目录中。我们可以在系统中通过执行:
$sh backup.sh ,完成备份工作。如果键入:$chmod +x backup.sh ,可以将
backup.sh设置为可运行。这样,我们就可以直接通过键入$./backup.sh来运行备份
脚本文件了。一般情况下,我们希望在系统负载不是最大的时候来进行数据备份。通
常,我们可以选择每天的凌晨3:00来进行数据备份(这段时间,你的服务器访问的人
数应该最少吧?)。把一切工作交给 cron吧。 cron启动以后,它检
查/var/spool/cron/目录中的配置文件来到所要执行的任务和执行任务的时间,依
据这些设定在规定的时间执行规定的任务。
这个任务配置文件可以由crontab -e 命令来编辑。
  其格式为每行代表一个任务和规定的执行时间。
  每行由6个域组成:
  分钟小时每月的天月星期命令
  上述6个域之间用空格或Tab分开,其中:
  分钟:分钟域,值的范围是0到59
  小时:小时域,值的范围是0到23
  每月的天:日期,值的范围是1到31
  月份:月份,值的范围是1到12
  星期:星期,值的范围是0到6,星期日值为0 命令。
  所要运行的命令特别的,如果一个域是‘*’,表明命令可以在该域所有可能的
取值范围内执行。如果一个域是由连字符隔开的两个数字,表明命令可以在两个数字
之间的范围内执行(包括起止两个数字本身)。如果一个域是由逗号隔开的一系列值组
成的,表明命令可以在这些值组成的范围内执行。现在,我们编写一个文件,用以在
每天的凌晨3:00启动备份shell程序。
  键入:crontab -e 命令,
  然后输入: 0 3 * * * backup.sh 输入完成后,存盘退出。
  键入crontab -l 来检查刚才的输入是否正确。好了,这样只要Linux服务器不关
机,每天凌晨3:00cron都会自动启动backup.sh脚本来对数据进行备份的。你就可以
高枕无忧了。
  FMS的备份方法
  一、备份数据说明:
  Foxmail Server系统的数据分为以下几种:
  邮件数据:存在于系统相应目录中。这是比较重要的数据,主要是存放所有用户
的邮件内容,邮件信息,邮箱信息,过滤器信息。
  目录结构为:[邮件数据存放根目录]/[服务域名]/[用户帐号第一个字母小写]/[
用户帐号]/[邮箱结构]。例如,在默认安装的情况下一个在 bodachina域中的
admin用户他的邮箱目录为:/home/webmail/bodachina/a/admin用户信息数据:
存在于数据库中。存放的是用户的个人信息,如用户名,密码等。
  用户地址本数据:存在与OPENLDAP中。主要是用来存放用户的地址本信息。在默
认安装的情况下,数据存放在/usr/local/var /openldap-ldbm日志文件:包括邮件
服务器日志文件,WEB服务器日志文件等,存在于各个服务器相关目录中。在默认安
装的情况下,WEB服务器的日志文件会存放在/usr/local/resin/log;邮件服务器的
日志文件回存放在/var/log/qmail的目录中。
  临时数据:存放在系统临时目录中,通常是/tmp/webuser目录,用来存放系统的
临时数据。
  二、数据备份方法说明
linux安装数据库
  数据备份分为以下步骤:
  建立备份数据存放目录、日志存放目录。用户可以把备份数据存放
在/home/foxmail/backup;对邮件数据进行打包。根据不同的系统安装情况,邮件数
据目录可能不同。默认情况下,邮件数据目录被定在/home/webmail/下。具体情况请
查阅系统安装手册。打包命令:
  cd /home/
  tar vcvf webmail mv
/home/foxmail/backup/xxx_其中xxx是一个事件注释。
  对用户信息从数据库中倒出,备份。具体命令是:mysqldump –u[数据库用户名
] –p[数据库密码] [数据库名] > userdata.sql
  默认情况下,系统安装的数据库用户名,密码和数据库名都是:qmail
  导出后,请把userdata.sql移动到备份数据存放目录中。具体命令:
  cd /home/foxmail/backup
  mysqldump –uqmail –pqmail qmail >xxx_userdata.sql
或者直接把数据库目录打包备份,在mysql数据库存放数据的目录下可以看到一个名
叫qmail的数据库,用户可以用上面的打包方式对qmail数据库进行数据备份。
  对地址本数据进行备份。对OPENLDAP的数据目录进行打包。默认情况下是
/usr/local/var/目录,具体命令:tar zcvf [LDAP数据目录名],

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。