Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1261820
  • 博文数量: 1211
  • 博客积分: 10010
  • 博客等级: 上将
  • 技术积分: 14340
  • 用 户 组: 普通用户
  • 注册时间: 2008-06-09 11:20
文章分类

全部博文(1211)

文章存档

2011年(1)

2008年(1210)

我的朋友

分类: 服务器与存储

2008-06-13 00:07:50

     3、差分备份(differential backup)

        首先每月进行一次完全备份,然后备份从上次进行完全备份后更改的全部数据文件。一旦发生数据丢失,使用一个完全备份和一个差分备份就可以恢复故障以前的状态。管理员先在星期天进行一次系统完全备份,然后在接下来的几天里,管理员再将当天所有与星期天不同的数据(新的或修改过的)备份到磁带上。差分备份策略在避免了以上两种策略的缺陷的同时,又具有了它们的所有优点。首先,它无需每天都对系统做完全备份,因此备份所需时间短,并节省了磁带空间,其次,它的灾难恢复也很方便。系统管理员只需两盘磁带,即星期一磁带与灾难发生前一天的磁带,就可以将系统恢复。

        增量备份可以减少备份时间,有效地利用处理器资源和备份I/O带宽,而完全备份在恢复上有很大的优势。现在一些企业备份管理软件提供了一个折衷的办法:将一个基本完全备份和几个增量备份合成为一个较新的“完全备份”。合成的完全备份是通过整合完全备份和增量备份的内容,随后写入不同的介质生成新备份。这个新的合成完全备份成为以后增量备份的基准。

        合成完全备份从物理资源(磁带、磁带驱动器和带宽)和时间来看消耗很大,但是简化了恢复过程。

        在实际应用中,备份策略通常是以上几种的结合。例如每周一至周六进行一次增量备份或差分备份,每周日进行全备份,每月底进行一次全备份,每年底进行一次全备份。

        4、确定要备份的内容

        在备份和还原系统时,Linux 基于文件的性质成了一个极大的优点。在 Windows 系统中,注册表与系统是非常相关的。配置和软件安装不仅仅是将文件放到系统上。因此,还原系统就需要有能够处理 Windows 这种特性的软件。在 Linux 中,情况就不一样了。配置文件是基于文本的,并且除了直接处理硬件时以外,它们在很大程度上是与系统无关的。硬件驱动程序的现代方法是,使它们以动态加载的模块的形式可用,这样内核就变得更加与系统无关。不同于让备份必须处理操作系统如何安装到系统和硬件上的复杂细节,Linux 备份处理的是文件的打包和解包。

        一般情况下,以下这些目录是需要备份的:

        • /etc

        包含所有核心配置文件。这其中包括网络配置、系统名称、防火墙规则、用户、组,以及其他全局系统项。

       • /var
  
       包含系统守护进程(服务)所使用的信息,包括 DNS 配置、DHCP 租期、邮件缓冲文件、HTTP 服务器文件、db2 实例配置,等等。

        • /home

        包含所有用户的默认用户主目录。这包括他们的个人设置、已下载的文件和用户不希望失去的其他信息。

        • /root

        是根(root)用户的主目录。

        • /opt

        是安装许多非系统文件的地方。IBM 软件就安装在这里。OpenOffice、JDK 和其他软件在默认情况下也安装在这里。

        有些目录是应该考虑不 备份的。

        • /proc

        应该永远不要备份这个目录。它不是一个真实的文件系统,而是运行内核和环境的虚拟化视图。它包括诸如 /proc/kcore 这样的文件,这个文件是整个运行内存的虚拟视图。备份这些文件只是在浪费资源。

        • /dev

        包含硬件设备的文件表示。如果计划还原到一个空白的系统,那就可以备份 /dev。然而,如果计划还原到一个已安装的 Linux 系统,那么备份 /dev 是没有必要的。

        其他目录包含系统文件和已安装的包。在服务器环境中,这其中的许多信息都不是自定义的。大多数自定义都发生在 /etc 和/home 目录中。包括:

        在 UNIX 或 Linux 系统中,大部分系统配置文件位于 /etc 目录,但是您应该考虑对所有可能的文件(以及可能的位置)进行备份,具体包括:

    DNS 域信息 (/var/bind) ;

NIS/NIS+ 文件和配置 (/var/yp)

Apache 或其他 Web 服务器配置(/var/apache、/etc/apache 或 /usr/local/apache) ;

邮件文件或文件夹(/var/mail 和 /usr/mail)

Lightweight Directory Access Protocol (LDAP)

服务器数据(/var/ldap 或 /usr/local/ldap) ;

安全证书 ;

自定义内核驱动程序 ;

内核配置或构建配置和参数 ;

许可密钥和序列号 ;

自定义脚本和应用程序 ;

用户/root 登录脚本 ;

邮件配置;


        特别是,如果您使用了像 Cyrus Internet Message Access Protocol (IMAP) 这样的解决方案,其中对用户邮件文件夹进行了特殊的记录和索引。

        5、 Linux 常用备份恢复命令

        a)tar

        tar工具是以前备份文件的可靠方法,几乎可以工作于任何环境中,Linux老用户一般都信赖它。 Linux中以.tar结尾的文件都是用tar创建的。它的使用超出了单纯的备份,可用来把许多不同文件放到一起组成一个易于分开的文件。tar是从 Tape ARchiver备份工具起步的。 tar是一个基于文件的命令,它本质上是连续地、首尾相连地堆放文件。使用tar可以打包整个目录树,这使得它特别适合用于备份。归档文件可以全部还原,或从中展开单独的文件和目录。备份可以保存到基于文件的设备或磁带设备上。文件可以在还原时重定向,以便将它们重新放到一个与最初保存它们的目录(或系统)不同的目录(或系统)。tar是与文件系统无关的,它可以使用在ext2、ext3、jfs、 Reiser和其他文件系统上。

        tar命令格式

    备份:tar <选项> <-cf 备份文件或设备> <备份路径>

恢复:tar <选项> <-xf 备份文件或设备> [-C 恢复路径]

        常用选项:

    -M:分卷处理

-p:保留权限

-T filename:指定备份文件列表

-N DATE:备份指定日期之后修改的文件

-z:用GNU的gzip压缩文件或解压。

-Z:用compress压缩文件或解压。

-j:用bzip2压缩文件或解压。

        tar 命令操作举例

        1. 跨越多张软盘备份系统/usr/local下的所有内容,同时进行写入校验

        # tar -cWMf /dev/fd0 /usr/local

        2. 备份/目录下自04/11/2006改过的文件到磁带设备/dev/st0中

        # tar -cvf /dev/st0 -N 04/11/2006

        3.保持文件权限备份/目录(不包括/proc)到磁带设备/dev/st0中

        # tar -cpf /dev/st0 / --exclude=/proc

        4. 恢复恢复备份到/

        # tar -xpf /dev/st0 -C /

        5.从备份文件恢复指定的文件etc/passwd

        # tar -xpf /dev/st0 etc/passwd

        6.做一个完全备份

        # tar -zcvf /backup/bp_full.tar.gz /

        7.每隔7天做增量备份

        # tar -c -T /tmp/filelist -f /backup/bp_add.tar.gz

        b)cpio命令

        GNU cpio工具像tar一样从命令提示行启动程序。与tar相比cpio更复杂,但是也更为可靠。因为如果一个tar文件中某处有一个坏块,就不能对备份文件的其它部分进行访问,而使用cpio,只有坏块不能被访问。 cpio创建一个称为copy-out mode的备份,备份存档中包含了文件和所有者、时间及访问许可等信息。cpio需要一个假定要备份的文件列表。创建列表的一个最方便的方法就是使用ls 命令。

阅读(482) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~