パーティション内の他の 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 には 125 GB あり、xvda1 + xvda2 を合わせると 75 GB しかありません。追加の 50 GB を centos_jenslv05-home 論理ボリュームに追加します。

PVS

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

VG-S

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 (/) 上のデータを失いたくはありません。他の LV に影響を与えずに、1 つの論理ボリュームだけを拡張する方法はありますか? それが不可能で、パーティションを削除してから追加領域で再作成する必要がある場合、/root と /home のすべてのファイルをバックアップするだけで十分でしょうか? パーティションを再作成してから LV を再作成し、ファイルを LV にコピーすれば、サーバーは元どおりに起動しますか? 安全ですか?

Windows では他のボリュームに影響を与えずに論理ボリュームを拡張できることは知っていますが、Linux でも同様に便利かどうかはわかりません。システムは Centos 7 です。

答え1

ガイドがありますここ2つの選択肢を説明します。

どちらか

  1. 既存pvの を で拡張しgpartedvgのサイズを変更してvgextend /dev/xda2を拡張しますlv

または

  1. pvxda の未使用領域に新しいボリューム (xda3) を作成して新しい を追加し、新しいパーティションを に追加しvgてから、 をlv新しい領域に拡張します。

どちらの場合でも、容量を確保するためにファイルシステムのサイズを変更する必要がありますが、lvextend -rサイズを変更するときに を使用してこれを実行できます。

パーティション スキーマを見ると、空き領域は xda2 と連続しており、どちらのオプションも実行可能ですが、オプション 1 の方が見た目が美しいです (上記リンクの @Patrick の投稿を参照)。

実際には (論理) パーティションに触れていないのでroot、ライブ システムからこれを実行できるはずです。そうでない場合は、ライブ USB が必要になります。

関連情報