Linux下的rm命令太可怕了,一不小心 rm -rf / 那就悲剧了,请慎用rm -rf。
如果一不小心删除重要文件,后续不对该路径文件操作,可以通过相关命令找回被删文件。
原理主要是删除的文件并没有实际上从硬盘上抹去,只是inode索引删除了相关的信息(单链表节点删除实现),因此只要找到刚删除文件的block上,就可以恢复已经删除的文件。
一. 查看分区
df -T Filesystem Type 1K-blocks Used Available Use% Mounted on /dev/sda1 ext4 41284928 38206612 981164 98% / tmpfs tmpfs 1961248 10240 1951008 1% /dev/shm /dev/sda5 ext4 119724260 6428840 107213784 6% /data /dev/sda2 ext4 41284928 799900 38387876 3% /usr/local
二. ext3
sudo debugfs open /dev/sda1 #打开分区 ls -d /home/test/src #显示该目标删除文件inode 819307 (12) . 819306 (4084) .. <790528> (4072) bosstest.cpp <792294> (4052) btest.cpp <792214> (4032) qwd_kettas.pb.cc logdump -i <790528> #查看该文件日志内容 ... [blocks] 12345 #12345为存放bosstest.cpp数据块地址 sudo dd if=/dev/sda1 of=/tmp/my1.cpp count=1 skip=12345 #读取12345处数据至my1.cpp中
三. ext4
debugfs只能恢复ext3系统文件,extundelete支持ext3/ext4文件系统的恢复。
sudo yum install -y e2fsprogs #安装依赖库 sudo extundelete --inode 819203 /dev/sda1 #查找指定目录下删除文件 File name | Inode number | Deleted status . 819307 .. 819306 bosstest.cpp 790528 Deleted btest.cpp 792294 Deleted qwd_kettas.pb.cc 792214 Deleted sudo extundelete --restore-inode 790528 /dev/sda1 #恢复指定inode文件,恢复文件在./RECOVERED_FILES sudo extundelete /dev/sda1 --restore-all #恢复/dev/sda1分区下所有文件
大多数情况下,会出现以下提示:Unable to restore inode 792214 (file.792214): Space has been reallocated. 由于文件系统被覆盖,已经无法恢复文件。
参考链接:
http://extundelete.sourceforge.net/
相关推荐
Linux XFS 文件系统误删除文件恢复 在 Linux 操作系统中,文件误删除是一种常见的故障,可能会导致重要文件的丢失。幸运的是,在 Linux XFS 文件系统中,误删除文件可以通过一定的方法恢复。本文将讨论 Linux XFS ...
作为一个多用户、多任务的操作系统,Linux下的文件一旦被删除,是难以恢复的。然而,对于家庭单机使用的 Linux,或者误删文件后及时补救,还是可以恢复的。 Ext2 文件系统结构 在 Linux 所用的 Ext2 文件系统中,...
在Linux操作系统中,数据恢复是一项重要的任务,尤其是在不小心删除了重要文件时。本文将深入探讨在Linux环境下如何恢复被删除的文件,主要关注两种常用的数据恢复工具:ext3grep和extundelete。 首先,让我们理解...
然而,通过了解 Linux 文件系统的结构和工作原理,我们可以使用一些技术来恢复删除的文件。本文将详细介绍如何在 Linux 下恢复删除的文件。 文件系统结构 在 Linux 下,文件系统是按照inode(索引节点)来组织的。...
在Windows操作系统中,当面临Linux分区的数据丢失问题时,我们可以借助特定的软件来恢复这些丢失的文件。本文将深入探讨Windows环境下对Linux分区文件恢复的相关知识点。 首先,我们需要理解Linux分区的文件系统...
### Linux恢复删除文件的lsof命令详解 #### 一、引言 在日常的Linux系统管理和维护过程中,经常会遇到由于误操作导致重要文件被删除的情况。这些误删的文件可能包含重要的系统日志或者配置信息,对于系统的稳定运行...
本文将详细介绍Linux下如何恢复误删除的文件,以及涉及的文件操作命令。 首先,我们需要理解Linux文件系统的构成,这包括文件名、inode(索引节点)和block(数据块)。文件名是人们易于理解和识别的名称,实际存储...
但需要注意的是,Linux系统并没有回收站,因此一旦使用`rm`删除文件,它将永久消失,无法通过常规方式恢复。本文将详细介绍如何在Linux下删除文件和文件夹,以及如何使用`shred`命令进行彻底删除。 ### Linux删除...
总之,尽管Linux的文件删除机制增加了文件恢复的复杂性,但通过理解文件系统的工作原理和使用适当的工具,如debugfs,还是有可能挽回误删的文件。不过,预防总胜于治疗,定期备份重要数据是避免数据丢失的最好策略。
该软件可以帮助用户恢复Linux系统下丢失的文件,包含误删除,误格式化等造成的文件丢失等等,支持ext2fs文件系统,使用于Linux操作系统和若干的Unix。 R-Linux功能介绍 R-Linux专门为Linux/Unix数据恢复设计,...
在IT领域,文件恢复是一项重要的技术,特别是在用户不小心删除了重要文件时。本文将深入探讨如何使用C++在Windows操作系统下实现对NTFS(New Technology File System)和FAT32(File Allocation Table 32)文件系统...
1. 以只读模式重新挂载包含被删文件的分区,防止新的写操作覆盖丢失的数据。使用如`mount -r -n -o remount /usr`的命令。 2. 如果有进程正在使用该分区,使用`fuser`命令找出并停止它们,以确保数据安全。 3. 在...
开发数据恢复软件的程序员需要理解文件系统的底层工作原理,例如FAT(文件分配表)、NTFS(新新技术文件系统)或EXT系列(Linux下的文件系统)等。他们需要编写代码来读取磁盘扇区,解析文件分配表或日志,寻找被...
rhel6恢复ext4文件系统下误删除的文件详细解释与说明!!!!!!!!!!!!!!!!!!!!!!!!
在Linux操作系统中,创建一个即使是root用户也无法修改或删除文件的只读文件系统是一个安全措施,可以保护系统的重要数据免受意外更改。这样的设置通常用于关键系统或存储关键信息的分区,以确保数据的完整性。以下...
4. 恢复被删文件:根据扫描结果,选择要恢复的文件,并使用 ntfsundelete 命令恢复这些文件。 四、ntfsundelete 命令的使用 ntfsundelete 命令是用于恢复被删 NTFS 文件的命令。使用该命令时,需要指定要恢复的...
标题"恢复删除文件(不小心删除的东西,只要没重装系统,都可以恢复)"明确指出,即使用户误删了文件,只要没有对计算机进行系统重装,通常都有可能找回这些文件。这涉及到操作系统级别的文件管理、回收站机制以及更深...
文件恢复工具的核心功能是通过扫描硬盘上的数据痕迹,寻找已被删除但尚未被新数据覆盖的文件,并尝试恢复它们。这种工具通常能够处理多种类型的存储设备,如硬盘、SSD、USB闪存盘、SD卡等。在标题和描述中提到的...