我尝试从python的本地磁盘读取MFT表。当然,如果我写这样的东西:
input_file = open('C:\$MFT', "rb")
我会得到
[Errno 13]许可被拒绝:'C:\ $ MFT'
我试图使用pyMFTGrabber,但它不起作用;我得到了很多“socket.errors”。
使用Python读取此文件的最佳和简单方法是什么?
也许它是一些WinAPI,或其他什么?阅读后我想用"analyzeMFT"
分析它
这对python来说相当痛苦,因为它并不完全是低级别的。
我想你应该从这开始:
L“\\?\ C:\ $ MFT”是您需要在MS的VC ++ API中使用的命名空间,以便创建MFT的句柄。
你应该考虑查看你提到的pyMFTGrabber抓取器的源代码并向下滚动到底部,它会告诉你作者如何访问该文件(它看起来很准确 - 读取扇区而不是试图直接访问$ MFT,它看起来很漂亮评论也很好)。如果您阅读了项目的详细信息,则表示它是一个“从实时系统中检索NTFS文件系统的主文件表(MFT)记录的脚本”。
与此同时,还出现了其他选项:有一个库可以从名为analyzeMFT的NTFS文件系统中分析主文件表($ MFT)。
analyzeMFT.py旨在从NTFS文件系统中完全解析MFT文件,并以多种格式尽可能准确地呈现结果。
要使用pip (当前版本2.0.19)或从GitHub上找到的源代码安装它
pip install analyzeMFT