ext4 LVM 파티션을 복구하는 데 도움이 필요합니다

ext4 LVM 파티션을 복구하는 데 도움이 필요합니다

LVM 구성 파티션으로 Ubuntu 18.04를 실행하는 VMware ESXi 가상 머신이 있습니다. /로 마운트된 논리 볼륨 중 하나를 확장하려고 시도했지만 실수로 어리석게도 cfdisk를 사용하여 LVM 파티션을 삭제했습니다(파티션은 ext4로 포맷되었습니다). 문제가 발생한 원인은 다음과 같습니다.

  1. vSphere ESXi에서 VM 디스크 크기 증가
  2. 재부팅 없이 디스크 크기 조정을 인식하도록 SCSI 장치에서 재검색을 수행했습니다.
  3. fdisk -l을 사용하여 새 디스크 디스크를 확인했습니다.
  4. 어리석게도 cfdisk를 사용하여 LVM 파티션(sda2)을 삭제하고 새 크기로 다시 생성(실제로 새 파티션 유형을 LVM으로 변경했는지 여부가 기억나지 않음)
  5. pvresize /dev/sda2를 사용하여 PV 크기를 늘리려고 시도했습니다. partprobe를 실행하여 PV 크기가 조정되지 않은 이유를 확인했는데 시스템에서 해당 파티션을 사용 중임을 나타내는 메시지가 표시되었습니다.
  6. 재부팅을 수행했지만 파티션을 마운트할 수 없어 OS가 부팅되지 않았습니다. 여기서 문제가 시작되었습니다. 내가 시도한 것:
  7. GParted 부팅 가능 디스크를 사용하여 시스템을 부팅하고 동일한 UUID 및 vgcfgrestore로 pvcreate를 사용하여 LVM 파티션을 복원했지만(testdisk 도구를 사용하여 이전 lvm 백업을 복구했습니다) 루트 파티션이 포함된 볼륨을 마운트할 수 없었기 때문에 성공하지 못했습니다(알 수 없는 파일 시스템).
  8. 중요한 디렉터리와 파일을 복구하기 위해 testdisk를 실행해 보았지만 일부 복원된 파일(예: config 및 php 파일과 같은 일부 텍스트 파일을 확인했습니다)의 내용이 뒤섞였습니다.

답변1

해결 방법은 쉬웠지만 알아내는 데 시간이 걸렸습니다.

  1. testdisk /dev/sda 실행(전체 디스크)
  2. 빠른 검색을 수행하여 두 개의 파티션을 찾았습니다(500MB ext2 /boot 파티션 하나와 60GB LVM2 파티션 하나).
  3. 발견된 파티션 테이블을 디스크에 기록했습니다.
  4. pvscan, vgscan 및 vgchange -ay를 수행했습니다(VG 크기가 PV보다 크다는 오류가 발생하여 lvs는 일시 중단된 플래그와 함께 루트 lv를 표시합니다).
  5. cfdisk를 사용하여 디스크에 남은 여유 공간을 사용하도록 /dev/sda2(LVM 파티션) 확장
  6. vgchange -ay one을 다시 수행하면 시스템이 정상적으로 재부팅될 수 있습니다.

관련 정보