GNU/Linux >> Linux の 問題 >  >> Linux

CentOS / RHEL :使用するディスク パーティションを拡張して LVM の物理ボリュームを拡張する方法

この投稿では、fdisk を使用して物理ディスク パーティションを拡張することにより、LVM ボリュームで使用可能なスペースを拡張する方法について説明します。この例は、物理ボリューム /dev/sdc1 のサイズを 200MB から 400MB に変更する方法を示しています。

データ損失の可能性に関する警告 :この手順では、既存のパーティション構造が削除され、その場所に新しいパーティションが作成されます。新しいパーティションは、削除されたパーティションとまったく同じオリジンに作成することが不可欠です。そうしないと、重大なデータの破損や損失が発生します。

現在の構成を確認

1. ディスク上の物理ボリュームの現在のサイズを確認します。

# pvdisplay /dev/sdc1
  "/dev/sdc1" is a new physical volume of "200.00 MiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdc1
  VG Name               
  PV Size               200.00 MiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               EkD95A-wb04-5GHn-OH7N-suVt-vak2-AKSsyv

2. 現在の LVM セットアップに関する情報を取得します。拡張したい論理ボリュームは「testlv」です。

# lvscan
  ACTIVE            '/dev/testvg/testlv' [100.00 MiB] inherit

既存の論理ボリュームを無効にする

1. 実際の PV と LV の拡張に進む前に、まず論理ボリュームを非アクティブ化する必要があります。以下のコマンドを使用して、LV を無効にします。

# lvchange -a n /dev/testvg/testlv 

2. ボリュームが非アクティブ化されているかどうかを確認します。

# lvscan
  inactive          '/dev/testvg/testlv' [100.00 MiB] inherit

LVM が使用されていないことがわかったので、LVM で拡張プロセスを開始できます。

fdisk ユーティリティでパーティション「/dev/sda1」を拡張します

1. 物理デバイスのパーティション情報を拡張するには、まず古いパーティションを削除してから、新しいパーティションを作成します。パーティションの開始位置が正確にわかるように、最初に現在のパーティション情報を出力することに注意してください。古いパーティションと同じブロックで始まる新しい大きなパーティションをオーバーレイする必要があります。

# fdisk /dev/sdc
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.


Command (m for help): p

Disk /dev/sdc: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x085579f4

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1            2048      411647      204800   83  Linux

Command (m for help): d
Selected partition 1
Partition 1 is deleted

Command (m for help): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-41943039, default 2048):          ### we will press ENTER here to select default first sector 2048
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039): +400M
Partition 1 of type Linux and of size 400 MiB is set

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

このステップは、変更されたパーティション テーブルを「w」で書き出す前であればいつでも中止できます。 " 指図。それまでは、パーティション テーブルのメモリ内コピーのみが変更されます。

パーティション テーブルの変更について :物理デバイス上のすべての LUN のパーティション情報は、パーティション テーブルに保持されます。 fdisk コマンドは、このパーティション テーブルのみを操作します。ディスクの残りの部分は常に変更されません。つまり、パーティション テーブル情報は変更できますが、パーティションの内容は変更されず、常にそのまま残ります。

新しいパーティション テーブルをカーネルにロード

fdisk はデバイスに直接書き込むことによってパーティション テーブルを変更するため、現在実行中のカーネルは新しいパーティション情報を認識しません。通常、カーネルは、システムの起動時またはホットプラグ イベント (USB デバイスの挿入など) が発生したときにのみ、パーティション情報を読み取ります。

ただし、カーネルにパーティション情報を再度読み取らせ、LVM 情報を更新させることで、不必要な再起動を回避できます。

# partprobe

カーネルが更新されたパーティション テーブルを認識したので、物理デバイスへのこの変更について LVM サブシステムに通知します。デフォルトでは、サイズ変更はパーティション テーブルから取得したパーティション サイズ全体を使用します:

# pvresize /dev/sdc1 
  Physical volume "/dev/sdc1" changed
  1 physical volume(s) resized / 0 physical volume(s) not resized
# pvdisplay /dev/sdc1
  --- Physical volume ---
  PV Name               /dev/sdc1
  VG Name               testvg
  PV Size               399.00 MiB / not usable 3.00 MiB
  Allocatable           yes 
  PE Size               4.00 MiB
  Total PE              99
  Free PE               74
  Allocated PE          25
  PV UUID               EkD95A-wb04-5GHn-OH7N-suVt-vak2-AKSsyv

既存の論理ボリュームをアクティブ化

最後のステップは、変更された LVM をオンラインに戻すことです。いつものように、最初に作業を確認します:

# lvscan
  ACTIVE            '/dev/testvg/testlv' [100.00 MiB] inherit

上記の出力からわかるように、論理ボリュームは非アクティブです。それでは、最初に有効にしましょう。

# lvchange -a y /dev/testvg/testlv
# /usr/sbin/lvscan
ACTIVE '/dev/vgtest/lvtest' [100.00 MB] inherit

論理ボリュームのサイズ変更 (オプション)

1. 基盤となる物理ボリュームのスペースが増えたため、論理ボリュームを拡張することもできます。以下のコマンドを使用して、LV のサイズを変更します。

# lvresize -L +200M /dev/testvg/testlv 
  Size of logical volume testvg/testlv changed from 100.00 MiB (25 extents) to 300.00 MiB (75 extents).
  Logical volume testvg/testlv successfully resized.

2. 論理ボリュームの新しいサイズを確認します。

# lvscan
  ACTIVE            '/dev/testvg/testlv' [300.00 MiB] inherit


Linux
  1. Lum – Lvmとそれに含まれる物理ボリュームと論理ボリュームを使用してパーティションを拡張する方法は?

  2. CentOS/RHEL で OS レベルから ASM ディスクを拡張する方法

  3. CentOS / RHEL 6 :ルート ディスク デバイスのボリューム グループ名を変更する方法

  1. CentOS / RHEL :新しい LVM ベースのスワップ パーティションを作成する方法

  2. CentOS / RHEL :LVM ボリュームの作成時刻を確認する方法

  3. CentOS / RHEL :スワップ パーティションに使用するデバイスの優先順位を付ける方法

  1. CentOS / RHEL :LVM のボリューム グループ (VG) から未使用の物理ボリューム (PV) を削除する方法

  2. CentOS / RHEL :LVM のボリューム グループで空き容量を見つける方法

  3. CentOS / RHEL :LVM でボリューム グループを削除する方法