내부 LVM2가 손상된 암호화된 파티션을 읽으시나요?

내부 LVM2가 손상된 암호화된 파티션을 읽으시나요?

나는 다음과 거의 같은 방식으로 일부 LVM2 메타데이터를 재정의했습니다.덮어쓴 LVM 메타데이터 복원. 즉, 기존 암호화 볼륨과 LVM2 볼륨이 있는 시스템에 Debian 6.0.7을 설치하려고 했습니다.

디스크의 구조는 LUKS 볼륨이 디스크 파티션(sdc1)의 90%를 차지한다는 것입니다. LVM2 물리 볼륨은 LUKS 볼륨을 모두 사용합니다. 이 물리 볼륨에는 자체 볼륨 그룹과 두 개의 논리 볼륨이 있습니다.

다음 명령을 사용하여 16진수 덤프를 생성합니다.

cryptsetup luksOpen /dev/sdc1 sdc1_crypt
dd if=/dev/mapper/sdc1_crypt of=텍스트 개수=100000
hexdump -C 텍스트|덜

16진수 덤프의 일부:

00000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |.............|
*
00000200 4c 41 42 45 4c 4f 4e 45 01 00 00 00 00 00 00 00 |태그.....|
00000210 1a d0 74 52 20 00 00 00 4c 56 4d 32 20 30 30 31 |..tR ...LVM2 001|
00000220 39 4b 4d 34 48 30 37 43 6c 5a 6d 62 5a 46 32 43 |9KM4H07ClZmbZF2C|
00000230 78 6b 69 72 72 58 61 62 52 64 35 48 38 66 62 79 |xkirrXabRd5H8fby|
00000240 00 10 0e 8c d1 00 00 00 00 00 03 00 00 00 00 00 |.............|
00000250 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |....|
00000260 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 |.............|
00000270 00 f0 02 00 00 00 00 00 00 00 00 00 00 00 00 00 |.............|
00000280 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |....|
*
00000800 d2 6d b3 03 e3 88 08 0f 0f 60 17 31 60 2a a5 86 |.m.......`.1`*..|
00000810 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00000a00 f4 6c 87 31 71 aa 28 b8 44 9e 03 75 fc 58 9b b4 |.l.1q.(.D..uX.|
00000a10 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00000c00 13 30 81 66 9a 7a 33 eb dd e7 b6 93 c5 e6 42 f0 |.0.f.z3....B.|
00000c10 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00000e00 c2 71 8f 11 f4 70 b4 e3 af e0 a0 d7 86 bd ad 5b |.q...p......[|
00000e10 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00001000 1b c7 35 60 20 4c 56 4d 32 20 78 5b 35 41 25 72 |..5` LVM2 x[5A%r|
00001010 30 4e 2a 3e 01 00 00 00 00 10 00 00 00 00 00 00 |0N*>..............|
00001020 00 f0 02 00 00 00 00 00 00 00 00 00 00 00 00 00 |.............|
00001030 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |....|
***
00004c00 82 12 42 63 c4 c1 b3 2b f5 f9 d1 17 06 60 64 c3 |..Bc...+.....`d.|
00004c10 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00004e00 4a eb 67 e4 80 7d e7 72 d3 b4 52 36 31 3d 36 01 |Jg.}.r..R61=6.|
00004e10 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00005000 dc da e7 8d 9b f1 37 8f 97 92 ee a4 8d 9a 42 1e |......7....B.|
00005010 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00005200 d2 2d 71 cb d1 31 27 c8 aa aa 03 60 a2 5f 8e 14 |.-q..1'....`._..|
00005210 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00005400 fe 7b fd cd 20 5b cd 99 9a bf 23 92 10 b5 f9 c2 |.{.. [....#....|
00005410 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00005600 86 a2 ce 88 2f ba 9b 3b ba 55 f4 d2 a5 a1 3e b7 |..../..;.U....>.|
00005610 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00005800 33 37 62 46 24 43 3b a1 6b 4d 65 8f 5a ca 1b 46 |37bF$C;.kMe.Z..F|
00005810 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00005a00 bd d5 b4 41 46 08 b9 b9 87 a2 53 ab ff 01 2a 1b |...AF....S...*.|
00005a10 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00005c00 2f a8 ae 97 6d 56 8a 71 9e 16 60 2c f3 68 c2 f4 |/...mV..`,.h..|
00005c10 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00005e00 d3 44 a7 ca bc 21 61 f4 58 c4 f2 78 9c 34 95 18 |.D...!aX.x.4..|
00005e10 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00006000 5d df c9 11 56 ec 92 03 ac 02 4e 91 40 76 a6 b3 |]...V.....N.@v..|
00006010 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00006200 e2 19 26 d8 4e bc ae 44 a1 47 f9 bd 6d 0f 86 57 |..&.N..DG.m..W|
00006210 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00006400 82 52 57 e2 35 e7 82 af 53 fb d4 04 93 89 48 aa |.RW.5...S.....H.|
00006410 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00006600 49 86 60 90 1e a5 da d3 55 4c 26 31 80 fb a5 2d |I.`.....UL&1...-|
00006610 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00006800 cf 2a ae 71 e8 5b ac 8e dd 70 9e 05 2b bb c5 9c |.*.q.[...p..+...|
00006810 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00006a00 43 e2 38 92 9a 1d c7 c4 fe bf df 13 7f bf 5b f9 |C.8........[.|
00006a10 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00006c00 38 40 94 3c 21 3e ce 63 e8 c3 5d 1d 35 08 3e 7c |[이메일 보호됨]..].5.>||
00006c10 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00006e00 71 52 d0 15 44 78 ad 13 fa c5 a0 ec 74 4c a7 5b |qR..Dx......tL.[|
00006e10 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00007000 4f 2d b5 50 57 6b ac 02 23 82 28 05 f5 5e d1 f1 |O-.PWk..#.(..^..|
00007010 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|
*
00007200 37 43 9a f7 68 e7 94 59 13 10 66 e8 56 53 e3 cb |7C..h..Y..f.VS..|
00007210 a8 2b 87 77 cb 73 bf 52 c6 36 92 ec ee 9f b7 e0 |.+.wsR6......|

설치 과정에서 동일한 암호를 사용하는 새 블록으로 LUKS 블록을 덮어쓰면 "+.wsR6"이 계속해서 표시됩니까, 아니면 불가능합니까? 만약 그런 일이 일어나지 않았다면 무슨 일이 일어났나요?

설치 시 0x1000에서 읽을 수 있는 LVM2 라인을 설명하는 PV 메타데이터를 덮어쓴 것 같습니다. 그러나 설치 전에 디스크에 있었던 키워드를 디스크에서 검색하면 결과가 반환되지 않았습니다.

답변1

gpart를 사용하여 파일 시스템을 검색 할 수 있습니다 /dev/dm-2. 나중에 또는 대안으로 dmsetup을 직접 사용하여 LVM 없이 dm 볼륨을 생성할 수 있습니다. 내 시스템에서 첫 번째 LV는 항상 오프셋 384에서 시작됩니다.

dmsetup create restore-lv --table "0 25165824 linear /dev/dm-2 384"

테스트의 경우 크기는 중요하지 않습니다(그리고 종종 잘못된 경우도 있음). 그런 다음 파일 시스템이 있는지 확인합니다. 연장을 위해? 그리고

dumpe2fs -h /dev/mapper/restore-lv

이것이 실제로 LV의 위치라면 dumpe2fs(또는 파일 시스템 유형에 적합한 프로그램)이 파일 시스템의 크기(보통 LV의 크기와 동일)를 알려주어야 합니다.

Block count:              53248
Block size:               1024

이 경우 FS/LV 크기는 53248*1024=54525952바이트(106496섹터)입니다. 따라서 올바른 dmsetup 명령은 다음과 같습니다.

dmsetup create restore-lv1 --table "0 106880 linear /dev/dm-2 384"

다음은 106496+384=106880입니다:

dmsetup create restore-lv --table "0 106880 linear /dev/dm-2 106880"

물론 LV가 조각화되어 있으면 작동하지 않습니다. 그러나 작동한다면 lvcreate가 LV를 올바르게 다시 생성했는지 나중에 확인할 수 있습니다.

관련 정보