我目前遇到了一个严重的问题。
我正在运行 Windows 10 和 Ubuntu 双启动系统。我上次访问 Windows 是在 3 周前,我相当确定当我再次启动 Ubuntu 时它没有处于更新中或其他状态。此外,我根本不使用休眠模式。
我的 Windows 10 和 ubuntu 之间有一个共享驱动器。我今天早上登录 Windows 并尝试访问共享驱动器。当我尝试访问驱动器中以前登录 Windows 时不存在的新文件夹时,Windows 抱怨文件已损坏,我注意到那些新文件消失了。
更糟糕的是,当我重新登录 Ubuntu 时,所有新文件都消失了。
如果这对我有帮助,我想补充一点,上次我访问 Windows 时,当我重新登录 Ubuntu 时,Ubuntu 抱怨它无法挂载共享驱动器,因此我按照一些你必须在终端上输入的说明进行操作(抱歉,我完全不记得了)。
我现在有两个重要问题:
1)我该如何防止将来再次发生这种情况?
2)我怎样才能恢复丢失的文件?
我真诚地感谢你们的帮助。这些文件对我的研究很重要。
谢谢,我希望很快收到您的建议。
编辑:
感谢大家的回复!我试过 photorec,现在正在整理我的文件。如果失败了,我会尝试下面 rkeating 的建议。
我现在将备份我的文件,但我担心即使禁用所有 Windows 更新等,这仍然无法解决问题。如果我没有从 Windows 访问共享驱动器,则不会发生任何事情。当我单击一个相对较新的文件夹时,事情就出错了。这样做之后,我仍然可以访问我的共享驱动器上的旧文件。我如何确保将来能够从 Windows 访问共享驱动器上的文件而不会出现任何问题?非常感谢您的建议!谢谢!
答案1
当 Windows 删除文件时,它会将它们放入垃圾箱。我猜你查看了 Windows 垃圾箱但没有找到它们。你可以使用以下命令在 Ubuntu 中搜索它们。由于你说驱动器是共享的,我假设它是 NTFS 文件系统。如果不是,这些命令将不起作用。
运行此命令并将输出保存到文件:
sudo ntfsundelete /dev/sdxx(其中 sdxx 是要从中恢复的 Windows 驱动器/分区,例如 sda1。)这将生成已删除文件的列表。该列表可能很长。
通读列表以选择要取消删除的文件的 ID(或 ID,例如:123-176)。使用以下命令:
ntfsundelete /dev/sdxx -u -i id#(将 xx 更改为您的驱动器/分区,将 id# 更改为要取消删除的文件的 ID)
以下是 sda1 使用一系列 ID 取消删除的示例:
ntfsundelete /dev/sda1 -u -i 4775-4786