articles:lvm_add_disk

LVMのディスク追加

  1. LVM用のディスクパーティション作成
  2. PVの作成
  3. VGへの追加
  4. LVへ追加して既存のファイルシステムのサイズを拡張する
  5. または、新しいLVを作成してマウントする
  • fdisk - ディスクパーティションの作成、表示
  • pvdisplay, vgdisplay, lvdisplay - LVMオブジェクトの表示
  • pvcreate, vgcreate, lvcreate - LVMオブジェクトの作成
  • vgextend, lvextend - LVMオブジェクトへの追加
  • xfs_info, dumpe2fs - ファイルシステムの情報表示
  • xfs_grow, resize2fs - ファイルシステムのサイズ変更

追加したディスクのデバイスファイルを検索する。

ls /dev/sd* /dev/hd*

SCSI接続の場合、基本的にディスクは/dev/sda、/dev/sdbと増えていく。 /dev/sda1と末尾に数字が付く場合はパーティション。 新規に追加したディスクならば数字のついていないデバイスファイルが候補になる。

fdiskで新しいディスクにパーティションを作成する。 ここでは追加されたディスク/dev/sdbにパーティションを一つだけ作成する。

fdisk /dev/sdb Command: n Partition type: [enter](default: p) Partition number: [enter](default: 1) First sector: [enter](default: 2048) Last sector: [enter](default: ディスクサイズによる) Command: t Hex code: 8e Command: p Device Boot Start End Blocks Id System /dev/sdb1 2048 167772159 83885056 8e Linux LVM Command: v Remaining 2047 unallocated 512-byte sectors Command: w

pvcreateで作成したパーティションからPVを作成する。

pvcreate /dev/sdb1

vgdisplayで追加先のVG名を取得する。

vgdisplay --- Volume group --- VG Name centos_test

vgexendでVGにPVを追加する。

vgextend centos_test /dev/sdb1

新しいVGを作成する場合はvgcreateを使用する。

dfコマンドで追加先のLVを取得する。

df -h
Filesystem                    Size  Used Avail Use% Mounted on
devtmpfs                      956M     0  956M   0% /dev
tmpfs                         968M     0  968M   0% /dev/shm
tmpfs                         968M  8.4M  959M   1% /run
tmpfs                         968M     0  968M   0% /sys/fs/cgroup
/dev/mapper/centos_test-root   79G  1.4G   78G   2% /
/dev/sda2                    1014M  129M  886M  13% /boot
/dev/sda1                     200M   12M  189M   6% /boot/efi

lvextendでLV(/dev/mapper/centos_test-root)にPV(/dev/sdb1)を追加する。

lvextend /dev/mapper/centos_test-root /dev/sdb1

ファイルシステムのサイズを拡張する。 /etc/fstabまたは/etc/mtabからLVを検索してファイルシステムの種別を特定する。

ファイルシステムの種別がxfsの場合はxfs_growfsを使用する。

xfs_growfs /dev/mapper/centos_test-root

ファイルシステムの種別がext4の場合はresize2fsを使用する。

resize2fs /dev/mapper/centos_test-root

意図した通りにサイズが拡張されたかをdfコマンドで確認する。

lvcreateでVG(centos_test)にPV(/dev/sdb1)を含むLVをdataという名前で作成する。

lvcreate -n data -l 100%PVS centos_test /dev/sdb1

LVは/dev/mapper/VG名-LV名にマッピングされる。 この場合は/dev/mapper/centos_test-data

/mnt/dataにマウントするよう/etc/fstabにエントリを追加する。 使用するファイルシステムの種別(xfsext4)はここで指定する。

/etc/fstab
...
/dev/mapper/centos_test-root /                       xfs     defaults        0 0
/dev/mapper/centos_test-data /mnt/data               xfs     defaults        0 0
...

mkfsでファイルシステムを作成する。-tオプションで/etc/fstabで指定したファイルシステムの種別を指定する。

mkfs -t xfs /dev/mapper/centos_test-data

マウントポイントを作成しマウントする。

mkdir -p /mnt/data
mount /mnt/data
  • 最終更新: 2021-04-17 18:23
  • by nabium