如何擴展lv而不丟失分區內其他lvs上的資料

如何擴展lv而不丟失分區內其他lvs上的資料

我想將我的邏輯磁碟區擴展到/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

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,然後添加到安裝到 home 的 LVM。

但是,我不想丟失根 lv (/) 上的數據,它與主 lv (/home) 位於同一分區。有沒有一種方法可以只擴展一個邏輯卷,而不觸及其他邏輯卷?如果不可能,而且我需要刪除分割區,然後使用新增的空間重新建立它,備份 /root 和 /home 上的所有檔案就足夠了嗎?我可以重新建立分割區,然後重新建立 lvs 並將檔案複製回 lv 嗎?安全嗎?

我知道在 Windows 上可以在不接觸其他卷的情況下擴展邏輯卷,但不確定在 Linux 上是否也同樣方便。系統是Centos 7。

答案1

有一個指南這裡解釋你的兩個選擇。

任何一個

  1. 擴充現有的pvwith gparted,調整vgwith 的大小vgextend /dev/xda2,然後擴充你的lv.

或者

  1. pv透過在 xda 上未使用的空間中建立新磁碟區 (xda3) 來新增分割區,將新分割區新增到其中vg,然後將其擴展lv到新空間。

無論哪種情況,您都需要調整檔案系統的大小以使容量可用,但您可以lvextend -r在調整大小時使用。

查看您的分區架構,可用空間將與 xda2 相鄰,並且任一選項都是可行的,儘管選項 1 更美觀(請參閱上面鏈接中的 @Patrick 帖子)。

由於您實際上並未接觸root(邏輯)分割區,因此您應該能夠從即時系統中執行此操作。如果沒有,那麼您將需要一個實時 USB。

相關內容