해제된 블록이 ext4 로그에 기록됩니까?

해제된 블록이 ext4 로그에 기록됩니까?

간단한 상황이 있다고 가정해 보겠습니다.

  • ext4저널 기능을 갖춘 파일 시스템
  • file다른 하드 링크가 없는 이름의 단일 파일
  • 직원 inode전용 file1 데이터block

이 특정 사례의 삭제 프로세스에 대해 제가 이해한 바는 다음과 같습니다.

  1. 삭제할 로그file
    1. 기록을 1 inode로 줄이겠습니다 .ref_cnt
    2. 범죄
    3. 레코드가 0이므로 풀로 다시 ref_cnt릴리스됩니다 .inode
    4. 범죄
    5. 레코드 inode가 해제되었으므로 연결이 block다시 풀로 해제됩니다.
  2. 삭제를 위해 제출file

그 중 1.5단계에서 공개된 블록번호는 어떻게 획득하나요? 로그에 저장되나요? 그렇다면 어떻게 액세스할 수 있나요?

나는 이 정보를 제공하는 파일 시스템 인터페이스를 찾고 있었습니다. 나는 내가 할 수 있는 최고의 수준에 도달했지만 debugfs -R "logdump -a"거기에서 어떻게 나아가야 할지 모르겠습니다.

ext3grep참고: 복구에 도움이 되는 유사한 도구가 있다는 것을 알고 있습니다 file. 내 목표는 로그에서 블록 번호를 가져와 교육 목적으로 수동으로 시도하는 것입니다. 또한 본인은 이 정보를 얻기 전에 inode재사용될 수 있음을 이해합니다. block이 질문의 목적을 위해 삭제가 완료된 후 파일 시스템이 읽기 전용이라고 가정합니다.

관련 정보