2022年Linux操作系统下如何能恢复误删除的文件 .pdf

上传人:C****o 文档编号:32488167 上传时间:2022-08-09 格式:PDF 页数:3 大小:46.73KB
返回 下载 相关 举报
2022年Linux操作系统下如何能恢复误删除的文件 .pdf_第1页
第1页 / 共3页
2022年Linux操作系统下如何能恢复误删除的文件 .pdf_第2页
第2页 / 共3页
点击查看更多>>
资源描述

《2022年Linux操作系统下如何能恢复误删除的文件 .pdf》由会员分享,可在线阅读,更多相关《2022年Linux操作系统下如何能恢复误删除的文件 .pdf(3页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、Linux 操作系统下如何能恢复误删除的文件Linux 操作系统下如何能恢复误删除的文件作为一个多用户、多任务的操作系统,Linux 下的文件一旦被删除,是难以恢复的。尽管删除命令只是在文件节点中作删除标记,并不真正清除文件内容,但是 其他用户和一些有写盘动作的进程会很快覆盖这些数据。不过,对于家庭单机使用的 Linux ,或者误删文件后及时补救,还是可以恢复的。1Ext2 文件系统结构的简单介绍在 Linux 所用的 Ext2 文件系统中,文件是以块为单位存储的,默认情况下每个块的大小是 1K,不同的块以块号区分。每个文件还有一个节点,节点中包含 有文件所有者,读写权限,文件类型等信息。对于

2、一个小于12 个块的文件,在节点中直接存储文件数据块的块号。如果文件大于12 个块,那么节点在12个块号 之后存储一个间接块的块号, 在这个间接块号所对应的块中, 存储有 256个文件数据块的块号( Ext2fs 中每个块号占用 4 字节,这样一个块中所能存储的块 号就是 1024/4=256)。如果有更大的文件,那么还会在节点中出现二级间接块和三级间接块。2。恢复被误删文件的方法大多数 Linux 发行版都提供一个debugfs 工具,可以用来对 Ext2 文件系统进行编辑操作。不过在使用这个工具之前,还有一些工作要做。首先以只读方式重新挂载被误删的文件所在分区。使用如下命令: (假设文件在

3、/usr 分区)mount r n o remount /usr -r 表示只读方式挂载; -n 表示不写入 /etc/mtab ,如果是恢复 /etc 上的文件,就加上这个参数。如果系统说xxx partion busy,可以用 fuser 命令查看一下是哪些进程使用这个分区上的文件:fuser v m /usr 如果没有什么重要的进程,用以下命令停掉它们:fuser -k v m /usr 然后就可以重新挂载这些文件系统了。如果是把所有的文件统一安装在一个大的/ 分区当中,可以在 boot 提示符下用 linux single进入单用户模式,尽量减少系统进程向硬盘写入数据的机会,要不干脆把

4、硬盘挂在别的机器上。另外,恢复名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 3 页 - - - - - - - - - mount r n /dev/hda1 /mnt/had 然后就可以执行 debugfs :(假设 Linux 在 /dev/hda5 )#debugfs /dev/hda5 就会出现 debugfs 提示符 debugfs:使用 lsdel命令可以列出很多被删除的文件的信息:debugfs:lsdel debugfs: 2692 deleted in

5、odes found. Inode Owner Mode Size Blocks Time deleted 164821 0 100600 8192 1/ 1 Sun May 13 19:22:46 2001 36137 0 100644 4 1/ 1 Tue Apr 24 10:11:15 2001 196829 0 100644 149500 38/ 38 Mon May 27 13:52:04 2001 debugfs: 列出的文件有很多(这里找到2692 个),第一字段是文件节点号,第二字段是文件所有者,第三字段是读写权限,接下来是文件大小,占用块数,删除时间。然后就可以根据文件大小和

6、删除日期判断那些是我们需要的。比如我们要恢复节点是 196829的文件:可以先看看文件数据状态:debugfs:stat Inode: 196829 Type: regular Mode: 0644 Flags: 0 x0 Version: 1 User: 0 Group: 0 Size: 149500 File ACL: 0 Directory ACL: 0 Links: 0 Blockcount: 38 Fragment: Address: 0 Number: 0 Size: 0 ctime: 0 x31a9a574 - Mon May 27 13:52:04 2001 atime: 0

7、x31a21dd1 - Tue May 21 20:47:29 2001 mtime: 0 x313bf4d7 - Tue Mar 5 08:01:27 2001 dtime: 0 x31a9a574 - Mon May 27 13:52:04 2001 BLOCKS: 594810 594811 594814 594815 594816 594817 . TOTAL: 38 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 3 页 - - - - - - - - - 然后

8、就可以用 dump指令恢复文件:debugfs:dump /mnt/hda/01.sav 这样就把文件恢复出来了。退出debugfs:debugfs :quit 另一种方法是手工编辑inode :debugfs:mi Mode 0100644 User ID 0 Group ID 0 Size 149500 Creation time 0 x31a9a574 Modification time 0 x31a9a574 Access time 0 x31a21dd1 Deletion time 0 x31a9a574 0 Link count 0 1 Block count 38 File fl

9、ags 0 x0 Reserved1 0 File acl 0 Directory acl 0 Fragment address 0 Fragment number 0 Fragment size 0 Direct Block #0 594810 . Triple Indirect Block 0 使用 mi 指令后每次显示一行信息以供编辑,其它行可以直接按回车表示确认, 把 deletion time 改成 0 (未删除), Link count 改成 1。 改好后退出 debugfs :debugfs :quit 然后用 fsck 检查/dev/hda5 fsck /dev/hda5 程序会说找到丢失的数据块,放在lost+found里面。这个目录里的文件就是我们要的东东。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 3 页 - - - - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁