月度归档:2014年07月

时间点恢复

什么是冷恢复?

如果关键数据库空间由于磁盘故障或损坏的数据而受损,则数据库服务器将自动脱机。如果关键数据库空间停止运行,您必须对所有关键数据库空间执行冷恢复

要进行冷恢复,数据库服务器在 Dynamic Server 上必须处于脱机方式或在 Extended Parallel Server 上处于微内核方式。如果数据库服务器已停止运行,您可以对所有存储空间执行冷恢复,而不管它们是处于联机还是脱机状态。

当数据库服务器发生故障时请执行冷恢复,或者需要执行以下任务之一:

  • 时间点恢复
  • 日志点恢复
  • 整个系统恢复(仅 IDS)
  • 导入恢复
  • 重命名块(仅 IDS)

冷恢复首先对所有关键存储空间进行物理恢复,接着恢复非关键存储空间,最后恢复逻辑日志。根数据库空间的保留页恢复后,数据库服务器进入恢复方式。当逻辑恢复完成后,数据库服务器进入静默方式。使用 onmode 命令使数据库服务器变成联机状态。关于更多信息,请参阅执行冷恢复继续阅读

如何恢复 Linux 上删除的文件–reiserfs 文件系统的恢复

reiserfs 文件系统所采用的 B+ 树的动态变化特性为恢复删除文件增加了很多困难。本文将逐渐分析在 reiserfs 文件系统中删除文件前后磁盘数据的变化,从而探讨恢复删除文件的方法。

在本系列文章的上一部分中,我们详细介绍了 reiserfs 文件系统在磁盘上的存储结构,以及访问文件系统所使用的 B+ 树和内部数据结构。在本文中,我们将继续讨论 reiserfs 文件系统中如何恢复已删除的文件。

与 ext2/ext3 类似,要想确定能否恢复已删除的文件,必须弄清楚文件系统在删除文件时都执行了哪些操作,磁盘的数据块中保留了哪些相关信息,以及如何从这些信息中恢复出相关数据来。 继续阅读

如何恢复 Linux 上删除的文件–reiserfs 文件系统原理

reiserfs 对于小文件的存取速度非常高,这取决于它所采用的精美的设计:reiserfs 文件系统就是一棵动态的 B+ 树,小文件和大文件的尾部数据都可以通过保存到叶子节点中而加快存取速度。本文将探讨 reiserfs 的设计和实现内幕,并从中探讨恢复删除文件的可能性。

reiserfs 是由 namesys 公司的 Hans Reiser 设计并开发的一种通用日志文件系统,它是第一个进入 Linux 标准内核日志文件系统。从诞生之日起,reiserfs 就由于其诸多非常有吸引力的特性而受到很多用户的青睐,迅速成为 Slackware 等发行版的默认文件系统。它也一度也是 SUSE Linux Enterprise 发行版上的默认文件系统,直到 2006 年 10 月 12 日 Novell 公司决定将默认文件系统转换到 ext3 为止。尽管其主要设计人员 Hans Reiser 由于涉嫌杀害妻子遭到指控而入狱,从而导致他不得不试图出售 namesys 公司来支付庞大的诉讼费用,但是 reiserfs 已经受到广大社区开发人员和用户的极大关注,有很多志愿者已经投入到新的 reiserfs 4 的开发工作中来。本文中的介绍都是基于最新的稳定版本 3.6 版本的,所引用的代码都基于 2.6.23 版本的内核。 继续阅读

如何恢复 Linux 上删除的文件–ext4

为了支持更大的文件系统,ext4 对 ext3 的现有实现进行了一系列扩充,使用 48 位的块号来增大块号寻址范围,并采用 extent 的设计来简化对数据块的索引,这势必会影响到磁盘数据结构的变化,以及删除文件的恢复。本文将逐一介绍 ext4 在对大文件系统支持方面所采用的全新设计,并探讨 ext4 文件系统中文件的删除和恢复的相关技术。

ext3 自从诞生之日起,就由于其可靠性好、特性丰富、性能高、版本间兼容性好等优势而迅速成为 Linux 上非常流行的文件系统,诸如 Redhat 等发行版都将 ext3 作为默认的文件系统格式。为了尽量保持与 ext2 文件系统实现更好的兼容性,ext3 在设计时采用了很多保守的做法,这些保守的设计为 ext3 赢得了稳定、健壮的声誉,迅速得到了 Linux 用户(尤其是原有的 ext2 文件系统的用户)的青睐,但同时这也限制了它的可扩展能力,无法支持特别大的文件系统。 继续阅读

如何恢复 Linux 上删除的文件–ext3

作为 ext2 文件系统的后继者,ext3 文件系统由于日志的存在,使其可用性大大增加。尽管 ext3 文件系统可以完全兼容 ext2 文件系统,但是由于关键的一点区别却使得在 ext3 上恢复删除文件变得异常困难。本文将逐渐探讨其中的原因,并给出了三种解决方案:正文匹配,元数据备份,以及修改 ext3 的实现。

本系列文章的前 3 部分详细介绍了 ext2 文件系统中文件的数据存储格式,并讨论了各种情况下数据恢复的问题。作为 ext2 文件系统的后继者,ext3 文件系统可以实现与 ext2 文件系统近乎完美的兼容。但是前文中介绍的各种技术在 ext3 文件系统中是否同样适用呢?ext3 文件系统中删除文件的恢复又有哪些特殊之处呢?本文将逐一探讨这些问题。 继续阅读

如何恢复 Linux 上删除的文件–自动恢复工具 e2undel 和特殊情况的恢复

恢复系统中删除的文件是一个非常繁琐的过程,而 e2undel 这个工具可以用来方便地恢复文件系统中已删除的文件。本文将首先讨论 e2undel 的工作原理和用法,并对之进行一些改进。然后讨论了文件系统故障、文件系统重建、磁盘物理损坏等情况下应该如何恢复数据。

在本系列文章的前两部分中,我们介绍了 ext2 文件系统中各种文件在磁盘上的存储结构,以及如何利用 debugfs 工具的辅助,手工恢复这些文件的详细过程。

通过这两部分的学习,我们可以看出恢复系统中删除的文件是一个非常繁琐的过程,需要非常仔细地考虑各种情况,并且要保持足够的细心,才可能把数据准确无误地恢复出来。稍有差错,就会造成数据丢失的情况。聪明的读者肯定会想,如果有一些好工具来自动或辅助完成数据的恢复过程,那简直就太好了。

幸运的是,已经有人开发了这样一些工具,来简化用户的数据恢复工作,e2undel 就是其中功能最为强大的一个。 继续阅读

如何恢复 Linux 上删除的文件–特殊文件的恢复

除了普通文件之外,UNIX/Linux 中还存在一些特殊的文件,包括目录、字符设备、块设备、命名管道、socket 以及链接;另外还存在一些带有文件洞的文件,这些特殊文件的恢复是和其存储机制紧密联系在一起的,本文将从这些特殊文件的存储原理和机制入手,逐步介绍这些特殊文件的恢复方法。

在本系列文章的第一部分中,我们介绍了 ext2 文件系统中的一些基本概念和重要数据结构,并通过几个实例学习了如何恢复已经删除的文件,最后通过修改 2.6 版本内核中 ext2 文件系统的实现,解决了大文件无法正常恢复的问题。 继续阅读

如何恢复 Linux 上删除的文件–原理及普通文件的恢复

要想恢复误删除的文件,必须清楚数据在磁盘上究竟是如何存储的,以及如何定位并恢复数据。本文从数据恢复的角度,着重介绍了 ext2 文件系统中使用的一些基本概念和重要数据结构,并通过几个实例介绍了如何手工恢复已经删除的文件。最后针对 ext2 现有实现存在的大文件无法正常恢复的问题,通过修改内核中的实现,给出了一种解决方案。

对于很多 Linux 的用户来说,可能有一个问题一直都非常头疼:对于那些不小心删除的数据来说,怎样才能恢复出来呢?大家知道,在 Windows 系统上,回收站中保存了最近使用资源管理器时删除的文件。即便是对于那些在命令行中删除的文件来说,也有很多工具(例如recover4all,FinalData Recovery)可以把这些已经删除的文件恢复出来。在Linux 下这一切是否可能呢? 继续阅读

逻辑卷管理

卷管理在 -ix 环境(UNIX®、AIX 等等)中并不是新特性。逻辑卷管理(logical volume management,LVM)在 Linux® 内核 2.4v1 和 2.6.9v2 中就已经出现了。本文讨论 LVM2 最有用的特性(LVM2 是一个相当新的用户空间工具集,它提供逻辑卷管理功能),并提供几种简化系统管理任务的方法。

逻辑卷管理(LVM)指系统将物理卷管理抽象到更高的层次,常常会形成更简单的管理模式。通过使用 LVM,所有物理磁盘和分区,无论它们的大小和分布方式如何,都被抽象为单一存储(single storage)源。例如,在图 1 所示的物理到逻辑映射布局中,最大的磁盘是 80GB 的,那么用户如何创建更大(比如 150GB)的文件系统呢?
图 1. 物理到逻辑的映射
物理到逻辑的映射

LVM 可以将分区和磁盘聚合成一个虚拟磁盘(virtual disk),从而用小的存储空间组成一个统一的大空间。这个虚拟磁盘在 LVM 术语中称为卷组(volume group)继续阅读

如何在 Windows Server 2003 中对 Ntbackup 命令使用命令行参数

您可以使用后跟各种参数的 ntbackup backup 命令,通过命令提示符或批处理文件来执行备份操作。通过命令提示符,您只能访问备份选项。要还原文件,请使用“备份和还原向导”。

本文介绍了可用于 ntbackup 的参数,以及有关如何从命令行执行备份操作的几个示例。

ntbackup 命令使用下面的语法:

ntbackup backup [systemstate] “@FileName.bks” /J {“JobName”} [/P {“PoolName”}] [/G {“GUIDName”}] [/T { “TapeName”}] [/N {“MediaName”}] [/F {“FileName”}] [/D {“SetDescription”}] [/DS {“ServerName”}] [/IS {“ServerName”}] [/A] [/V:{yes | no}] [/R:{yes | no}] [/L:{f | s | n}] [/M {BackupType}] [/RS:{yes | no}] [/HC:{on | off}] [/SNAP:{on | off}]

继续阅读