是否有恢复/取消删除已删除文件的命令rm
?
$ rm -rf /path/to/myfile
Run Code Online (Sandbox Code Playgroud)
我怎样才能恢复myfile
?如果有这样的工具,我该如何使用它?
我错误地在创建许多 c 程序文件的当前目录上运行了 rm * 。我从早上就一直在研究这些。现在我不能再抽出从早上开始创建文件的时间了。请问如何恢复。他们也不在回收站!
关于extundelete
如何尝试取消删除/var/tmp/test.iso
我刚刚删除的文件,是否有一个简单的选项?
(这并不重要,我会开始以只读方式重新安装驱动器或类似的东西。我也可以再次重新下载该文件)
我正在寻找一个简单的命令,如果我设法快速恢复它,我可以尝试使用它。
我知道,可以以只读方式重新安装驱动器:(请参阅如何简单地恢复刚刚删除的空磁盘上的唯一文件?)
但这在仍然挂载的磁盘上也有可能吗?
信息:
如果删除的文件在 NTFS 分区上,则很容易,ntfsundelete
例如,如果您知道大小约为 250MB,则使用
sudo ntfsundelete -S 240m-260m -p 100 /dev/hda2
Run Code Online (Sandbox Code Playgroud)
然后通过inode取消删除文件,例如
sudo ntfsundelete /dev/hda2 --undelete --inodes 8270
Run Code Online (Sandbox Code Playgroud) 我有(好吧,我有)一个目录:
/media/admin/my_data
Run Code Online (Sandbox Code Playgroud)
它的大小约为 49GB,其中包含数万个文件。该目录是活动 LUKS 分区的挂载点。
我想将目录重命名为:
/media/admin/my_data_on_60GB_partition
Run Code Online (Sandbox Code Playgroud)
我当时没有意识到,但我从主目录发出了命令,所以我最终做了:
~% sudo mv /media/admin/my_data my_data_on_60GB_partition
Run Code Online (Sandbox Code Playgroud)
然后mv
程序开始移动,/media/admin/my_data
并将其内容移动到一个新目录~/my_data_on_60GB_partition
。
我使用Ctrl+C来取消命令,所以现在我有一大堆跨目录的文件:
~/my_data_on_60GB_partition <--- about 2GB worth files in here
Run Code Online (Sandbox Code Playgroud)
和
/media/admin/my_data <---- about 47GB of orig files in here
Run Code Online (Sandbox Code Playgroud)
新目录~/my_data_on_60GB_partition
及其一些子目录归 root 所有。
我假设mv
程序最初必须以 root 身份复制文件,然后在传输后将chown
它们复制回我的用户帐户。
我有一个目录/分区的旧备份。
我的问题是,是否有可能可靠地恢复移动的一堆文件?
也就是说,我可以运行:
sudo mv ~/my_data_on_60GB_partition/* /media/admin/my_data
Run Code Online (Sandbox Code Playgroud)
或者我应该放弃尝试恢复,因为文件可能已损坏和部分完整等?
/media/admin/my_data
Run Code Online (Sandbox Code Playgroud) 我不是在谈论恢复 已删除的文件,而是在谈论覆盖的文件。即通过以下方法:
# move
mv new_file old_file
# copy
cp new_file old_file
# edit
vi existing_file
> D
> i new_content
> :x
Run Code Online (Sandbox Code Playgroud)
假设 linux 机器上没有安装特殊程序,如果执行上述三个操作中的任何一个,是否可以检索任何内容?
最近,我的外部硬盘驱动器机箱出现故障(硬盘驱动器本身在另一个机箱中通电)。然而,结果是,它的 EXT4 文件系统似乎已损坏。
该驱动器具有单个分区并使用 GPT 分区表(带有标签ears
)。
fdisk -l /dev/sdb
显示:
Device Boot Start End Blocks Id System
/dev/sdb1 1 1953525167 976762583+ ee GPT
Run Code Online (Sandbox Code Playgroud)
testdisk
显示分区完好无损:
1 P MS Data 2049 1953524952 1953522904 [ears]
Run Code Online (Sandbox Code Playgroud)
...但分区无法挂载:
$ sudo mount /dev/sdb1 a
mount: you must specify the filesystem type
$ sudo mount -t ext4 /dev/sdb1 a
mount: wrong fs type, bad option, bad superblock on /dev/sdb1,
Run Code Online (Sandbox Code Playgroud)
fsck
报告无效的超级块:
$ sudo fsck.ext4 /dev/sdb1
e2fsck 1.42 (29-Nov-2011)
fsck.ext4: Superblock invalid, trying backup blocks... …
Run Code Online (Sandbox Code Playgroud) 我感觉就像校长办公室里的一个孩子,解释说我的作业在到期前一天晚上被狗吃掉了,但我正盯着脸上的一些疯狂的数据丢失错误,我无法弄清楚它是怎么发生的。我想知道 git 怎么会吃掉我的整个存储库!我已经多次将 git 放入绞拧器中,它从不眨眼。我用它将 20 Gig Subversion 存储库拆分为 27 个 git 存储库,并将 foo 过滤分支出来以解决混乱问题,并且它从未在我身上丢失过一个字节。reflog 总是可以依靠的。这次地毯不见了!
从我的角度来看,我所做的只是运行git pull
,它破坏了我的整个本地存储库。我的意思不是说它“弄乱了签出的版本”或“我所在的分支”或类似的东西。我的意思是整件事都没有了。
这是事件发生时我的终端的屏幕截图:
让我带你了解一下。我的命令提示符包含有关当前 git 存储库的数据(使用 prezto 的 vcs_info 实现),因此您可以查看 git 存储库何时消失。第一条命令就够正常了:
» caleb » jaguar » ~/p/w/incil.info » ? ? zend ? »
??? git co master
Switched to branch 'master'
Your branch is up-to-date with 'origin/master'.
Run Code Online (Sandbox Code Playgroud)
在那里你可以看到我在 'zend' 分支上,并检查了 master。到现在为止还挺好。您将在我的下一个命令之前的提示中看到它成功切换了分支:
» caleb » jaguar » ~/p/w/incil.info » ? ? master ? »
??? git pull
remote: Counting objects: …
Run Code Online (Sandbox Code Playgroud) 我们的系统崩溃了,我们正在尝试恢复我们的数据。光盘很好,但操作系统不见了,所以我试图获取实际的 MySQL 数据库文件。
有谁知道在 Debian Linux 服务器中在哪里可以找到它们?
我使用了命令
mv folder_name ....
Run Code Online (Sandbox Code Playgroud)
我认为通过使用..
两次,它会将其移回两个文件夹。
不幸的是我的文件消失了。
我需要恢复它们。
data-recovery ×10
ext4 ×2
files ×2
rm ×2
backup ×1
debian ×1
debugging ×1
extundelete ×1
filesystems ×1
git ×1
linux ×1
move ×1
mv ×1
mysql ×1
superblock ×1
ubuntu ×1