Pe gazda mea Proxmox 6.4, aveam un pool LVM Thin de 250 GB mare. Am creat o mașină virtuală Ubuntu (care a folosit LVM și pentru partiția rădăcină) pe el, dar l-am supraabonat accidental, astfel încât PV din interiorul mașinii virtuale a fost setat la 500 GB.
Totul a mers grozav o vreme până când am depășit limita ascunsă de 250 GB și VM-ul s-a prăbușit cu o eroare I/O și a refuzat să pornească. Deci acum încerc să recuperez discul. Tabelul de partiții al discului pare a fi intact:
$ fdisk -l /dev/vm-disks/vm-101-disk-0
Disc /dev/vm-disks/vm-101-disk-0: 500 GiB, 536870912000 octeți, 1048576000 sectoare
Unități: sectoare de 1 * 512 = 512 octeți
Dimensiunea sectorului (logic/fizic): 512 octeți / 512 octeți
Dimensiunea I/O (minimă/optimă): 65536 octeți / 65536 octeți
Tip etichetă de disc: gpt
Identificator disc: 30874BBC-0B29-4083-B5BF-E973C665D87F
Dispozitiv Start End Sectors Size Type
/dev/vm-disks/vm-101-disk-0p1 2048 4095 2048 Boot BIOS 1M
/dev/vm-disks/vm-101-disk-0p2 4096 2101247 2097152 Sistem de fișiere Linux 1G
/dev/vm-disks/vm-101-disk-0p3 2101248 1048573951 1046472704 499G Sistem de fișiere Linux
Am fugit
$ kpartx -a /dev/vm-disks/vm-101-disk-0
a crea /dev/mapper
intrări pentru cele 3 partiții din interior vm-101-disk-0
, și asta funcționează.
Daca alerg:
$ fișier -sL /dev/mapper/vm--disks-vm--101--disk--0p3
/dev/mapper/vm--disks-vm--101--disk--0p3: LVM2 PV (Linux Logical Volume Manager), UUID: fdOzWR-sPcy-hyYo-Lj2H-YEnZ-wK3c-J6biES, dimensiune: 535794024448
Apoi pot vedea acel PV în a treia partiție a discului. Dar cum pot monta asta undeva în gazdă pentru a începe recuperarea datelor? Evident pvscan
din sistemul gazdă nu îl vede deoarece este în interiorul altui LV. Am vreo opțiune aici pentru recuperare sau faptul că VM-ul a crezut că are 500 GB, când de fapt nu a însemnat că am deteriorat acest lucru fără a fi reparat?