如何解决从磁盘上的空白空间读取字节
众所周知,一般来说,当您在大多数(所有?)现代操作系统上删除磁盘上的文件时,该文件的字节不会被删除,但该空间被“释放”并且不会被其他数据覆盖,直到它用于另一个写操作。
我也知道在类 UNIX 系统上,我可以直接从它在 /dev/whatever
处的文件系统中的表示读取磁盘上的字节。
然而,/dev/whatever
返回磁盘上所有内容的所有字节,包括在面向用户的意义上仍然“存在”的文件,我真正想做的是识别和读取 仅删除某些资源后磁盘上剩余的字节 - 因此磁盘的“空闲”空间中仍然存在的数据(我知道存在文件恢复和数字取证工具可以恢复这些文件,但出于我的目的,我需要做一些更接近金属的事情 - 我有兴趣获得剩余在磁盘空白空间上的数据字节流,没有额外的结构)。
因此,有什么方法可以以编程方式访问(例如)已分配和未分配的磁盘空间范围,然后从磁盘读取与未分配范围对应的字节?对于编程语言,我很不可知——我假设这将涉及可从一个小 C 程序或类似程序调用的低级 API。
我假设这是依赖于操作系统/文件系统 - 如果这有帮助,我在 Mac OS X 和 apfs 上,但会感谢任何 OS/FS 组合的提示,因为我最终要将这个项目移植到其他平台。
非常感谢任何提示或见解!谢谢。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。