手机网站返回顶部代码,php网站开发实训报告书,seo做的比较好的网站的几个特征,网站建设 合肥Linux下删除命令 rm 大家肯定是熟悉得不能再熟悉了#xff0c;然后有时候却阴沟里翻船不小心删除了某些重要的文件#xff0c;想死的心都有了。。。。现在我们就来看看被误删除的文件要如何恢复#xff1f;Linux文件系统Linux的文件系统(如ext3、ext4)由三部分组成#xff…Linux下删除命令 rm 大家肯定是熟悉得不能再熟悉了然后有时候却阴沟里翻船不小心删除了某些重要的文件想死的心都有了。。。。现在我们就来看看被误删除的文件要如何恢复Linux文件系统Linux的文件系统(如ext3、ext4)由三部分组成inodedata blocksuper block。Super block记录此文件系统的整体信息包括inode/block的总量、使用量、剩余量以及文件系统的格式和相关信息inode记录 文件的属性一个文件占用一个inode同时记录此文件的数据所在的block号码block实际记录文件的内容如果文件比较大会占用多个block每个inode和block都有编号而每个文件都占用一个inodeinode内则有文件数据对应的block号码。因此如果找到了文件的inode自然就可以读取到文件的数据内容了。当我们将一个文件删除时Linux并非真实地删除磁盘里的数据而是将文件的inode节点对于对应的扇区指针清除同时释放这些数据对应的block只有但这些block被系统重新分配时那些被删除的数据才会被覆盖最终无法恢复。因为当我们误删数据时应立刻卸载所在的文件系统然后进行恢复。Default$ umount /dev/partition$ mount -o remount,ro /dev/partition12$umount/dev/partition$mount-oremount,ro/dev/partitiongrep通过grep命令我们可以简单地进行文件恢复Defaultgrep -a -B 50 -A 60 some string in the file /dev/sda1 results.txt1grep-a-B50-A60some string in the file/dev/sda1results.txt说明Default-a把二进制文件当作文本文件-A,-B字符串的后几行和前几行12-a把二进制文件当作文本文件-A,-B字符串的后几行和前几行不过grep命令比较麻烦的是必须记得文件中的部分内容而且如果有相同的其它文件也会被输出到result.txt结果比较混乱同时由于是整个分区扫描时间会比较漫长。debugfs extundelete首先我们先创建一个文件然后将其删除Default$ cat /proc/cpuinfo /tmp/testrm.txt$ rm /tmp/testrm.txt12$cat/proc/cpuinfo/tmp/testrm.txt$rm/tmp/testrm.txt使用系统自带的 debugfs 命令Default$ sudo debugfsdebugfs: open /dev/sda2debugfs: ls -d /tmp123$sudodebugfsdebugfs:open/dev/sda2debugfs:ls-d/tmp可以看到被删除的文件testrm.txt其中的657573就是文件的inode编号Default……657573 (92) testrm.txt……123……657573(92)testrm.txt……使用extundelete进行恢复Default$ extundelete /dev/sda2 --restore-inode 6575731$extundelete/dev/sda2--restore-inode657573然后我们就可以在当前目录下的RECOVERED_FILES 目录看到恢复的文件了Default$ ls -al RECOVERED_FILES-rw-r--r-- 1 root root 4.0K 7月 3 15:01 file.65757312$ls-alRECOVERED_FILES-rw-r--r--1rootroot4.0K7月315:01file.657573