当前位置: 首页 > 科技观察

误删Linux系统文件?本方法教你解决

时间:2023-03-20 11:21:41 科技观察

误删linux系统文件?别着急,本文就给大家一个恢复linux文件的方法,让你轻松应对运维中的各种风险。方法永远比问题多~前面说了,日常的维护操作,难免会误删文件。大家都知道Linux文件系统有一个不同于Win的回收站。可以从垃圾箱中检索已删除的文件。要知道Linux文件修复比较费力,网上有各种文档。因此,本次研究了一种更可靠的文件和目录恢复方法,也为维护人员留了后路。分析对比debugfs.testdisk6.14.extundelete,对比他们官网的介绍和操作说明。这次我们决定研究一下extundelete对文件和目录的恢复操作。extundelete下载官网地址:https://pkgs.org/download/extundeleteLinux下文件被误删,使用extundelete恢复测试进程。给虚拟主机添加一个磁盘,磁盘为/dev/sdb,如下:格式化磁盘并挂载:#mkfs.ext4/dev/sdb#mkdir/usr/local/dbdata/#mount/dev/sdb/usr/local/dbdata/test误操作删除以下文件:/usr/local/dbdata/gperftools-2.4.tar.gz#file/usr/local/dbdata/pcre-8.32#目录执行误操作:#rm-rf/usr/local/dbdata/gperftools-2.4.tar.gz/usr/local/dbdata/pcre-8.32会对误操作所在的分区进行只读保护。如果确定文件被误删,请在没有备份Ingress保护的情况下立即写入分区(防止新的写入覆盖误删的块数据,所以权限为只读):#mount-oremount,ro/dev/sdb#mount-oremount,ro/usr/local/dbdata/datarecoverytool安装工具安装部署官网http://extundelete.sourceforge.net/目前稳定版为extundelete-0.2.4。工具下载#wgethttps://nchc.dl.sourceforge.net/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2解压安装依赖包#yum-yinstallgcc-c++e2fsprogs.x86_64e2fsprogs-devel.x86_64#tar-jxvfextundelete-0.2.4.tar.bz2#cdextundelete-0.2.4#./configure#make&&makeinstall验证安装结果#extundelete-v文件恢复过程恢复指定文件:原理:从根节点(inode)开始=2)找到被删除文件的i节点,然后恢复i节点。下面模拟删除gperftools-2.4.tar.gz(文件)和pcre-8.32(目录)。首先查看删除了哪些文件:#extundelete/dev/sdb--inode2圈起来的可以看到,有以下两个:gperftools-2.4.tar.gz15Deletedpcre-8.32655361Deleted注意:不要提防索引节点。block块相互覆盖,先恢复文件(按文件名恢复):#extundelete/dev/sdb--restore-filegperftools-2.4.tar.gz恢复目录(按目录名恢复):#extundelete/dev/sdb--restore-directorypcre-8.32***你会在当前目录下看到一个名为RECOVERED_FILES的目录,在该目录下可以看到被误删的文件和目录:说在下面的话证明extundelete工具可以按照上面的操作恢复误删的数据,而且操作简单。总结:使用rm时一定要谨慎。有必要根据其功能对磁盘进行分区。至少掌握一种数据恢复方法。