시스템이 Centos 7로 구성된 친구가 있습니다. 그는 자신이 무엇을 했는지 정확히 말할 수는 없지만 소프트웨어를 설치할 공간이 충분하지 않았고 파티션 크기를 보고 있었음에도 불구하고 LVM 볼륨의 이름을 바꿨을 수도 있다고 생각했습니다. LVM 볼륨이 무엇인지조차 몰랐습니다.
머신이 더 이상 부팅되지 않고 정지되며 종료하고 다시 시작해야 합니다. 또 다른 큰 문제는 LVM 볼륨의 /boot 파티션으로 설정된 것으로 보이며 LVM 볼륨을 마운트할 수 없다는 것입니다.
문제 해결 옵션을 사용하여 설치 미디어에서 부팅하면 기존 Linux 설치를 찾지 못하고 충돌이 발생합니다. 부팅할 수 있는 유일한 방법은 기존 설치 확인을 건너뛰고 명령 프롬프트를 표시하는 것입니다. 이 작업을 수행한 후 pvscan 또는 lvscan을 실행하면 LVM 볼륨을 찾을 수 없다는 메시지가 나타납니다. sfdisk를 실행하고 Linux 드라이브를 보면 세 개의 파티션, 하나의 EFI, Windows 형식으로 포맷된 것으로 보이는 데이터 파티션, LVM 볼륨이 표시됩니다. 파티션 테이블에는 아무런 문제가 없습니다.
다시 시작하고 실행할 수 있으면 /boot 파티션을 전용 파티션(LVM이 아닌)으로 이동하겠습니다. 그런데 이제 LVM 볼륨을 어떻게 마운트합니까?
답변1
첫째, 파티션 유형이 "Linux LVM"이라고 되어 있다고 해서 파티션의 실제 내용이 일치한다는 보장은 없습니다. file -s <PV device>
실제 내용이 무엇인지 확인 하는 데 사용됩니다 . 전체 LVM PV의 예시(익명) 출력:
# file -s /dev/sda3
/dev/sda3: LVM2 PV (Linux Logical Volume Manager), UUID: xxxxxx-xxxx-xxxx-xxxx-xxxx-xxxx-xxxxxx, size: nnnnnnnnnnnn
마찬가지로, 파티션 유형이 로 보고되는 경우 반드시 CentOS가 파티션 유형을 그런 식으로 설정한다는 Microsoft basic data
의미는 아닙니다 . /boot
CentOS를 기반으로 하는 RHEL 7이 처음 출시되었을 때 자동으로 수정될 만큼 중요하다고 간주되었던 일부 초기 UEFI 펌웨어 버전의 일부 버그를 해결하기 위한 것일 수도 있습니다.
vgscan -vv
LVM이 디스크에서 PV를 식별하도록 하려면 이를 명시적으로 실행해 보십시오 . 실행을 사용하면 -vv
실제로 올바른 디스크를 보고 있는지, LVM과 같은 것을 보고 있는지 확인하는 데 사용할 수 있는 많은 디버그 출력이 생성되어야 합니다.
vgchange -ay
LVM 논리 볼륨에 액세스하려면 먼저 를 사용하여 활성화 하거나 를 사용하여 하나씩 활성화해야 합니다 lvchange -ay <name of LV>
.
일반적으로 이렇게 하면 LVM 볼륨의 장치 노드를 사용할 수 있게 되지만 복구 환경에서는 vgscan --mknodes
이를 명시적으로 생성하기 위해 실행해야 할 수도 있습니다.
LV 또는 VG의 이름이 변경된 경우 두 가지 옵션이 있습니다. 원래 상태로 다시 변경하거나 이를 참조하는 구성을 수정하는 것입니다. root=
커널 부팅 옵션을 정의하는 줄에 있는 GRUB 구성 파일의 옵션 /boot/grub/grub.cfg
(또는 <mountpoint>/grub/grub.cfg
별도의 /boot
파티션이 존재하고 이를 수정하기 위해 임시 위치에 마운트하는 경우) 과 /etc/fstab
.