2013-12-21 13 views
1

파이썬에서 로컬 디스크의 MFT 테이블을 읽으려고합니다. 나는 이런 식으로 뭔가를 작성하는 경우 물론 :파이썬 3에서 MFT 테이블을 가져 오려고 시도했습니다.

input_file = open('C:\$MFT', "rb") 

나는

[errno를 13] 권한이 거부 얻을 것이다 : 'C : \ $ MFT'내가 사용하려고

pyMFTGrabber,하지만 작동하지 않습니다; 나는 "socket.errors"를 많이 가지고있다.

파이썬을 사용하여이 파일을 읽는 가장 쉽고 쉬운 방법은 무엇입니까?
아마 일부 WinAPI입니까? 읽고 난 후 "analyzeMFT"으로 분석하고 싶습니다.

+1

이 프로그램을 관리자 권한으로 실행 해보십시오. – thefourtheye

+0

예, Admin으로 실행합니다.) – user2319786

답변

1

정확히 저수준이 아니기 때문에 파이썬에는 다소 고통 스럽습니다.

난 당신이 생각으로 시작해야한다고 생각 :

L "\\ \ C : \ $ MFT" 당신이 MFT에 대한 핸들을 생성하기 위해 MS의 VC++ API에 사용해야하는 네임 스페이스입니다 .

pyMFTGrabber을 언급 한 그래버의 소스 코드를 살펴보고 아래로 스크롤하면 저자가 파일에 액세스 한 방법을 알 수 있습니다 (정확 해 보입니다. $ MFT에 직접 액세스하지 않고 섹터를 읽습니다. 그리고 그것은 꽤 잘 주석으로 보입니다). 프로젝트의 세부 정보를 읽으면 '라이브 시스템에서 NTFS 파일 시스템에 대한 마스터 파일 테이블 (MFT) 레코드를 검색하는 스크립트'라고 나와 있습니다.