linux系统文件 误删除,误删除Linux系统文件了?这个方法教你解决

误删除Linux系统文件了?不用急,本文将给你一个恢复Linux文件的方法,让你轻松应对运维中的各风险问题。方法总比问题多~

说在前面的话

针对日常维护操作,难免会出现文件误删除的操作。大家熟知Linux文件系统不同win有回收站,删除后的文件可以到垃圾箱寻回,要知道Linux文件修复比较费劲,网络上面的文档也是五花八门。所以本次研究一种比较靠谱的文件和目录恢复方法,也给维护人员留一条后路。

分析对比debugfs. testdisk 6.14. extundelete,对比各自官网介绍和操作说明本次决定研究extundelete对文件和目录的恢复操作。

5c76af5e70e65287263dca44e473cf55.png

Linux下文件误删除,使用extundelete恢复测试过程

1、给虚拟主机添加一块磁盘,磁盘为/dev/sdb,如下:

4d4e197f5dce06afb4796ffa5102aa9d.png

2、格式化磁盘,并进行挂载

# mkfs.ext4 /dev/sdb

# mkdir /usr/local/dbdata/

# mount /dev/sdb /usr/local/dbdata/

273d4744f0468eb33e350d8c4f4c7393.png

3、测试误操作删除以下文件

/usr/local/dbdata/gperftools-2.4.tar.gz #文件

/usr/local/dbdata/pcre-8.32 #目录

执行误操作:

# rm -rf /usr/local/dbdata/gperftools-2.4.tar.gz /usr/local/dbdata/pcre-8.32

4、将误操作所在分区进行只读保护

如果确定文件被误删,在没有备份的情况下请马上对分区实施写入保护(预防新的写入覆盖误删的块数据,因此权限给只读):

# mount -o remount,ro /dev/sdb

# mount -o remount,ro /usr/local/dbdata/

5、数据恢复工具安装

工具安装部署

工具下载

# wget https://nchc.dl.sourceforge.net/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2

解压安装

依赖包

# yum -y install gcc-c++ e2fsprogs.x86_64 e2fsprogs-devel.x86_64

# tar -jxvf extundelete-0.2.4.tar.bz2

# cd extundelete-0.2.4

# ./configure

# make && make install

验证安装结果

# extundelete -v

6、文件恢复过程

恢复指定文件:

原理:从根节点(inode=2)开始找到被删除文件的i节点,然后recover i节点。

以下是模拟删除gperftools-2.4.tar.gz(文件)和pcre-8.32 (目录)

先检测被删除的文件有哪些:

# extundelete /dev/sdb --inode 2

1a1a7cf83d41986da216c185a925362c.png

从圈出来的可以看到,有以下两个

gperftools-2.4.tar.gz 15 Deleted

pcre-8.32 655361 Deleted

注意:恢复过程不要在误删分区进行,谨防inode. block块相互覆盖

先恢复文件(可根据文件名进行恢复):

# extundelete /dev/sdb --restore-file gperftools-2.4.tar.gz

93d8affcd0baae7a07f4beaf7657ab0b.png

恢复目录(根据目录名恢复):

# extundelete /dev/sdb --restore-directory pcre-8.32

d58393f9ef1d41529dc601fb7bbcd8db.png

***会在当前目录下看到一个名为RECOVERED_FILES的目录,在目录里就可以看到被误删除的文件以及目录:

说在后面的话

8cc46c0c009345b61864a4f30ae55146.png

根据上面操作证明extundelete 工具可以实现对误删数据的恢复,而且操作简单。

总结:

1、使用rm一定要谨慎

2、磁盘按照功能进行分区是必要的

3、最少掌握一种数据恢复方式

【编辑推荐】

【责任编辑:庞桂玉 TEL:(010)68476606】

点赞 0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux系统中的XFS文件系统删除文件并且没有备份时,有几种方法可以尝试恢复丢失的文件。 首先,使用一些文件恢复工具可以尝试从未使用的磁盘空间中恢复被删除文件。有一些工具如TestDisk、PhotoRec等,它们可以扫描磁盘,并通过识别文件的签名来恢复被删除文件。它们可以在终端中运行,并且通常可以免费获取。 其次,可以尝试使用XFS文件系统自带的一些工具来恢复删除文件。XFS文件系统提供了一些工具如xfs_restore、xfs_ls、xfs_quota等,它们可以帮助用户查找和恢复被删除文件。通过这些工具,用户可以在文件系统中搜索并找回之前删除文件。 另外,还可以考虑使用数据恢复服务来找回被删除文件。这些服务通常需要费用,并且可能需要将受损的磁盘发送给专业的数据恢复公司。这些专业的公司有着更高级的设备和技术,可以尝试从磁盘中恢复丢失的数据。 最后,鉴于删除文件可能会导致数据的永久丢失,因此在使用Linux系统时,定期进行数据备份非常重要。通过定期备份,即使删除文件,也可以从备份中恢复数据,减少数据损失风险。 总之,虽然在Linux系统删除文件且没有备份恢复是一项具有挑战性的任务,但仍然有一些方法可以尝试恢复丢失的文件。无论采取哪种方法,都应该牢记数据备份的重要性,以避免类似情况的再次发生。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值