Gerade waren wir am Umstellen der großen Xen-Kiste von Gentoo auf Debian.
Das Ganze verlief gut bis wir bemerkten, dass uns einige LVM-Partitionen fehlten.
Schnell stellte sich heraus, dass kein /dev/sdb1 existierte. Das ist gerade schlimm, weil es sich hierbei um die große 2,2 TB Partition handelte - auf der sind alle Daten der Fachschaft, Mails der Studierenden, alle studentischen SVN-Repos.
Der Blick mit parted zeigte schnell den Fehler:
Error: /dev/sdb: unrecognised disk label
Da war dann erstmal ein wenig Panik - aber schnell stelle sich heraus, dass die eigentlichen Daten noch da sind:
00000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
000001c0 01 00 ee fe ff ff 01 00 00 00 ff ff ff ff 00 00 |................|
000001d0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
000001f0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 55 aa |..............U.|
00000200 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000400 4c 41 42 45 4c 4f 4e 45 01 00 00 00 00 00 00 00 |LABELONE........|
00000410 b5 48 47 99 20 00 00 00 4c 56 4d 32 20 30 30 31 |.HG. ...LVM2 001|
00000420 79 39 4a 56 38 51 36 66 31 66 49 73 6f 57 43 55 |y9JV8Q6f1fIsoWCU|
00000430 4f 59 66 47 74 6f 4f 5a 4e 69 42 54 56 69 53 6e |OYfGtoOZNiBTViSn|
00000440 00 fe fc ff ff 01 00 00 00 00 03 00 00 00 00 00 |................|
00000450 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000460 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 |................|
00000470 00 f0 02 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
00000480 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00001200 cc 10 b7 e2 20 4c 56 4d 32 20 78 5b 35 41 25 72 |.... LVM2 x[5A%r|
00001210 30 4e 2a 3e 01 00 00 00 00 10 00 00 00 00 00 00 |0N*>............|
00001220 00 f0 02 00 00 00 00 00 00 44 00 00 00 00 00 00 |.........D......|
00001230 d5 08 00 00 00 00 00 00 b3 a6 a9 50 00 00 00 00 |...........P....|
00001240 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00001400 76 67 44 61 74 61 20 7b 0a 69 64 20 3d 20 22 67 |vgData {.id = "g|
00001410 57 65 75 6d 76 2d 63 67 50 52 2d 43 55 75 33 2d |Weumv-cgPR-CUu3-|
00001420 6c 63 6b 30 2d 67 75 51 34 2d 77 57 47 6f 2d 5a |lck0-guQ4-wWGo-Z|
00001430 59 79 56 73 71 22 0a 73 65 71 6e 6f 20 3d 20 31 |YyVsq".seqno = 1|
00001440 0a 73 74 61 74 75 73 20 3d 20 5b 22 52 45 53 49 |.status = ["RESI|
00001450 5a 45 41 42 4c 45 22 2c 20 22 52 45 41 44 22 2c |ZEABLE", "READ",|
00001460 20 22 57 52 49 54 45 22 5d 0a 65 78 74 65 6e 74 | "WRITE"].extent|
00001470 5f 73 69 7a 65 20 3d 20 38 31 39 32 0a 6d 61 78 |_size = 8192.max|
00001480 5f 6c 76 20 3d 20 30 0a 6d 61 78 5f 70 76 20 3d |_lv = 0.max_pv =|
Nebem dem LVM2-Header sieht man auch direkt die Volume Group. Allerdings fehlt komplett die EFI-Tabelle (erkennbar am fehlenden "EFI PART". Dank Wikipedia zum
Thema GPT wussten wir aber:
GPT also provides redundancy. The GPT header and partition table are written at both the beginning and the end of the disk.
Schnell kam aber die Ernüchterung: da ist überhaupt nicht genug Platz für eine standardkonforme Partitionstabelle. Interessanterweise konnte der alte Kernel (2.6.20-xen-r6) diese Partition trotzdem erkennen und zur Verfügung stellen. Alle anderen weigerten sich die ungültige GPT-Partitionstabelle zu erkennen.
Ursache ist wohl der fehlende EFI-Support im Kernel:
Symbol: EFI_PARTITION [=n]
Prompt: EFI GUID Partition support
Defined at fs/partitions/Kconfig:232
Depends on: BLOCK && PARTITION_ADVANCED
Location:
-> File systems
-> Partition Types
-> Advanced partition selection (PARTITION_ADVANCED [=n])
Der ist natürlich bei allen anderen, modernen Kernel-Versionen mittlerweile drin...
Jetzt läuft erstmal ein bytegenaues Backup der einzelnen LVMs und dann wird die komplette HDD neu partitioniert