linux环境下恢复rm误删的文件方法

Linux环境下恢复误删文件的方法

在Linux环境下,如果误删了文件,不要惊慌,我们还可以通过以下几种方式找回被误删的文件。

1. 使用回收站

在图形化的桌面环境下,我们可以通过回收站来找回误删的文件,但是在纯命令行环境下,我们需要使用第二种方法。

2. 使用extundelete命令

extundelete 是一款可以恢复 ext3/ext4 文件系统上被误删文件的工具。以下是使用示例:

  1. 安装extundelete命令
sudo apt-get install extundelete
  1. 扫描误删文件所在的分区,获取其 inode 编号
sudo extundelete --inode <文件inode编号> --restore-file <文件恢复后保存的路径> <分区路径>

例如,误删了 /home/user1/important.txt 文件,可以通过上述命令来找回:

sudo extundelete --inode 448617 --restore-file /home/user1/important.txt /dev/sda1

其中,448617 是误删文件 important.txt 的 inode 编号,/dev/sda1 是误删文件所在的分区路径。

  1. 注意事项

  2. 在使用extundelete之前,建议先卸载误删分区对应挂载点

  3. 文件恢复后,请注意所属用户和读写权限

3. 使用scalpel工具

scalpel 是一款针对文件恢复场景下,可定制性比较强的文件恢复工具。以下是使用示例:

  1. 安装scalpel命令
sudo apt-get install scalpel
  1. 配置scalpel.conf配置文件

首先我们需要先配置 scalpel.conf 文件,以指定需要恢复的文件类型,并规定恢复后保存的路径:

sudo vim /etc/scalpel/scalpel.conf

在 scalpel.conf 文件中,找到 FILE_SIGNATURES 和 OUTPUT_DIRECTORY 两个选项,并在其下方设置需要恢复的文件格式和保存路径(以 txt 和 jpg 文件为例):

# 指定文件类型
define FILE_SIGNATURES {
    jpg;
    txt;
};

# 恢复文件保存路径
recover_jpg      y;;    # jpg 需要恢复
recover_txt      y;;    # txt 需要恢复
OUTPUT_DIRECTORY /home/user1/recovered_files/;
  1. 运行scalpel命令

接下来在命令行中运行以下命令:

sudo scalpel <分区路径> -o <恢复文件保存的路径>

例如,要恢复 /dev/sda1 分区中误删的文件,可以运行以下命令:

sudo scalpel /dev/sda1 -o /home/user1/recovered_files/
  1. 注意事项

  2. 纯命令行操作,无图形化界面

  3. 文件恢复后,请注意所属用户和读写权限

总结

在Linux环境下,误删文件不必惊慌失措,通过回收站、extundelete 命令和 scalpel 工具等方式,可以轻松找回被误删的文件。建议使用 extundelete 和 scalpel 命令时,先卸载误删分区对应挂载点,恢复文件后注意所属用户和读写权限。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:linux环境下恢复rm误删的文件方法 - Python技术站

(0)
上一篇 2023年5月14日
下一篇 2023年5月14日

相关文章

  • Linux下的文件压缩与解压

    场景描述:为了节省磁盘空间,提高磁盘空间的使用效率,方便对批量文件的传输和管理,引入了文件压缩技术。其原理简单来说就是将原先未被数据占用的空间(每字节下未被使用的bit)进行重新规划和分配,以达到在有限的空间内尽可能多的存储数据的目的。具体方法如下: 一、对于单个文件而言,常用的压缩命令:compress(已淘汰)、gzip(速度最快/但压缩比最低)、bzi…

    Linux 2023年4月12日
    00
  • 详解linux下安装python3环境

    下面我将详细讲解在Linux系统中安装Python3环境的步骤。 1. 检查系统中是否已安装Python3 在终端中使用命令python3 –version来检查系统中是否已安装Python3。若系统中已安装Python3,则会显示其版本号。若未安装,则命令行会提示“command not found”。 $ python3 –version Pytho…

    Linux 2023年5月14日
    00
  • Linux下Nginx安装的方法(pcre和openssl)

    下面是 Linux 下 Nginx 安装的完整攻略,其中包含了 pcre 和 openssl 的安装。 准备工作 在安装 Nginx 之前,需要修改一些系统配置: 更新系统和安装必要的依赖 sudo apt-get update //更新系统 sudo apt-get install build-essential //安装编译器 sudo apt-get …

    Linux 2023年5月14日
    00
  • 详解如何在 CentOS 7 中添加新磁盘而不用重启系统

    下面是在 CentOS 7 中添加新磁盘而不用重启系统的攻略。 准备工作 在进行下一步操作之前,需要您确认以下几点: 要添加的新磁盘已经安装并连接到了计算机上 已经安装了 lsscsi 和 parted 工具,如果没有请使用以下命令进行安装: bash $ sudo yum install lsscsi parted 步骤说明 查看新磁盘信息 使用 lssc…

    Linux 2023年5月24日
    00
  • Linux下配置vlan网卡教程

    Linux下配置vlan网卡教程 简介 VLAN(Virtual LAN)是将单个物理网络划分为多个虚拟网络的技术,实现虚拟网络之间的物理隔离。在Linux上,我们可以使用vlan子接口来配置VLAN。 步骤 首先需要确认网卡和内核模块是否支持vlan功能。 可以使用以下命令查看网卡是否支持vlan: bash $ sudo modprobe 8021q #…

    Linux 2023年5月14日
    00
  • 在linux的tomcat中配置https及自动跳转

          公司业务发展需要添加https,苹果在2017年1月1日以后认为https是安全的所以很多网站都进行了升级。苹果在iOS 9中引入的一项隐私保护功能,屏蔽明文http资源加载,连接必须经过更安全的https。苹果目前允许开发者暂时关闭ATS,可以继续使用HTTP连接,但到年底所有官方商店的应用都必须强制性使用ATS。,如果不升级苹果端是不支持的。…

    Linux 2023年4月13日
    00
  • 在linux中使用包管理器安装node.js

    下面我将详细讲解在Linux中使用包管理器安装Node.js的完整攻略。 安装Node.js 1. 使用apt命令安装Node.js 如果你使用的是Debian或Ubuntu系统,可以使用apt命令来安装Node.js。 打开终端并执行以下命令: $ sudo apt update $ sudo apt install nodejs 以上命令将更新包列表并安…

    Linux 2023年5月14日
    00
  • Linux:进程模型和进程管理

    1 进程与程序 在Linux系统中,执行一个程序或命令就可以触发一个进程,系统会给予这个进程一个ID,称为PID,同时根据触发这个进程的用户与相关属性关系,基于这个PID一组有效的权限设置。如下图所示(图片来自《鸟哥的Linux私房菜》[1]): 举个常见的例子,我们要操作系统的时候通常是利用ssh连接程序或直接在主机上登录,然后获取shell。默认的she…

    Linux 2023年4月17日
    00
合作推广
合作推广
分享本页
返回顶部