3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

LVMによるディスク領域の作成(CentOS8.3)

Last updated at Posted at 2022-01-30

LVMを利用してディスク領域の作成を行います。
image.png

本稿では①~⑥までを実施し、⑦~⑧は以下の記事にて紹介します。

環境 詳細
OS CentOS Linux release 8.3.2011
Kernel 4.18.0-240.el8.x86_64
Machine VM(vmware ESXi 6.7 update3)
LVM lvm2-2.03.09-5.el8.x86_64

#0.Disk追加
ESXi側からHDDを追加します。
image.png

OS起動後、/dev/sdb/dev/sdbとして認識されました。

new_device
[root@centt83-02 ~]# lsblk -i
NAME                    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda                       8:0    0   16G  0 disk 
|-sda1                    8:1    0  600M  0 part /boot/efi
|-sda2                    8:2    0    1G  0 part /boot
`-sda3                    8:3    0 14.4G  0 part 
  |-cl-root             253:0    0 12.8G  0 lvm  /
  `-cl-swap             253:1    0  1.6G  0 lvm  [SWAP]
sdb                       8:16   0    5G  0 disk                ### 新規追加 ###
sdc                       8:32   0    5G  0 disk                ### 新規追加 ### 
sr0                      11:0    1  8.6G  0 rom  
[root@centt83-02 ~]#

#1.パーティション作成
パーティションを作成します。partedコマンドにてHDDにパーティションを作成します。
詳細は以下から。

パーティション作成時はGPTで初期化し、各ディスクを100%利用した1個のパーティションを作成します。
#今回は/dev/sdb/dev/sdcがありますが、コマンドは同じなので/dev/sdbのみ記載します。

パーティション作成
[root@centt83-02 ~]# parted /dev/sdb
GNU Parted 3.2
/dev/sdb を使用
GNU Parted へようこそ! コマンド一覧を見るには 'help' と入力してください。
(parted) p                                      ### 情報表示 ###
エラー: /dev/sdb: ディスクラベルが認識できません。
モデル: VMware Virtual disk (scsi)
ディスク /dev/sdb: 5369MB
セクタサイズ (論理/物理): 512B/512B
パーティションテーブル: unknown
ディスクフラグ: 
(parted) 
(parted) mklabel gpt                            ### GPTで初期化 ###
(parted) 
(parted) mkpart                                 ### パーティション作成 ###
パーティションの名前?  []?                        ### 入力無しEnter ###
ファイルシステムの種類?  [ext2]?                  ### 入力無しEnter ###
開始? 0%                                        ### 0%から開始 ###
終了? 100%                                      ### 100%まで利用 ###
(parted) 
(parted) set 1 lvm on                           ### 1つめのパーティションにLVMフラグ ###
(parted) 
(parted) p                                      ### 情報表示 ###
モデル: VMware Virtual disk (scsi)
ディスク /dev/sdb: 5369MB
セクタサイズ (論理/物理): 512B/512B
パーティションテーブル: gpt
ディスクフラグ: 

番号  開始    終了    サイズ  ファイルシステム  名前  フラグ
 1    1049kB  5368MB  5367MB  ext2                    lvm

(parted) 
(parted) q                                       ### 終了 ###
通知: 必要であれば /etc/fstab を更新するのを忘れないようにしてください。

[root@centt83-02 ~]# 

#2.PV作成
PV:Physical Volumeを作成します。
pvcreate [パーティション]にてPVを作成します。
作成後、pvs,pvscan,pvdisplayで確認をします。

pv作成
[root@centt83-02 ~]# pvcreate /dev/sdb1
  Physical volume "/dev/sdb1" successfully created.
[root@centt83-02 ~]# 

[root@centt83-02 ~]# pvcreate /dev/sdc1
  Physical volume "/dev/sdc1" successfully created.
[root@centt83-02 ~]# 
PV作成確認
[root@centt83-02 ~]# pvs
  PV         VG Fmt  Attr PSize  PFree 
  /dev/sdb1     lvm2 ---  <5.00g <5.00g
  /dev/sdc1     lvm2 ---  <5.00g <5.00g
[root@centt83-02 ~]# 

[root@centt83-02 ~]# pvscan
  PV /dev/sdb1                      lvm2 [<5.00 GiB]
  PV /dev/sdc1                      lvm2 [<5.00 GiB]
  Total: 3 [<24.41 GiB] / in use: 1 [14.41 GiB] / in no VG: 2 [<10.00 GiB]
[root@centt83-02 ~]# 

[root@centt83-02 ~]# pvdisplay
  --- NEW Physical volume ---
  PV Name               /dev/sdb1
  VG Name               
  PV Size               <5.00 GiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               MrVE23-LFhX-KNb2-4aU4-jgF7-p1hG-klwfU9
   
  "/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               yd1Fp6-3IkA-7Coa-kV5O-dtC0-F1S3-ggnHoT
   
[root@centt83-02 ~]# 

#3.VG作成/参加
VG:Volume Groupの作成と参加をします。
まずはPV/dev/sdb1/を利用してVGvg01を作成し、その後PVdev/sdbc1/をVGvg01に参加します。

##3-1.VG作成
vgcreate [VG] [PV]にてPVを作成します。
作成後、vgs,vgscan,vgdisplayで確認をします。

vgcreate [VG] [PV1] [PV2] [PV3]とすることで、VG作成と同時にPV1~3をまとめてVGに入力可能です。

vg作成
[root@centt83-02 ~]# vgcreate test_vg01 /dev/sdb1
  Volume group "test_vg01" successfully created
[root@centt83-02 ~]# 
vg確認
[root@centt83-02 ~]# vgs
  VG        #PV #LV #SN Attr   VSize  VFree 
  test_vg01   1   0   0 wz--n- <5.00g <5.00g
[root@centt83-02 ~]# 

[root@centt83-02 ~]# vgscan
  Found volume group "test_vg01" using metadata type lvm2
[root@centt83-02 ~]# 

[root@centt83-02 ~]# vgdisplay
  --- Volume group ---
  VG Name               test_vg01
  System ID             
  Format                lvm2
  Metadata Areas        1
  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                1
  Act PV                1
  VG Size               <5.00 GiB
  PE Size               4.00 MiB
  Total PE              1279
  Alloc PE / Size       0 / 0   
  Free  PE / Size       1279 / <5.00 GiB
  VG UUID               zmBgH0-NSFy-QNFm-H5iq-xY7L-bBPN-SWlavx
   
[root@centt83-02 ~]# 

##3-2.VG参加
vgextend [VG] [PV]にてVGを作成します。
作成後、vgs,vgscan,vgdisplayで確認をします。

vg参加
[root@centt83-02 ~]# vgextend test_vg01 /dev/sdc1
  Volume group "test_vg01" successfully extended
[root@centt83-02 ~]# 
vg確認
[root@centt83-02 ~]# vgs
  VG        #PV #LV #SN Attr   VSize  VFree
  test_vg01   2   0   0 wz--n-  9.99g 9.99g
[root@centt83-02 ~]# 

[root@centt83-02 ~]# vgscan
  Found volume group "test_vg01" using metadata type lvm2
[root@centt83-02 ~]# 

[root@centt83-02 ~]# vgdisplay
  --- Volume group ---
  VG Name               test_vg01
  System ID             
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  2
  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               9.99 GiB
  PE Size               4.00 MiB
  Total PE              2558
  Alloc PE / Size       0 / 0   
  Free  PE / Size       2558 / 9.99 GiB
  VG UUID               zmBgH0-NSFy-QNFm-H5iq-xY7L-bBPN-SWlavx
   
[root@centt83-02 ~]# 

#4.LV作成
lvcreate -n [LV] -L [Size] [VG]にてLVを作成します。
-L [Size]-L 1g=1024^3byte、-L 1G=1000^3byteで計算します。
また、-l [number]%[suffix]オプションを利用して相対容量を入力可能です。

lvcreate -l 30%VG -n [LV] [VG]:VGの30%を利用してLVを作成
lvcreate -l 100%FREE -n [LV] [VG]:VGの残り100%(=残り全て)を利用してLVを作成

作成後、lvs,lvscan,lvdisplayで確認をします。

LV作成
[root@centt83-02 ~]# lvcreate -n test_lv01 -L 2g test_vg01
  Logical volume "test_lv01" created.
[root@centt83-02 ~]# 

[root@centt83-02 ~]# lvcreate -n test_lv02 -L 2g test_vg01
  Logical volume "test_lv02" created.
[root@centt83-02 ~]# 
LV確認
[root@centt83-02 ~]# lvs
  LV        VG        Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  test_lv01 test_vg01 -wi-a-----   2.00g                                                    
  test_lv02 test_vg01 -wi-a-----   2.00g                                                    
[root@centt83-02 ~]# 

[root@centt83-02 ~]# lvscan
  ACTIVE            '/dev/test_vg01/test_lv01' [2.00 GiB] inherit
  ACTIVE            '/dev/test_vg01/test_lv02' [2.00 GiB] inherit
[root@centt83-02 ~]# 

[root@centt83-02 ~]# lvdisplay
  --- Logical volume ---
  LV Path                /dev/test_vg01/test_lv01
  LV Name                test_lv01
  VG Name                test_vg01
  LV UUID                DtXMWK-Z22z-OCS2-EfnX-YWPJ-4Wrc-tLHkvR
  LV Write Access        read/write
  LV Creation host, time centt83-02, 2022-01-30 19:04:46 +0900
  LV Status              available
  # open                 0
  LV Size                2.00 GiB
  Current LE             512
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:2
   
  --- Logical volume ---
  LV Path                /dev/test_vg01/test_lv02
  LV Name                test_lv02
  VG Name                test_vg01
  LV UUID                bZRobZ-2IR5-W56d-MHFd-iH2l-56NJ-Qs8alq
  LV Write Access        read/write
  LV Creation host, time centt83-02, 2022-01-30 19:05:18 +0900
  LV Status              available
  # open                 0
  LV Size                2.00 GiB
  Current LE             512
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:3
   
[root@centt83-02 ~]# 

#5.FS作成
ファイルシステムを作成します。
lvdisplayコマンドの出力のLV Pathを利用して、各LVのファイルシステムを作成します。

/dev/test_vg01/test_lv01ext4でファイルシステム作成 → mkfs.ext4 [LV]
/dev/test_vg01/test_lv02xfsでファイルシステム作成 → mkfs.xfs [LV]

LV_Path
[root@centt83-02 ~]# lvdisplay
  --- Logical volume ---
  LV Path                /dev/test_vg01/test_lv01
  --- Logical volume ---
  LV Path                /dev/test_vg01/test_lv02
ファイルシステム作成
[root@centt83-02 ~]# mkfs.ext4 /dev/test_vg01/test_lv01
mke2fs 1.45.6 (20-Mar-2020)
Discarding device blocks:   4096/524288             done                            
Creating filesystem with 524288 4k blocks and 131072 inodes
Filesystem UUID: 35d5a3a5-c00d-4f17-b6d6-2d02ccd0ee38
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912

Allocating group tables:  0/16     done                            
Writing inode tables:  0/16     done                            
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information:  0/16     done
[root@centt83-02 ~]# 

[root@centt83-02 ~]# mkfs.xfs /dev/test_vg01/test_lv02
meta-data=/dev/test_vg01/test_lv02 isize=512    agcount=4, agsize=131072 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=1, rmapbt=0
         =                       reflink=1
data     =                       bsize=4096   blocks=524288, 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
Discarding blocks...Done.
[root@centt83-02 ~]# 
ファイルシステム確認
[root@centt83-02 ~]# lsblk -if
NAME                    FSTYPE      LABEL                      UUID                                   MOUNTPOINT
sdb                                                                                                   
`-sdb1                  LVM2_member                            MrVE23-LFhX-KNb2-4aU4-jgF7-p1hG-klwfU9 
  |-test_vg01-test_lv01 ext4                                   35d5a3a5-c00d-4f17-b6d6-2d02ccd0ee38   
  `-test_vg01-test_lv02 xfs                                    43901ab2-1a9d-4f14-8f3c-4e16696cb1fb   
sdc                                                                                                   
`-sdc1                  LVM2_member                            yd1Fp6-3IkA-7Coa-kV5O-dtC0-F1S3-ggnHoT 
[root@centt83-02 ~]# 

#6.mount
マウントを実施します。
まずはマウントポイントとなるディレクトリをmkdir -p [direcvory]で作成します。
その後、/etc/fstabに各LVを追記し、mount -aでマウントします。

マウントポイント作成
[root@centt83-02 ~]# mkdir -p /lvm/vol1
[root@centt83-02 ~]# mkdir -p /lvm/vol2
[root@centt83-02 ~]# 
[root@centt83-02 ~]# ll /lvm
合計 0
drwxr-xr-x. 2 root root 6  1月 30 19:17 vol1
drwxr-xr-x. 2 root root 6  1月 30 19:17 vol2
[root@centt83-02 ~]# 
/etc/fstab(追記部分のみ)
[root@centt83-02 ~]# cat /etc/fstab
UUID=35d5a3a5-c00d-4f17-b6d6-2d02ccd0ee38 /lvm/vol1               ext4    defaults        0 0
UUID=43901ab2-1a9d-4f14-8f3c-4e16696cb1fb /lvm/vol2               xfs     defaults        0 0
mount、mount確認
[root@centt83-02 ~]# mount -a
[root@centt83-02 ~]# 

[root@centt83-02 ~]# mount
/dev/mapper/test_vg01-test_lv01 on /lvm/vol1 type ext4 (rw,relatime,seclabel)
/dev/mapper/test_vg01-test_lv02 on /lvm/vol2 type xfs (rw,relatime,seclabel,attr2,inode64,logbufs=8,logbsize=32k,noquota)
[root@centt83-02 ~]# 
df
[root@centt83-02 ~]# df -h
ファイルシス                    サイズ  使用  残り 使用% マウント位置
/dev/mapper/test_vg01-test_lv01   2.0G  6.0M  1.8G    1% /lvm/vol1
/dev/mapper/test_vg01-test_lv02   2.0G   47M  2.0G    3% /lvm/vol2
[root@centt83-02 ~]# 


ext4,xfsのLV拡張/縮小については以下に続きを記載しております。

#参考
https://go-journey.club/archives/557

3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?