Linux Bash:确定部分删除的内容
我想删除一个符号链接Linux Bash:确定部分删除的内容,linux,bash,Linux,Bash,我想删除一个符号链接 rm-rf名称 而是用 rm-rf名称/ 我想我花了一秒钟才意识到这个错误并取消了它。这是一个包含数百GB数据的海量目录。因此,无论如何删除都需要很长时间 由于命令不完整,部分处理的文件是否已恢复(如mv)或已被永久删除 如果它们被不可恢复地删除,是否有可能找出已删除的内容?它是否按照与ls(字母顺序)相同的顺序删除 是否有从系统中删除的文件日志 操作系统是科学Linux。文件系统是nfs(df-T)。。。但在一个地方对问题的每个分支都有明确的答案并没有什么坏处,如果这个答
rm-rf名称
而是用
rm-rf名称/
我想我花了一秒钟才意识到这个错误并取消了它。这是一个包含数百GB数据的海量目录。因此,无论如何删除都需要很长时间
mv
)或已被永久删除ls
(字母顺序)相同的顺序删除操作系统是科学Linux。文件系统是nfs(
df-T
)。。。但在一个地方对问题的每个分支都有明确的答案并没有什么坏处,如果这个答案被迁移到超级用户那里,那就更好了:
mv
期间的单个rename()
系统调用一样,单个文件的单个unlink()
也是原子的——它要么逐个文件完成,要么不完成。没有“半途而废”状态,也没有跨越多个可回滚文件的更大事务将删除或不删除每个单独的目录条目
类似地,在unlink()
结束时没有指向它的剩余目录项(也称为“硬链接”)或打开的文件句柄的任何文件都将立即被删除,尽管文件系统自行决定是否在,以及在什么情况下实际擦除或重用存储其数据的底层块,或指定哪些块与每个现在已删除的文件关联的跟踪数据
sysdig
)
例如,如果系统管理员正在使用cronned快照运行ZFS或btrfs,则他们可以将当前存在的文件列表与上次快照时存在的文件列表进行比较
不一般。如果您的站点运行的是Sysdig Cloud,或者是具有非默认行为的商业文件服务器,那么可能——但您的系统管理人员将是能够回答这个问题的人。…也不是真正的编程问题。我建议要么这样,要么这样说——任何未链接的文件都很容易将其块重新分配到新编写的内容中。不,取消进程不会恢复链接。如果可以这样做,而不终止运行的程序,则应该认真考虑重新安装只读问题的文件系统——这将阻止写入新的内容,这将阻止块被重用,如果发生的话。将消除这些数据块中数据的任何可恢复性。另一方面,他们可能正在使用支持快照的文件系统,如zfs或btrfs,或者在这种情况下有适当的恢复机制。我至少建议询问一下。根据它们的设置方式,检索在最后一个夜间快照(或类似快照)中存在的文件可能非常简单。我联系了管理员,结果发现快照已启用。然后我可以使用
diff
将当前目录与旧的快照进行比较,删除了4个大文件,这些文件很容易恢复。谢谢你的帮助。