AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 6698
In Process
user3215
user3215
Asked: 2010-10-13 22:37:58 +0800 CST2010-10-13 22:37:58 +0800 CST 2010-10-13 22:37:58 +0800 CST

用 rm 删除的文件/目录可以恢复吗?

  • 772

rm是否可以使用和恢复从终端删除的文件/目录rm -r?如果文件从图形界面中删除,它可以从垃圾箱中恢复,但是如果使用 rm 实用程序删除了文件,如何恢复?

data-recovery rm
  • 8 8 个回答
  • 281905 Views

8 个回答

  • Voted
  1. enzotib
    2010-10-13T23:08:02+08:002010-10-13T23:08:02+08:00

    为此trash-cli,我在我的~/.bashrc

    alias rm=trash
    

    并且trash-cli可以通过以下命令安装该软件包:sudo apt-get install trash-cli.

    您删除的文件将被移至垃圾箱,您可以在 nautilus 垃圾箱中查看它们。

    您始终可以rm使用以下方法之一访问真实数据:

    command rm something
    'rm' something
    \rm something
    

    还有一些命令可以从终端访问垃圾箱trash-list,,restore-trash(或trash-restore),trash-empty可从包垃圾-cli 安装(然后查看他们的手册页)。

    最后一点,不建议为超级用户使用这样的别名,因为它会干扰系统操作。

    • 79
  2. evgeny
    2010-10-13T22:47:45+08:002010-10-13T22:47:45+08:00

    从终端删除它会永久删除它 - 恢复非常困难,有时甚至是不可能的。

    如果您的分区类型是ext3(使用 进行检查System->Administration->Disk Utility),请查看ext3undel。

    如果不是(如果您使用默认设置安装了 Ubuntu),请尝试该extundelete程序。

    但不能保证你会恢复任何东西。

    • 30
  3. H.-Dirk Schmitt
    2013-03-10T12:36:04+08:002013-03-10T12:36:04+08:00

    您正在寻找:extundelete -用于从 ext3/ext4 分区恢复已删除文件的实用程序

    要找到这样的包,您可以尝试:apt-cache search undelete

    要使用该实用程序,请安装它:sudo apt-get install extundelete

    安装后调用man extundelete并仔细研究。

    • 13
  4. Reuben L.
    2014-02-21T22:37:49+08:002014-02-21T22:37:49+08:00

    作为替代方案,如果您具体知道它是什么类型的文件...

    sudo apt-get install foremost
    

    现在打开/etc/foremost.conf,你会看到一长串被注释掉的行。如果您的文件类型存在,请取消注释该行(您可能还想删除不相关的行)。

    如果您的文件类型不存在,请添加您自己的行。假设我想恢复一个 .css 文件,我知道它大约 40K。我可以添加这个:

    css     n       40000   Theme\sName:     Plugin\sFixes
    

    第 2 列是区分大小写,第 3 列是大小上限,第 4 列是文件的开始方式(记得使用转义字符),最后一列是文件通常的结束方式。

    使用以下命令(相应地编辑磁盘。可以用df命令检查)

    foremost -v -T -c /etc/foremost.conf -i /dev/sda -o output
    

    接下来会发生的是,最重要的将创建一个名为 output 的文件夹并将所有恢复的数据(在这种情况下)转储到该文件夹​​中。从那里您可以使用diff或meld比较恢复的“文件”,看看哪个是最新的。

    • 8
  5. John Strood
    2016-10-11T03:04:26+08:002016-10-11T03:04:26+08:00

    用最抽象的术语来说,每当您在图形界面上删除一个文件时,该文件都会“移动”到一个特殊的“缓冲区”,一个名为trash. 您可以在您的home目录中找到它,~/.local/share/Trash/. 从此目录中“删除”的文件将被真正删除。rm当您在文件上使用时,会发生这种真正的删除。

    恢复已删除的文件非常困难。文件系统中的文件表示为 B 树等上的节点。当使用 删除文件时rm,树会更新,硬链接的数量会减少,目录列表中的相应条目也会被删除。如果您的文件有硬链接,那么您的文件绝对安全。你可以做一个file / -samefile filename. 如果您还记得它的 inode 编号,则可以搜索该文件(这几乎不是这种情况)。

    另一种情况是上述可能性都不成立。每当您rm创建文件时,都会删除目录上的文件条目,从而将硬链接的数量减少一个。如果硬链接的数量下降到零,那么指向 inode 上文件的指针就会被删除,或者被标记为删除。无论哪种方式,您的文件“仍然”驻留在硬盘上。该文件实际上仅在随后重新安装时才从硬盘中删除。在这种情况下,文件恢复非常困难,需要遍历文件系统树和代表实际磁盘块位置的 inode。有一个我听说过但从未使用过的流行工具,叫做extundelete. 虽然不能保证,但值得一试。

    一旦您成功或没有恢复您的文件,请尽快进行定期备份。这在 Ubuntu 上非常简单。

    • 5
  6. Stéphane
    2010-10-13T22:44:25+08:002010-10-13T22:44:25+08:00

    抱歉,使用“rm”和“rm -f”从命令行删除的文件绕过了 Gnome 桌面上的“垃圾箱”。

    您可能还想询问是否有任何 extfs “取消删除”工具,例如用于 FAT 和 NTFS 的工具。(我不知道,但如果没有,我会感到惊讶。)

    • 1
  7. Natesh bhat
    2018-05-15T17:40:48+08:002018-05-15T17:40:48+08:00

    使用“ rm-trash ”实用程序处理将它们放入垃圾箱以供以后检索,并支持“rm”命令的所有选项。

    sudo add-apt-repository ppa:nateshmbhat/rm-trash
    sudo apt-get update
    sudo apt-get install rm-trash
    

    “rm垃圾”是

    • 用于代替 rm
    • 处理 rm 可以采取的所有选项
    • 处理已在垃圾箱中的文件的文件名冲突
    • 自动处理一些权限问题
    • 如果 rm 从任何其他脚本调用或间接调用,则系统会自动使用“rm”命令
    • 显示适当的错误消息,例如出现在rm
    • 1
  8. m3asmi
    2020-03-17T14:29:13+08:002020-03-17T14:29:13+08:00

    只需在主文件夹中的文件中添加别名.bash_alias或.bash_profile

    alias rm='gio trash'
    
    • 1

相关问题

  • 别名 rm 做其他事情有明显的缺点吗?

  • 如何恢复被删除的文件?

  • 恢复 EXT4 分区

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何安装 .run 文件?

    • 7 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    如何获得 CPU 温度?

    • 21 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Marko Smith

    如何使用命令行将用户添加为新的 sudoer?

    • 7 个回答
  • Marko Smith

    更改文件夹权限和所有权

    • 9 个回答
  • Marko Smith

    你如何重新启动Apache?

    • 13 个回答
  • Marko Smith

    如何卸载软件?

    • 11 个回答
  • Marko Smith

    如何删除 PPA?

    • 26 个回答
  • Martin Hope
    NES 如何启用或禁用服务? 2010-12-30 13:03:32 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    Olivier Lalonde 如何在结束 ssh 会话后保持进程运行? 2010-10-22 04:09:13 +0800 CST
  • Martin Hope
    David B 如何使用命令行将用户添加为新的 sudoer? 2010-10-16 04:02:45 +0800 CST
  • Martin Hope
    Hans 如何删除旧内核版本以清理启动菜单? 2010-08-21 19:37:01 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve