간단한 상황이 있다고 가정해 보겠습니다.
ext4
저널 기능을 갖춘 파일 시스템file
다른 하드 링크가 없는 이름의 단일 파일- 직원
inode
전용file
1 데이터block
이 특정 사례의 삭제 프로세스에 대해 제가 이해한 바는 다음과 같습니다.
- 삭제할 로그
file
- 기록을 1
inode
로 줄이겠습니다 .ref_cnt
- 범죄
- 레코드가 0이므로 풀로 다시
ref_cnt
릴리스됩니다 .inode
- 범죄
- 레코드
inode
가 해제되었으므로 연결이block
다시 풀로 해제됩니다.
- 기록을 1
- 삭제를 위해 제출
file
그 중 1.5단계에서 공개된 블록번호는 어떻게 획득하나요? 로그에 저장되나요? 그렇다면 어떻게 액세스할 수 있나요?
나는 이 정보를 제공하는 파일 시스템 인터페이스를 찾고 있었습니다. 나는 내가 할 수 있는 최고의 수준에 도달했지만 debugfs -R "logdump -a"
거기에서 어떻게 나아가야 할지 모르겠습니다.
ext3grep
참고: 복구에 도움이 되는 유사한 도구가 있다는 것을 알고 있습니다 file
. 내 목표는 로그에서 블록 번호를 가져와 교육 목적으로 수동으로 시도하는 것입니다. 또한 본인은 이 정보를 얻기 전에 inode
재사용될 수 있음을 이해합니다. block
이 질문의 목적을 위해 삭제가 완료된 후 파일 시스템이 읽기 전용이라고 가정합니다.