가상 머신은 /dev/mapper/vg0-rootvol을 확장할 수 없습니다.

가상 머신은 /dev/mapper/vg0-rootvol을 확장할 수 없습니다.

150GB에서 500GB로 확장하려는 가상 머신이 있습니다.

$ sudo cfdisk /dev/sda
                         cfdisk (util-linux 2.23.2)

                            Disk Drive: /dev/sda
                     Size: 536870912000 bytes, 536.8 GB
           Heads: 255   Sectors per Track: 63   Cylinders: 65270

   Name        Flags     Part Type  FS Type         [Label]       Size (MB)
 --------------------------------------------------------------------------
                          Pri/Log   Free Space                         1.05*
   sda1        Boot       Primary   xfs                              536.88*
   sda2                   Primary   LVM2_member                   536333.00*

나는 이미 달렸습니다 fdisk(https://unix.stackexchange.com/a/134813/173008) 새 sda2 파티션을 삭제하고 생성합니다.

나는 이 가이드를 따르고 있습니다 (https://unix.stackexchange.com/a/108229/173008), 하지만 이 추가 공간을 사용하기 위해 확장할 수 없기 때문에 막혔습니다 vg0.

$ df -h
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/vg0-rootvol  146G  123G   16G  90% /
/dev/sda1                509M  268M  242M  53% /boot

$ sudo pvs
  PV         VG  Fmt  Attr PSize    PFree
  /dev/sda2  vg0 lvm2 a--  <149.50g    0

$ sudo vgs
  VG  #PV #LV #SN Attr   VSize    VFree
  vg0   1   2   0 wz--n- <149.50g    0

$ sudo lvs
  LV      VG  Attr       LSize    Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  rootvol vg0 -wi-ao---- <147.50g
  swap1   vg0 -wi-ao----    2.00g

문제는 "추가 공간"이 없는데도 /dev/sda2여전히 표시되므로 <149.5g다음 명령을 실행해도 작동하지 않는다는 것입니다.

$ sudo pvresize /dev/sda2
  Physical volume "/dev/sda2" changed
  1 physical volume(s) resized or updated / 0 physical volume(s) not resized

$ sudo lvextend --size +350G /dev/mapper/vg0-rootvol
  Insufficient free space: 89600 extents needed, but only 0 available

막혔는데 이 문제를 해결하는 방법을 모르겠습니다. 어떤 도움이라도 대단히 감사하겠습니다.

답변1

논리 볼륨은 볼륨 그룹에 포함되어 있으므로 논리 볼륨을 확장하기 전에 볼륨 그룹을 확장해야 합니다.

이러한 작업을 수행하려면 파일 시스템을 마운트 해제해야 합니다. 이를 제거하고 시스템에서 계속 작업할 수 있는 가장 쉬운 방법은 라이브 Linux 운영 체제를 실행하는 것입니다.

일반적으로 이 라이브 시스템은 썸 드라이브에 있지만 가상 머신을 사용하고 있으므로 가상 머신 설정에서 라이브 Linux 시스템의 ISO 파일을 가상 머신에 마운트한 다음 부팅 우선 순위를 설정하여 ISO 시작부터 시작됩니다.

다른 많은 배포판과 마찬가지로 Ubuntu와 Fedora 모두 설치 이미지를 라이브 운영 체제로 제공한다는 것을 알고 있습니다. lvm2필요한 도구를 갖추려면 (apt 패키지)를 설치해야 할 수도 있습니다 .

볼륨 그룹을 확장하려면 볼륨 그룹을 확장할 수 있는 사용 가능한 공간을 사용하여 새 물리 분할을 생성해야 합니다.

fdisk /dev/sda/

대화형 메뉴에서 다음을 수행합니다.

n to create a new partition
3 for the third partition
Enter for default first sector
Enter again for default last sector
w to write changes and exit

팁은 시스템마다 다를 수 있지만 기본적으로는 원하는 크기의 새 파티션만 있으면 됩니다. 내가 보여준 것은 디스크의 사용 가능한 공간을 모두 사용하는 것입니다. 이제 파티션을 LVM 파티션이나 물리 볼륨으로 만들어야 합니다.

pvcreate /dev/sda3

그런 다음 볼륨 그룹이 포함된 물리 볼륨을 새 물리 볼륨으로 확장하여 두 개를 결합할 수 있습니다.

pvextend /dev/vg0 /dev/sda3

이제 이렇게 하면 vgs볼륨 그룹이 더 커져서 논리 볼륨을 확장할 공간이 생기는 것을 볼 수 있습니다.

lvextend --size +350G /dev/mapper/vg0-rootvol

이제 논리 볼륨이 더 커졌습니다.

lvs

답변2

/dev/sda2를 확장하지 않았거나 새 공간으로 또 다른 새 파티션을 만들지 않았기 때문에 /dev/sda2에서 더 많은 공간을 찾을 수 없습니다.

다음 명령을 사용하여 새로운 350GB /dev/sda3을 생성해야 합니다:

fdisk /dev/sda 
n create new  
p primary  partition
[enter]
                 //then change the partition type to lvm using this :
t to change type 
8e is for lvm 

완료되면 w를 입력하여 머신을 쓰고 다시 시작하세요.

이제 /dev/sda3을 생성한 후 다음을 사용하여 필요한 vg를 확장할 수 있습니다.

pvcreate /dev/sda3

vgextend vg_xxx /dev/sda3

pvscan

vgdisplay

lvextend -l +350GB /dev/vg_xxx-lv_xxyy

xfs_growfs  /dev/vg_xxx-lv_xxyy

lvdisplay

vgdisplay

관련 정보