【Linux】LVMで論理ボリュームを作成してマウントしてみた

はじめに

今回は前回のブログで作成したパーティション(/dev/sdc1)と事前に作成した(/dev/sdb1)でLVMを作成します。
 

前提条件

218のsdb(7GB)とsdc(5GB)を使用
デバイス ブート      始点        終点     ブロック   Id  システム
/dev/sdb1            2048    14680063     7339008   83  Linux
デバイス ブート      始点        終点     ブロック   Id  システム
/dev/sdc1            2048    10485759     5241856   83  Linux

事前にパーティション設定を行っている2つのパーティションを準備します。
設定がお済みではない場合は前回のブログを参考にご準備ください。

※前回のブログの最後でマウント設定を行っているので、LVMを作成する際はアンマウントしなければエラーが出ます(前回の場合umount /dev/sdc1またはumount /test_diskでアンマウント可)
 

今回実施する作業

↓  ↓  流れ  ↓  ↓


1.PV作成
2.VG作成
3.LV作成
4.パーティション設定
5.ディレクトリにマウント


 

LVMとは

LVM(Logical Volume Manager)とは、複数のハードディスクやパーティションにまたがった記憶領域をまとめて、単一の論理ボリューム(LV)として扱うことのできるディスク管理機能です。
 

本項の登場人物

PV(Phigical Volume):物理的な記憶媒体
VG(Volume Group):作成されたPV管理
LV(Logical Volume):実ファイルを格納する領域
 

LVM作成

PV作成

まず、PVから作成していきます。

コマンドを実行すると以下のような警告がでますがyを入力します。

[root@www ~]# pvcreate /dev/sdb1
WARNING: xfs signature detected on /dev/sdb1 at offset 0. Wipe it? [y/n]:

 
すると、successfullyとでてpvが作成できました。(これを/dev/sdc1でも同様に行います)

  Wiping xfs signature on /dev/sdb1.
  Physical volume "/dev/sdc1" successfully created.

 
このコマンドを打つことでPVの内容を確認することができます。

[root@www ~]# pvdisplay
  "/dev/sdc1" is a new physical volume of "<5.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdc1
  VG Name
  PV Size               <5.00 GiB
  Allocatable           NO
  PE Size               0
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               uVrYk3-WwbX-c1qc-I066-5mtT-loGQ-kzvEO0

  "/dev/sdb1" is a new physical volume of "<7.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdb1
  VG Name
  PV Size               <7.00 GiB
  Allocatable           NO
  PE Size               0
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               69eYa0-dCvt-LUCB-tmSb-VucK-ITpa-c6w07U

 

VG作成

次にVGを作成します。

今回は例としてvg_testとして作成します。
作成に成功すると以下のように表示されます。

[root@www ~]# vgcreate <VGの名前> /dev/sdb1 /dev/sdc1
  Volume group "vg_test" successfully created

 
こちらのコマンドでも作成されていることが確認できます。

[root@www ~]# vgdisplay
  --- Volume group ---
  VG Name               vg_test
  System ID
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               11.99 GiB
  PE Size               4.00 MiB
  Total PE              3070
  Alloc PE / Size       0 / 0
  Free  PE / Size       3070 / 11.99 GiB
  VG UUID               QrQsW1-COwI-AeBo-aXgD-Sba8-razp-0e8Ahp

 

LV作成

vgcreateとは異なり-nオプションで名前の指定を行います。
100%FREEでVGをどのくらい使用するのかのサイズを指定します。
(100%FREEはVGを100%使うという意味で、ノンアルではないですよ!!)
今回は先ほど作成したVGのすべてを使用することとしています。
作成に成功するとcreatedと表示されます。

[root@www ~]# lvcreate -n <LVの名前> -l 100%FREE <VGの名前>
  Logical volume "lv_test" created.

 
こちらのコマンドでも確認することができます。

[root@www ~]# lvdisplay
  --- Logical volume ---
  LV Path                /dev/vg_test/lv_test
  LV Name                lv_test
  VG Name                vg_test
  LV UUID                W3Jocd-05qm-Zcgn-2jRK-Beg1-GTAW-n99Wrc
  LV Write Access        read/write
  LV Creation host, time www, 2022-01-25 16:03:20 +0900
  LV Status              available
  # open                 0
  LV Size                11.99 GiB
  Current LE             3070
  Segments               2
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:2

 

パーティション設定

<VGの名前>と<LVの名前>に任意の文字列を入れ、結果が以下のような表示だと設定完了です。

[root@www ~]# mkfs -t xfs /dev/<VGの名前>/<LVの名前>
meta-data=/dev/vg_test/lv_test   isize=512    agcount=4, agsize=785920 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=3143680, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

 

ディレクトリにマウント

↓ここからは前回と同じになります。↓

LVを作成しただけでは機能しないので、今回は例として/testディレクトリにマウントを行います。(マウントに成功すると何も表示されません。)

[root@www ~]# mount -t xfs /dev/<VGの名前>/<LVの名前> /<マウント先>

 
最後にdfコマンドにて確認します。

[root@www ~]# df -hT
/dev/mapper/vg_test-lv_test xfs         12G   33M   12G    1% /test

マウントされていることが確認できました。

以上で終了となります。
お疲れさまでした。
 

おわりに

前回に引き続きLinuCの中で出題されたLVMの理解を深めるために実際に触ってみました。自分の手でやってみることにより理解が深まるので、これからの試験対策でもハンズオンを増やし、アウトプットをしていきます。

#3

返信を残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA