当前位置: 首页 > 图文教程 > 服务器 > Linux服务器 > 浅谈Linux文件系统反删除方法(二)

Linux服务器
linux下用cron定时执行任务的方法
.htaccess绑定域名到子目录的方法
linux apache下虚拟主机配置方法
apache 局域网访问配置方案
linux Apache服务器系统安全设置与优化
linux中mac地址绑定方法
linux托盘不断闪烁之解决方法
Apache配置 虚拟转向实例
Apache No space left on device的解决办法
Apache rewrite的重写相关的参数说明
LINUX入门级常用命令20条整理
Ubuntu设置开机自动挂载所有格式硬盘分区
5个可能被你忽略的Linux安全设置方法
学习Apache的mod rewrite、access写法
改版时保留原链接,创建新的URL的方法
rsync中文手册之使用rsync实现网站镜像和备份linux
rsync 数据同步使用详解
linux URL的301重定向代码分析
eclipse3.2.2 + MyEclipse5.5 + Tomcat5.5.27 配置数据库连接池
Apache服务器二级域名的完美实现

Linux服务器 中的 浅谈Linux文件系统反删除方法(二)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-18   浏览: 51 ::
收藏到网摘: n/a

列出的档有很多(这里找到2692个),第一字段是档节点号,第二字段是档所有者,第三字段是读写权限,接下来是档大小,占用块数,删除时间。然后就可以根据档大小和删除日期判断那些是我们需要的。比如我们要恢复节点是196829的文件:

可以先看看文件资料状态:
  

以下为引用的内容:
  debugfs:stat<196829>
  
  Inode:196829Type:regularMode:0644Flags:0x0Version:1
  
  User:0Group:0Size:149500
  
  FileACL:0DirectoryACL:0
  
  Links:0Blockcount:38
  
  Fragment:Address:0Number:0Size:0
  
  ctime:0x31a9a574--MonMay2713:52:042001
  
  atime:0x31a21dd1--TueMay2120:47:292001
  
  mtime:0x313bf4d7--TueMar508:01:272001
  
  dtime:0x31a9a574--MonMay2713:52:042001
  
  BLOCKS:
  
  594810594811594814594815594816594817
  
  ………………………………….
  
  TOTAL:38

  
然后就可以用dump指令恢复文件:

debugfs:dump<196829>/mnt/hda/01.sav

这样就把档恢复出来了。退出debugfs:

debugfs:quit

另一种方法是手工编辑inode:
  

以下为引用的内容:
  debugfs:mi<196829>
  
  Mode[0100644]
  
  UserID[0]
  
  GroupID[0]
  
  Size[149500]
  
  Creationtime[0x31a9a574]
  
  Modificationtime[0x31a9a574]
  
  Accesstime[0x31a21dd1]
  
  Deletiontime[0x31a9a574]0
  
  Linkcount[0]1
  
  Blockcount[38]
  
  Fileflags[0x0]
  
  Reserved1[0]
  
  Fileacl[0]
  
  Directoryacl[0]
  
  Fragmentaddress[0]
  
  Fragmentnumber[0]
  
  Fragmentsize[0]
  
  DirectBlock#0[594810]
  
  …………………………….
  
  TripleIndirectBlock[0]

使用mi指令后每次显示一行信息以供编辑,其它行可以直接按回车表示确认,把deletiontime改成0(未删除),Linkcount改成1。改好后退出debugfs:

debugfs:quit

然后用fsck检查/dev/hda5

fsck/dev/hda5

程序会说找到丢失的数据块,放在lost+found里面。这个目录里的文件就是我们要的。