centos 6 extundelete 介绍和安装

本文介绍了Linux文件系统的基本组成,重点讲解了extundelete文件恢复工具。在数据误删后,应立即卸载相关磁盘并以只读模式挂载,以增加恢复成功率。安装extundelete的步骤包括获取安装包,解压并进行编译安装。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

安装 extundelete 文件恢复工具

1 linux下文件系统一般由文件名、Inode、Block三部分组成。当一个用户在Linux系统中试图访问一个文件时,系统会先根据文件名去查找它的inode,看该用户是否具有访问这个文件的权限。如果有,就指向相对应的文件数据block;如果没有权限,就返回Permission denied。
1、Inode(索引节点)是存放文件属性信息的,默认大小一般是128byte,256byte。
2、Block(区块)是存放文件实际内容的,默认大小1k或4k,一般是4k的。
3、一个文件至少占用一个inode和一个block。
4、多个文件可以占用同一个inode。
5、inode和block在格式化时是可以改变的。
6、默认分区情况下,inode是足够的。写入文件的个数由block的大小决定,假设每个block占nk,那么分几种情况:
1)、n < 1k
那么写入1k文件的数量是:0,写入1M的文件的数量是:0
2)、n >= 1K && n < 1M
那么写入1k文件的数量是:floor(100*1024/n),写入1M的文件的数量是:0
3)、n > 1M
那么写入1k文件的数量是:floor(100/n),写入1M的文件的数量是:floor(100/n)

查看某分区的block和inode的数量和大小,通常block比inode多
tune2fs -l /dev/sda1 |grep ‘Block count’
tune2fs -l /dev/sda1 |grep ‘Inode count’
tune2fs -l /dev/sda1 |grep ‘Block size’
tune2fs -l /dev/sda1 |grep ‘Inode size’

修改block块大小(格式化时决定其大小,windows同理)
mkfs.ext4 -b 20148 /dev/sda3

2 在数据被误删除后,第一时间要做的是卸载被删除数据所在的磁盘或磁盘分区,如果是系统根分区的数据遭到误删除,就需要将系统进入单用户,并且将根分区以只读模式挂载。这样做的原因很简单,因为将文件删除后,仅仅是将文件的inode结点中的扇区指针清零,实际文件还存储在磁盘上,如果磁盘以读写模式挂载,这些已删除的文件的数据块就可能被操作系统重新分配出去,在这些数据块被新的数据覆盖后,这些数据就真的丢失了,恢复工具也回力无天。所以,以只读模式挂载磁盘可以尽量降低数据块中数据被覆盖的风险,以提高恢复数据成功的比率。

安装步骤

  1. 首先准备安装包 extundelete-0.2.4.tar.bz2
  2. 解压 tar xf extundelete-0.2.4.tar.bz2
1. cd  extundelete-0.2.4
2. yum install gcc*
3. yum -y install e2fs*
4. ./configure      (echo $?) 判断是否成功 0
5. make -j 4          (echo $?) 判断是否成功  0
6. make install
7. extundelete /dev/sdb1 --inode  2   查看 inode 号
8. extundelete /dev/sdb1   --restore-inode 12  根据inode号恢复
9. ​    --restore-file passwd     根据文件名恢复
10. ​     --restore-directory a   根据目录恢复
11. ​     --restore-all           恢复全部
12. cd   RECOVERED_FILES 查看
### 如何在 CentOS 7 离线环境中安装 extundelete 及其所有依赖项 #### 准备工作 为了能够在离线环境下成功安装 `extundelete`,需要提前准备好所有的依赖库编译环境。这通常意味着要在一台联网的机器上完成这些准备工作。 #### 获取源码包及相关依赖 首先,在有网络连接的计算机上获取 `extundelete` 的源码包并下载必要的构建工具其他依赖: ```bash yum install gcc make automake autoconf libtool wget tar bzip2 flex bison ncurses-devel e2fsprogs e2fsprogs-libs uuid-devel zlib-devel ``` 接着下载 `extundelete` 源代码压缩包: ```bash wget http://downloads.sourceforge.net/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2 ``` 将上述命令执行过程中所涉及的所有 RPM 包以及 `extundelete-0.2.4.tar.bz2` 文件复制到目标离线系统的 `/opt` 或其他合适位置[^3]。 #### 编译与安装过程 一旦所有必需文件都已传输至无网设备,则可以按照如下流程操作来配置、编译并最终安装该软件: 进入解压后的源码目录,并运行配置脚本前先确认已经拥有C++编译器的支持,如果之前提到过的错误发生(`configure: error: C++ compiler cannot create executables`)则需确保g++也一同被安装上了[^4]: ```bash tar jxf extundelete-0.2.4.tar.bz2 -C /usr/src/ cd /usr/src/extundelete-0.2.4 ./configure make && make install ``` 以上步骤完成后即表示 `extundelete` 已经成功部署到了本地系统中[^1]。 #### 验证安装成果 最后可以通过查看帮助文档验证是否正常安装了此应用程序: ```bash extundelete --help ``` 如果一切顺利的话应该能看到详细的命令行选项列表说明。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值