centos 6 extundelete 介绍和安装

安装 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 6 extundelete 介绍和安装)