在使用Linux操作系统时,误删文件或目录是一件常见的事情。尤其是在使用rm命令时,如果加上了-rf参数,就会彻底删除整个文件夹及其所有的文件。这时候,我们怎么才能找回这些被误删的文件呢?本文将详细介绍Linux误删的解决方法。
公司主营业务:网站设计制作、成都网站设计、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。成都创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。成都创新互联推出北戴河免费做网站回馈大家。
一、误删原理
在理解找回误删文件的方法之前,首先需要了解误删的原理。在Unix或Linux系统中,所有的文件和目录都有自己的inode号码和block号码。inode是一个索引节点,每个文件或目录都有一个唯一的inode号,inode中记录了该文件或目录的所有属性信息(如文件大小、权限、创建时间、修改时间等)。而block是文件或目录实际存储的地方,每个文件或目录都可以有多个block号。当我们删除一个文件或目录时,只是删除了它的inode号码,并没有真正删除磁盘上的数据块。只有在新的数据占据了这些block才会覆盖原有的数据。所以,如果我们能够找到被删除的inode号码,就可以通过inode号码找到文件或目录对应的block号,进而恢复被误删的文件。
二、准备工作
在实现误删文件的找回,首先需要准备一个备份设备,该设备应有足够的容量,能够存放误删的文件。我们可以使用外接硬盘、USB闪存盘、网络存储设备等作为备份设备。
三、通过命令找回误删文件
1. 使用find命令
find命令可以在指定目录以及其子目录中查找符合条件的文件。我们可以通过以下命令查找被删掉的文件:
“`
find / -inum inode_number -print
“`
其中/inum是指定要查找的目录(包括子目录),inode_number是被误删除文件的inode号码。执行该命令后,会输出所有inode号码为inode_number的文件路径。如果找到了被删除的文件,那么可以通过一个管道符号‘|’将其传输到另一个命令中,如cp命令,将文件复制到备份设备中:
“`
find / -inum inode_number -print | xargs cp /path/to/backup/folder
“`
2. 使用debugfs命令
debugfs是一个Linux文件系统内部数据结构调试和维护工具。它可以查看inode和block的详细信息,包括路径名、大小、权限等信息。我们可以使用以下命令调用debugfs:
“`
debugfs /dev/sdaX
“`
其中/dev/sdaX是指被误删除文件所在的设备名和分区号码。输入以上命令后,可以进入debugfs的命令行模式。在此模式下,我们可以通过以下命令查找被删除文件的inode号码:
“`
lsdel
“`
该命令会列出所有被删除的inode号码,找到被误删的文件所对应的inode号码后,可以通过以下命令进行恢复:
“`
#创建一个新文件夹,用来存放误删的文件
mkdir /path/to/recovered/folder
#将被误删文件的inode号码所在的block读取到新的文件中
debugfs -R ‘dump /path/to/recovered/folder/filename’ /dev/sdaX
“`
其中,‘’和‘/path/to/recovered/folder/filename’分别为被误删文件的inode号码和新文件的路径和名称。
四、通过工具找回误删文件
1. extundelete
extundelete是一个帮助用户恢复被删除文件的工具,它可以恢复以ext2、ext3或ext4文件系统格式的磁盘中的被删除文件。使用该工具的前提是文件所在分区没有被深度格式化或覆盖。可以通过以下命令安装extundelete:
“`
sudo apt-get install extundelete
“`
使用该工具的命令格式如下:
“`
extundelete /dev/sdaX –inode –restore-file
“`
其中/dev/sdaX是指文件所在的设备和分区号码,和分别是被删除文件的inode号码和文件名。
2. TestDisk
TestDisk是一个免费的开源数据恢复软件,它可以恢复各种文件系统格式(如ext2、ext3、ext4、FAT、NTFS等)的被删除文件、分区表、引导记录等。使用该工具的命令格式如下:
“`
sudo testdisk /dev/sdaX
“`
其中/dev/sdaX是指文件所在的设备和分区号码。执行后会进入一个交互式界面,引导用户选择需要查找的分区、选择需要恢复的文件、选择恢复的目标位置等。TestDisk提供了丰富的恢复手段,用户可以按自己的需要进行操作。
五、
成都网站建设公司-创新互联为您提供网站建设、网站制作、网页设计及定制高端网站建设服务!
如果你这么干,如果是有boot分区,那么他也会被删除了,
而他也是windows需要的(win7以后),或滑所以怕是win也引导不好基到了,
但是你可以做重装,然后它也会被恢复。
部分友团谨设备无了,那么看你rm的时候,是不是在mount的,是的话,它也会清除掉的。,
1、先要进行重启ubuntu,随即长按shirft进入grub菜单,这时候注意的是再进行选择recovery mode,按”段顷敬e”键进入编辑页面,如下图所示。
2、然后这时候注意的是就会进入恢复模式的,然后就是要将要找回的文件所在的分区重新挂载成只读,如下图所示。
3、接着就是将ro recovery nomodeset注意的是乎袭进行替换为”rw single init=/bin/bash” ,然后就是要这时候注意的是按ctrl+x进入单用户模式,这握慎时候就可以看到当前用户即为root即可。
4、最后要按ctrl+x 启动,这时候就会进行进入root的shell环境,然后就可以恢复文件了,如下图所示。
linux的文件被rm删除是可以通过linux自带的文件恢复工具debugfs来进行恢复,但是只能恢复ext2文件系统的文件,不能恢复ext3文件系统的文件。
1,首先查看需要恢复的文件所在的文件系统
命令行模式下输入指令mount
# mount
/dev/xvda1 on / type ext2 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
由上知,/dev/xvda1挂载在/下,即根目录,且文件系统是ext2
2,将要找回的文件所在的分区重新挂载成只裂隐哪读
(因为这样比较安全,可以防止因新的文件写入该分区肆码而导致无法找回文件)
# mount -n -o remount,ro /dev/xvda1
如果不能重新挂载,那么一定有用户正在使用该分区中的文件,我们可以使用指令:fuser -m -v /dev/xvda1来查看当前哪个用户正在使用该分区中的文件,然后使用fuser -k -m -v /dev/xvda1来杀死用户使用该分区的任何进程。
3,使用debugfs工具携敬恢复文件
# debugfs /dev/xvda1
debugfs 1.42 (29-Nov-2023)
debugfs: lsdel
进入debugfs模式后输入lsdel后可以看到被删除的文件信息
stat显示某个节点所对应的文件信息,
恢复文件使用dump 文件路径。
如果被删除的文件很多,那么通过lsdel可看出文件的时间,然后自己判断进行恢复。
1、在浏览器中搜索并下载安装D-Recovery闪电版软件。打开D-Recovery闪电版,显示如图所示的界面。
2、选择一个磁盘,这里以选F盘为例,如图所示,点击展开燃慎。
3、展开后,在零散目录中会皮逗敬看到很多已删除文件夹,如图所示。
关于linux rm -rf 找回的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
香港云服务器机房,创新互联(www.cdcxhl.com)专业云服务器厂商,回大陆优化带宽,安全/稳定/低延迟.创新互联助力企业出海业务,提供一站式解决方案。香港服务器-免备案低延迟-双向CN2+BGP极速互访!
本文标题:Linux误删怎么办?详解rmrf找回方法(linuxrm-rf找回)
文章网址:http://www.shufengxianlan.com/qtweb/news23/262273.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联