博客
关于我
CentOS中恢复rm命令误删文件
阅读量:200 次
发布时间:2019-02-28

本文共 1691 字,大约阅读时间需要 5 分钟。

extundelete 文件恢复工具使用指南

简介

extundelete 是一款专注于 ext3 和 ext4 分区恢复的文件恢复工具,适用于在误删或丢失文件时恢复数据。该工具以基于整个磁盘的恢复功能著称,但基于目录和文件的恢复功能尚有不足。

使用前注意事项

  • 挂载方式:在恢复前,建议将分区卸载或挂载为只读模式,以防止数据被覆盖或进一步损坏。
  • 安装位置:确保工具安装在与恢复数据无关的硬盘,以避免误操作导致数据丢失。

安装

extundelete 工具依赖 e2fsprogs 和 e2fslibs,因此安装前需确保这些依赖已安装。安装步骤如下:

yum install -y e2fsprogs* e2fslibs*wget http://nchc.dl.sourceforge.net/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2tar -axf extundelete-0.2.4.tar.bz2 -C /usr/local/srccd /usr/local/src/extundelete-0.2.4./configure --prefix=/usr/local/extundeletemakemake installln -s /usr/local/extundelete/bin/* /usr/local/bin/

使用命令

必要步骤

  • 挂载分区:

    umount /dev/partitionmount -o remount,ro /dev/partition

    或直接挂载为只读模式。

  • 切换目录:

    cd $dir
  • 恢复选项

    • 默认选项:直接运行 extundelete /dev/sda1 即可开始恢复,默认恢复所有删除文件。
    • 指定时间范围:
      extundelete /dev/sda1 --after dtime 1234567890extundelete /dev/sda1 --before dtime 1234567890

      其中 1234567890 为指定时间戳,需用 date -d "时间描述" 得到。

    • 恢复特定文件或目录:
      extundelete /dev/sda1 --restore-file 'filename'extundelete /dev/sda1 --restore-directory 'dir-name'

      恢复文件会保存在 RECOVERED_FILES 目录下的相应子目录中,文件名不变。

    • 恢复所有文件:
      extundelete /dev/sda1 --restore-all

    案例操作

    假设数据位于 /webapps/upload,已知删除时间为 2011-07-26 14:30,恢复步骤如下:

  • 查找目标文件:

    extundelete /dev/sdb1 --inode 2extundelete /dev/sda5 --inode 24641537extundelete /dev/sda5 --inode 24903688extundelete /dev/sda5 --inode 24904454
  • 恢复指定目录:

    extundelete /dev/sda5 --restore-directory '/webapps/xxxx/upload'
  • 查看恢复结果:恢复完成后,RECOVERED_FILES 目录下会出现恢复的文件和文件夹。

  • 注意事项

    • 数据安全:在恢复前,始终确保分区已卸载或挂载为只读。
    • 时间点选择:准确获取删除文件的时间戳,以提高恢复效率。
    • 文件命名:恢复文件名保持不变,但目录结构可能因磁盘写入而变化。

    参考资料

    通过以上步骤和注意事项,您可以高效地使用 extundelete 工具恢复误删或丢失的文件,确保数据安全和完整。

    你可能感兴趣的文章
    Python UTC 日期时间对象的 ISO 格式不包括 Z(祖鲁语或零偏移)
    查看>>
    python valueerror object2_python遇到错误记录
    查看>>
    Python virtualenv
    查看>>
    python vue3实现大文件分段续传(断点续传)--带暂停和继续功能
    查看>>
    Python WebDriver如何打印整个页面源(html)
    查看>>
    python 使用execjs 报编码错误解决办法,UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0xac in position 145: il
    查看>>
    python 复习计划
    查看>>
    Python 多处理 Numpy 随机
    查看>>
    Python 多处理:在第一个子错误时中止映射
    查看>>
    Python 多处理不断产生 pythonw.exe 进程而不做任何实际工作
    查看>>
    Python 多处理如何优雅地退出?
    查看>>
    Python 多处理模块的 .join() 方法到底在做什么?
    查看>>
    python 学习 面向对象编程
    查看>>
    Python基础(7)--函数
    查看>>
    Python基础部分-while循环,格式化输出
    查看>>
    Python基础语法与执行脚本的3种方式
    查看>>
    python基础篇(1):type()
    查看>>
    python基础篇(15):闭包
    查看>>
    python基础篇(11):封装
    查看>>
    python基础篇(10):自定义包
    查看>>