LUKS 파티션 복원

LUKS 파티션 복원

파티션이 2개 있는 드라이브가 있습니다.

  • 첫 번째는 순수 ext4입니다.
  • 두 번째는 암호화된 LUKS입니다.

파티션 테이블을 덮어썼습니다. 두 번째 파티션의 시작 부분을 찾았으며 이를 복원해야 합니다. 따라서:

# hexdump -s 400000m -C /dev/sdc | grep LUKS
61d3dec850 79 c8 81 6d e5 4c 55 4b 53 40 49 aa 29 df de d7 |y..m.LUKS@I.)...|

반품:

# losetup -o 0x61d3dec850 -r -f /dev/sdc
# losetup -a
/dev/loop0: [0005]:477209 (/dev/sdc), offset 420166420560

이때 다음과 같은 문제가 발생합니다.

# cryptsetup luksOpen /dev/loop0 luksrecover
Device /dev/loop0 is not a valid LUKS device.

오프셋이 잘못된 걸까요? 0xEF53ext4의 매직 넘버를 찾아야 합니까?여기에 제안된 대로?

이것은 1TB 드라이브이므로 전체 드라이브를 강제로 다시 스캔하지 않도록 제안이 필요합니다(예: testdisk스캔 시간을 절약하기 위해 지정된 오프셋에서 시작하는 옵션이 없는 것 같습니다).

폴리스티렌이 질문은 밀접하게 관련되어 있는 것 같지만 일치하지 않습니다..

답변1

dd if=/dev/mapper/storage2-crypto bs=16 count=1 2>/dev/null | 
  od -t c -t x1
0000000   L   U   K   S 272 276  \0 001   a   e   s  \0  \0  \0  \0  \0
         4c  55  4b  53  ba  be  00  01  61  65  73  00  00  00  00  00

이것이 내 시스템에서 보이는 모습입니다. 바라보다https://gitlab.com/cryptsetup/cryptsetup/wikis/LUKS-standard/on-disk-format.pdf(6페이지)

처음 6바이트는 동일해야 하며 처음 8바이트일 수도 있고 처음 16바이트보다 클 수도 있습니다. 문자열을 찾았 지만 매직 바이트가 아니기 LUKS때문에 분명히 잘못된 것입니다 .LUKS@I

올바른 데이터를 찾으면 올바른 위치가 제공됩니다.

관련 정보