손상된 ext4 파티션에서 메타데이터 복구

손상된 ext4 파티션에서 메타데이터 복구

다소 복잡한 데이터 복구 작업이 있습니다. 손상된 ext4 파일 시스템에서 일부 메타데이터(파일 이름, 디렉터리 구조 등)를 가져오고 싶습니다. 나는 여러 가지 도구( Testdisk, fsck, foremost)를 사용해 보았지만 아무 소용이 없었습니다. 나는 파일 시스템에 대해 기초적인 이해만 가지고 있기 때문에 아마도 대부분을 효과적으로 사용하지 않았을 것입니다. 아니면 이러한 도구가 내 상황에 적합하지 않았을 수도 있습니다. 이것이 내가 모든 것을 엉망으로 만든 방법입니다.

실수로 덮어쓰기 프로세스를 시작한 하드 디스크 드라이브가 있습니다. 나는 사용했다이 SATA USB 도킹 스테이션 중 하나, 그리고 그것을 처리하는 동안 실수로 복제 버튼을 눌렀습니다. 이로 인해 한 드라이브에서 다른 드라이브로 복제가 시작되었습니다. 내 HDD에 새 파티션을 만들고 거기에 데이터를 쓰기 시작했습니다. 나는 이것을 약 1분 후에 깨달았고 프로세스를 중단하고 드라이브 연결을 끊었습니다.

두 디스크 모두 각각 하나의 ext4 파티션으로 포맷되었습니다. 따라서 내 디스크 중 하나의 파티션이 손상되어 이제 그 파티션의 데이터에 액세스할 수 없습니다. 덮어쓴 데이터는 복구가 불가능할 수도 있지만 대부분의 데이터는 그 짧은 시간 내에 손상되지 않을 것입니다.

다행스럽게도 내가 가지고 있는 대부분의 파일은 인터넷의 다른 곳에서 찾을 수 있으므로 다시 다운로드할 수 있습니다. 하지만 그렇게 하려면 파일 및 디렉터리 이름 목록을 가져와야 합니다. 이를 성공적으로 수행하는 도구를 찾을 수 없습니다. Testdisk유망해 보였지만 이를 사용하면 복제 프로세스에서 생성된 데이터에만 액세스할 수 있었습니다. 내가 어떻게 이 일을 할 수 있는지 말해 줄 수 있는 사람이 있나요? 도움을 주시면 감사하겠습니다. 감사합니다.

답변1

e2fsprogs 소스를 다운로드하면 findsuper디스크를 스캔하여 디스크에서 슈퍼블록을 찾는 도구를 구축할 수 있습니다. 두 개의 서로 다른 슈퍼블록 UUID를 찾을 수 있어야 합니다. 하나는 디스크 시작 부분의 복제 복사본에서 가져온 것이고, 다른 하나는 디스크 끝 부분에 있는 이전 파일 시스템의 것입니다.

이전 파일 시스템의 슈퍼 블록으로 e2fsck를 실행하면 더 많은 파일 시스템을 복구할 수 있습니다. 예를 들어 이전 저널 블록을 파일 시스템으로 다시 복구할 수 있는 경우입니다.

어떤 경우든 e2fsck(디스크의 백업 이미지에서 실행하는 것이 좋음)는 lost+found디스크 시작 부분의 루트 디렉터리를 확실히 덮어쓰므로 찾을 수 있는 모든 파일을 연결합니다.

관련 정보