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

Linux服务器
linuxsambauser共享方式配置
vsFTPd服务器和防火墙及SELINUX关系
探查Linux系统DNS服务器运行状况
Solaris10下DNS服务器安全攻略
实例:保障UbuntuApacheWeb服务器安全
SUSE下使用SAMBA建立文件服务器
Linux服务器常出现错误及代表含义
LinuxSambauser共享方式配置方法介绍
Debian和UbuntuLinux的NFS配置介绍
Linux服务器实时监控加载硬件信息
Solaris工作站常用下载工具推荐(下)
Linux系统服务器的存储空间巧妙管理
SUSELinux下用SAMBA建立文件服务器
Tor中继服务器在Linux里安装配置的流程
Linux服务器维护统计连接数查看外部IP
Linux系统邮件服务器的搭建过程解析
在CentOS下安装配置VNC的过程
OpenSUSE下使用SAMBA建立文件服务器
配置记录FTP传输情况的LinuxFTP服务器
Linux系统下DNS服务器的架设

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-18   浏览: 56 ::
收藏到网摘: 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里面。这个目录里的文件就是我们要的。