파티션 내 다른 lv의 데이터를 잃지 않고 lv를 확장하는 방법

파티션 내 다른 lv의 데이터를 잃지 않고 lv를 확장하는 방법

논리 볼륨을 /home으로 확장하고 싶습니다.

lsblk
NAME                     MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sr0                       11:0    1 1024M  0 rom
xvda                     202:0    0  125G  0 disk
├─xvda1                  202:1    0  500M  0 part /boot
└─xvda2                  202:2    0 74.5G  0 part
  ├─centos_jenslv05-root 253:0    0   48G  0 lvm  /
  ├─centos_jenslv05-swap 253:1    0    3G  0 lvm  [SWAP]
  └─centos_jenslv05-home 253:2    0 23.5G  0 lvm  /home

보시다시피 xvda의 용량은 125GB인 반면, xvda1 + xvda2의 용량은 총 75GB입니다. 추가 50GB는 centos_jenslv05-home 논리 볼륨에 추가하고 싶은 것입니다.

베트남 후 증후군

pvs
  PV         VG              Fmt  Attr PSize  PFree
  /dev/xvda2 centos_jenslv05 lvm2 a--  74.51g    0

VGS

vgs
  VG              #PV #LV #SN Attr   VSize  VFree
  centos_jenslv05   1   3   0 wz--n- 74.51g    0

LVS

lvs
  LV   VG              Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  home centos_jenslv05 -wi-ao---- 23.45g
  root centos_jenslv05 -wi-ao---- 48.04g
  swap centos_jenslv05 -wi-ao----  3.02g

따라서 기본적으로 dev/xvda2 파티션을 확장하고 이를 PV에 추가하고 VG에 추가한 다음 홈에 마운트된 LVM에 추가해야 합니다.

그러나 기본 lv(/home)와 동일한 파티션에 있는 루트 lv(/)의 데이터를 잃고 싶지 않습니다. 다른 논리 볼륨을 건드리지 않고 하나의 논리 볼륨만 확장할 수 있는 방법이 있습니까? 이것이 불가능하고 파티션을 삭제한 다음 추가된 공간으로 다시 만들어야 하는 경우 /root 및 /home의 모든 파일을 백업하는 것으로 충분합니까? 파티션을 다시 생성한 다음 lvs를 다시 생성하고 파일을 lvs에 다시 복사할 수 있습니까? 서버를 그대로 시작합니까? 안전 해요?

다른 볼륨을 건드리지 않고 Windows에서 논리 볼륨을 확장하는 것이 가능하다는 것을 알고 있지만 Linux에서 편리한지는 잘 모르겠습니다. 시스템은 Centos 7입니다.

답변1

가이드가 있습니다여기두 가지 옵션을 설명하십시오.

누구나

  1. 기존 pvwith 을 확장 gparted하고 vgwith 크기를 조정 vgextend /dev/xda2한 다음 lv.

또는

  1. pvxda의 사용되지 않는 공간에 새 볼륨(xda3)을 생성하여 새 파티션을 추가하고 vg, 여기에 새 파티션을 추가한 후 lv새 공간으로 확장합니다.

두 경우 모두 용량을 사용할 수 있도록 파일 시스템의 크기를 조정해야 하지만 lvextend -r크기를 조정하면서 이를 사용할 수 있습니다.

파티션 스키마를 보면 여유 공간은 xda2에 인접하고 두 옵션 중 하나가 가능하지만 옵션 1이 미적으로 더 좋습니다(위 링크의 @Patrick 게시물 참조).

실제로 (논리적) 파티션을 건드리지 않기 때문에 root라이브 시스템에서 이 작업을 수행할 수 있어야 합니다. 그렇지 않은 경우 라이브 USB가 필요합니다.

관련 정보