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日

相关文章

  • CentOS上的安全防护软件Selinux详解

    下面是针对CentOS上的安全防护软件Selinux的完整攻略: 步骤1:安装selinux软件包 在CentOS上,Selinux可以通过以下命令安装: yum install -y policycoreutils policycoreutils-python selinux-policy selinux-policy-targeted libselinu…

    Linux 2023年5月14日
    00
  • linux 远程同步数据工具rsync (1)

    rsync 远程同步数据工具,是linux下的数据备份工具rsync(remote sync 远程同步) 特点:在本地同步数据(类似于cp,但是有不同于远程scp),它会先判断已经存在的数据和远程数据有什么不同,不同时才会把不同的部分覆盖掉 rsync 使用格式 1.rysnc (命令格式)的格式(需要输入远程root密码) 注意:两个机器之间要使用这rsy…

    Linux 2023年4月16日
    00
  • Linux badblocks命令

    Linux badblocks命令 Linux badblocks命令用于检测磁盘坏道,可以扫描磁盘并标记出坏道。使用badblocks命令可以帮助您检测磁盘的健康状况,以便及时备份数据或更换盘。 命令语法 badblocks命令的基本语法如下: “badblocks [选项] [设备] 其中,选项表示命令选项,设备表示要检测的磁盘设备。 ## 命令项 b…

    Linux 2023年5月10日
    00
  • linux下部署war包

    首先,直接把相应的war包放到$TOMCAT_HOME/webapps下(我直接用的WinSCP工具上传) 然后,修改$TOMCAT_HOME/conf/server.xml,在Host配置段中添加类似于如下内容:   <Context path=”/” docBase=”hdfs-webdav.war” debug=”0″ privileged=”t…

    Linux 2023年4月16日
    00
  • 在CentOS7上搭建Jenkins+Maven+Git持续集成环境的方法

    以下是在CentOS7上搭建Jenkins+Maven+Git持续集成环境的方法的完整攻略。该攻略分为以下几个步骤: 安装JDK 安装Maven 安装Git 安装Jenkins 配置Jenkins 示例说明 1. 安装JDK 首先需要安装JDK。可以通过以下命令安装: sudo yum install java-devel 安装完成之后,可以通过以下命令验证…

    Linux 2023年5月14日
    00
  • Linux 学习笔记之超详细基础linux命令(the end)

    Linux学习笔记之超详细基础linux命令 by:授客 QQ:1033553122 ———————————接Part 14—————————— 例子:将网卡的ip地址设置为192.168.0.3 [root@localhost laiyu]# ifconfig eth0 1…

    Linux 2023年4月11日
    00
  • Linux中升级更新命令yum upgrade和yum update的区别

    在 Linux 系统中,yum 命令是非常常用的包管理工具。它可以方便地进行软件包的安装、升级以及删除等操作。当我们需要进行软件包升级时,常用的命令是 yum upgrade 和 yum update。那么,yum upgrade 和 yum update 到底有什么区别呢?接下来我们详细讲解一下。 yum upgrade yum upgrade 命令是用于…

    Linux 2023年5月14日
    00
  • linux使用汇总

    linux使用汇总 Linux的目录结构 没有逻辑磁盘分区(C盘、D盘…) 是一棵树形结构,根目录是/ 根目录下边有几个文件夹,需要我们了解: /etc:配置文件所在的文件夹。比如:安装JDK,配置环境变量,就要修改/etc/profile文件 /usr:unix shared resource,系统共享资源文件夹。我们安装软件通常安装在:/usr/lo…

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