您好,登录后才能下订单哦!
这篇文章主要介绍了linux中如何解决误删问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
删除一个文件到底删除了那些?
清空目录项,inode的映射表 将inode号设为0
block映射表(bit table 位图) 将block设为0
在一般的删除文件操作中,Linux 并不会立即清空存储该文件的 block 内容,而只会释放该文件所占用的 inode 和 data block,Linux 上
rm 的过程其实就是将 inode bitmap 和 data block bitmap 中的相应标识设为空闲状态的过程,并不涉及到真正的数据,这也是为什么在 Linux 下删除大文件这么快速的原因,因为大文件所占的磁盘根本就没有清空。所以,如果我们能找到文件对应的 inode,由此查到相应的 data block,就可能从磁盘上把已删除的文件恢复出来,很多文件/磁盘恢复工具都是这么做的。
Linux正统的文件系统(如ext2、3等)将硬盘分区时会划分出目录块、inode Table区块和data block数据区域。一个文件由一个目录项、inode和数据区域块组成。Inode包含文件的属性(如读写属性、owner等,以及指向数据块的指针),数据区域块则是文件内容。当查看某个文件时,会先从inode table中查出文件属性及数据存放点,再从数据块中读取数据。
系统通过文件名 找到inode号 通过inode号 获取inode信息,最后根据inode信息找到文件数据所在的BLOCK 读取数据
目录项:包括文件名和inode节点号。
目录项的结构如下(每个文件的目录项存储在该文件所属目录的文件内容里(block块里)
Inode:又称文件索引节点,是文件基本信息(类型、大小、权限、时间、链接数等)的存放地和数据块指针存放地。
一个文件占用一个inode
误删怎么办?
删除文件后停止写操作,
grep -a -B 10 -A 100 '关键字' /dev/sda1 > tmp.txt
<pre width:663.297px;overflow:auto;background:#f7f7f7;color:#555555;"="" >
如果有备份机的话 直接dd
感谢你能够认真阅读完这篇文章,希望小编分享的“linux中如何解决误删问题”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。