ext2数据恢复实验.doc_第1页
ext2数据恢复实验.doc_第2页
ext2数据恢复实验.doc_第3页
ext2数据恢复实验.doc_第4页
ext2数据恢复实验.doc_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

ext2数据恢复实验【实验环境】Linux实验台【实验内容】Linux下的磁盘管理手动恢复误删文件【实验原理】一、 Linux文件系统简介文件是计算机存储信息的基本单位,是一组相关记录的集合。文件系统是操作系统中负责存取和管理文件信息的机构,是操作系统用于明确磁盘或分区上的文件的方法和数据结构,即在磁盘上组织文件的方法。也指用于存储文件的磁盘或分区,或文件系统种类。因此“2个文件系统”意思是有2个分区。在Linux系统中,每个分区都是一个文件系统,都有自己的目录层次结构。Linux的最重要的特征之一就是支持多种文件系统,这样它更加灵活,并可以和许多其它种操作系统共存。随着Linux的不断发展,它所支持的文件格式系统也在迅速扩充。特别是Linux2.4内核正式推出后,出现了大量新的文件系统,其中包括日志文件系统ext3、ReiserFS、XFSJFS和其它文件系统。Linux内核可以支持十多种文件系统类型:JFS、ReiserFS、ext、ext2、ext3、XFS、NFS、SMB、VFAT、NTFS、MSDOS等。(1) extext是第一个专门为Linux开发的文件系统类型,叫做扩展文件系统。这是1992年4月完成的,对Linux早期的发展产生了重要作用。但是,由于其在稳定性、速度和兼容性上存在许多缺陷,现在已经很少使用了。(2) ext2ext2是为解决ext文件系统的缺陷而设计的可扩展的、高性能的文件系统,它又被称为二级扩展文件系统,于1993年发布。它是Linux文件系统类型中使用最多的格式,并且在速度和CPU利用率上较为突出,是GNU/Linux系统中标准的文件系统。它存取文件的性能极好,对于中、小型的文件更显示出优势,这主要得益于其簇快取层的优良设计。ext2可以支持256字节的长文件名,其单一文件大小和文件系统本身的容量上限与文件系统本身的簇大小有关。在常见的Inter x86兼容处理器的系统中,簇最大为4KB,单一文件大小上限为2048GB,而文件系统的容量上限为6384GB。尽管Linux可以支持种类繁多的文件系统,但是2000年以前几乎所有的Linux发行版都使用ext2作为默认的文件系统。ext2也有一些问题。由于它的设计者主要考虑的是文件系统性能方面的问题,而在写入文件内容的同时,并没有写入文件的meta-data(和文件有关的信息,例如权限、所有者及创建和访问时间)。换句话说,Linux先写入文件的内容,然后等到有空的时候才写入文件的meta-data。如果出现写入文件内容之后,但在写入文件的meta-data之前系统突然断电,就可能造成文件系统处于不一致状态。在一个有大量文件操作的系统中,出现这种情况会导致很严重的后果。(3) ext3在介绍ext3之前,先介绍一些日志式文件系统基础。日志式文件系统起源于Oracle、Sybase等大型数据库。由于数据库操作往往是由多个相关的、相互依赖的子操作组成,任何一个子操作的失败都意味着整个操作的无效性,对数据库数据的任何修改都要恢复到操作以前的状态。Linux日志式文件系统就是由此发展而来的。日志文件系统通过增加一个叫做日志的、新的数据结构来解决这个问题。这个日志是位于磁盘上的结构。在对元数据做任何改变以前,文件系统驱动程序会向日志中写入一个条目,这个条目描述了它将要做些什么,所以日志文件具有可伸缩性和健壮性。在分区中保存日志记录文件好处是:文件系统写操作首先是对记录文件进行操作,若整个写操作由于某种原因(如系统掉电)而中断,则在下次系统启动时就会日志记录文件的内容,恢复到没有完成的写操作,这个过程一般只需要两三分钟的时间。ext3是由开放资源社区开发的日志文件系统,早期主要开发人员是Stephen Tweedie。ext3被设计成是ext2升级版本,尽可能方便用户从ext2向ext3迁移。ext3在ext2的基础上加入了记录元数据的日志功能,努力保持向前和向后的兼容性,也就是在保有目前ext2的格式之下再加上日志功能。和ext2相比,ext3提供了更佳的安全性,这就是数据日志和元数据日志之间的不同。ext3是一种日志式文件系统,日志式文件系统的优越性在于由于文件系统都有快取层参与动作,如不使用时必须将文件系统卸下,以便将快取层的资料写回磁盘中。因此,每当系统要关机时,必须将其所有的文件系统全部卸下后才能进行关机。如果在文件系统尚未卸下前就关机(如停电),那么重开机后就会造成文件系统的资料不一致,故这时必须做文件系统的重整工作,将不一致与错误的地方修复。ext3最大的缺点是,它没有现代文件系统所具有的、能提高文件数据处理速度和解压的高性能。此外,使用ext3文件系统要注意硬盘限额问题。(4) 查看Linux支持的文件系统类型不同版本的Linux所支持的文件系统类型和种类都有所不同,可通过如下方法查看当前Linux系统所支持的文件系统类型:以超级用户权限(root)登录Linux,进入/lib/modules/kernel-version/kernel/fs/,执行命令ls,如图2.5.41所示,其中kernel-version表示Linux系统的内核版本号。图2.5.41 FC5发行版所支持的文件系统类型 从图2.5.41可以看到Red Hat FC5所支持的文件系统类型。二、 Linux文件系统通用结构简介大部分Linux文件系统种类具有类似的通用结构,其中心概念是超级块superblock、i节点inode、数据块data block、目录块directory block和间接块indirection block。超级块包括文件系统的总体信息,比如大小(其准确信息依赖文件系统)。inode即索引节点。inode点包括除了名字外的一个文件的所有信息,名字与inode数目一起存在目录中,目录条目包括文件名和文件的inode数目。inode包括几个数据块的数目,用于存储文件的数据。每个存储设备或存储设备的分区被格式化为文件系统后,应该有两部份,一部份是inode,另一部份是Block,用来存储数据。inode用来存储这些数据的信息,包括文件大小、所有者、归属的用户组、读写权限等。inode为每个文件进行信息索引,所以就有了inode的数值。操作系统根据指令,能通过inode值最快的找到相对应的文件。比如一本书,存储设备或分区就相当于这本书,Block相当于书中的每一页,inode就相当于这本书前面的目录,一本书有很多的内容,如果想查找某部份的内容,我们可以先查目录,通过目录能最快的找到需要的内容。【实验步骤】一、 设置磁盘(一) 查看硬盘设备文件(1) 参照WindowsRAID实验,为Linux实验台添加一块磁盘。(2) 启动Linux实验台,进入Linux系统,输入命令:ls /dev/,查看硬盘设备,如图2.5.42所示。图2.5.42从中我们可以判断当前Linux主机安装有两块硬盘,/dev/hda和/dev/sda。其中/dev/hda已被分为hda1和hda2二个磁盘分区,/dev/sda尚未进行磁盘分区。可通过命令fdisk -l查看硬盘的分区情况。(二) 磁盘分区将硬盘/dev/sda进行磁盘分区(仅一个物理分区),具体操作如下:(1) 输入命令:fdisk /dev/sda,进入fdisk控制台开始对硬盘sda进行分区,输入m可查看fdisk命令帮助。(2) 在fdisk控制中依次输入命令:n(add a new partition,增加新磁盘分区),p(primary partition,创建主分区),1(Partition number (1-4),主分区编号,最多4个主分区),1(First cylinder,分区开始柱面),204(Last cylinder,分区最后柱面),w(write table to disk and exit,写入磁盘分区表后退出)。上述过程如图2.5.43所示。图2.5.43(三) 再次查看硬盘设备输入命令fdisk -l /dev/sda查看硬盘设备sda分区情况,如图2.5.44所示,并记录。图2.5.44(四) 挂载磁盘分区(1) 完成对/dev/sda1分区的ext2格式化工作,具体命令:mkfs.ext2 /dev/sda1。如图2.5.45所示。图2.5.45(2) 将磁盘分区/dev/sda1挂载到目录/tmp下,具体命令:mount /dev/sda1 /tmp。接下来输入命令:mount,查看所有磁盘分区的挂载情况并记录。具体如图2.5.46所示。图2.5.46二、 手动恢复文件(一) 文件操作(1) 进入/tmp目录,利用vim文件编辑器新建并编辑文件123.txt,自定义文件内容,保存文件并退出。(2) 应用md5sum对123.txt进行文件摘要计算,并记录其文件摘要;用stat查看123.txt的文件状态,记录其文件Inode值;如图2.5.47所示。图2.5.47(二) 删除文件使用命令rm -f 123.txt删除文件。(三) 恢复被删除的文件123.txt(1) 第一时间将/dev/sda1挂载为只读模式,禁止对磁盘分区进行写入操作,主要目的是防止被删除文件的数据区被新写入数据覆盖掉,如图2.5.48所示。图2.5.48(2) 使用文件系统调试器debugfs以读和写方式打开ext2文件系统分区:debugfs -w 文件系统分区。(3) 进入debugfs控制台后,键入lsdel命令查看该分区中已被删除的文件信息,注意被删除文件的Inode值。(4) 在debugfs控制台中通过下面的语句来恢复指定Inode值的文件(已被删除的文件del.txt):dump 导出文件,其中“导出文件”为恢复后的文件;在d

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论