day25lvm逻辑卷

发布时间:2022-06-25 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了day25lvm逻辑卷脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

lvm逻辑卷

用了lvm,可以将多个物理分区、抽象为一个逻辑卷组,并且这个逻辑卷组是可以动态扩容、缩容的。
当逻辑卷组容量不够了,只需要买新硬盘,通过命令再添加到这个指定的逻辑卷组中,可以在不停机的情况下,立即实现扩容,且被linux识别

 

什么是LVM

LVM(Logical Volume Manager)逻辑卷管理,是一种将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它的硬盘的分区加入其中,这样可以事项一种磁盘空间的动态管理,相对于普通的磁盘分区有很大的灵活性。

  • 硬盘的多个分区由lvm统一为卷组,可以弹性的调整卷组的大小,充分利用硬盘容量
  • 文件系统创建在逻辑卷上,逻辑卷可以根据需求改变大小(卷组总容量范围内)

基于硬盘创建lvm

  • 多块硬盘做成逻辑卷,将整个逻辑卷同意管理,可以动态对分区进行扩缩空间容量

 

图解lvm工作流程

 

day25lvm逻辑卷

 

 

理解LVM原理名词

  1. PP(Physical Parttion):物理分区,LVM建立在物理分区之上
  2. PV(Physical Volume):物理卷,处于LVM最底层,一般一个PV对应一个PP
  3. PE(physical Extends):物理区域,PV中可以用于分配的最小存储单元,同一个VG中所有的PV的PE大小相同,如1M、2M
  4. VG(Volume Group):卷组,建立在PV之上,可以划分多个PV
  5. LE(Logical Extends):逻辑扩展单元,组成LV的基本单元,一个LE对应一个PE
  6. LV(Logical Volume):逻辑卷,建立在VG之上,是一个可以动态改变大小的分区

day25lvm逻辑卷

 

 

lvm重点概念

  • 物理卷(Physical Volume,PV)

物理卷是底层==真正提供容量==,存放数据的设备,它可以是整个硬盘、硬盘上的分区等。

  • 卷组(Volume Group, VG)

卷组建立在物理卷之上,它由==一个或多个物理卷==组成。即把物理卷整合起来提供容量分配。 一个LVM系统中可以只有一个卷组,也可以包含多个卷组。

  • 逻辑卷(Logical Volume, LV)

逻辑卷建立在卷组之上,它是从卷组中“切出”的一块空间。它是==最终用户使用的逻辑设==备。逻辑卷创建之后,其==大小可以伸缩==。

  • 物理区域 PE(physical extent)

每一个物理卷被划分为称为PE(Physical Extents)的基本单元,具有唯一编号的PE是能被LVM寻址的最小单元。PE的大小可指定,默认为4 MB。 PE的大小一旦确定将不能改变,同一个卷组中的所有物理卷的PE的大小是一致的。 4MB=4096kb=4096kb/4kb=1024个block

说明:

  1. 硬盘读取数据最小单位1个扇区512字节
  2. 操作读取数据最小单位1个数据块=8*512字节=4096字节=4KB
  3. lvm寻址最小单位1个PE=4MB

LVM优点

  • 文件系统可以跨多个磁盘,大小不会受到磁盘限制
  • 可在系统运行的情况下,动态扩展文件系统大小
  • 可以增加新的磁盘到LVM的存储池中

lvm工作流程

  1. 物理磁盘
  2. 命令创建pv
  3. 创建卷组vg
  4. 创建逻辑卷lv
  5. 格式化lv文件系统
  6. 挂载使用

lvm常用命令汇总

操作pv命令vg命令lv命令
列出display pvs vgs lvs
扩容extend   vgextend lvextend
缩容reduct   vgreduce Lvreduce
删除remove pvremove vgremove lvremove
改变容量resize   vgresize

 

 

 

lvm练习操作

day25lvm逻辑卷

 

 

 

1.创建的磁盘pv化
[root@nodel ~11:43:03]#
[root@nodel ~11:43:03]#pvcreate /dev/sdb /dev/sdc
  Physical volume "/dev/sdb" successfully created.
  Physical volume "/dev/sdc" successfully created.
[root@nodel ~11:52:39]#pvs
  PV         VG     Fmt  Attr PSize   PFree 
  /dev/sda2  centos lvm2 a--  <19.00g     0 
  /dev/sdb          lvm2 ---   30.00g 30.00g
  /dev/sdc          lvm2 ---   30.00g 30.00g
[root@nodel ~11:52:45]#

2.创建逻辑卷组
[root@nodel ~11:52:45]#vgcreate vg0224 /dev/sdb /dev/sdc
  Volume group "vg0224" successfully created
[root@nodel ~11:55:03]#vgs
  VG     #PV #LV #SN Attr   VSize   VFree 
  centos   1   2   0 wz--n- <19.00g     0 
  vg0224   2   0   0 wz--n-  59.99g 59.99g
[root@nodel ~11:55:07]#

3。创造逻辑卷
[root@nodel ~11:55:07]#lvcreate -n 0224-lv1 -L 10G vg0224
  Logical volume "0224-lv1" created.
[root@nodel ~11:56:51]#lvcreate -n 0224-lv2 -L 15G vg0224
  Logical volume "0224-lv2" created.
[root@nodel ~11:57:07]#lvcreate -n 0224-lv3 -L 25G vg0224
  Logical volume "0224-lv3" created.
[root@nodel ~11:57:19]#lvs
  LV       VG     Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  root     centos -wi-ao---- <17.00g                                                    
  swap     centos -wi-ao----   2.00g                                                    
  0224-lv1 vg0224 -wi-a-----  10.00g                                                    
  0224-lv2 vg0224 -wi-a-----  15.00g                                                    
  0224-lv3 vg0224 -wi-a-----  25.00g                                                    
[root@nodel ~11:57:22]#
4.格式化文件系统
[root@nodel /12:05:43]#mkfs.xfs /dev/vg0224/0224-lv1
meta-data=/dev/vg0224/0224-lv1   isize=512    agcount=4, agsize=655360 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=2621440, 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
[root@nodel /12:06:51]#mkfs.xfs /dev/vg0224/0224-lv2
meta-data=/dev/vg0224/0224-lv2   isize=512    agcount=4, agsize=983040 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=3932160, 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
[root@nodel /12:06:55]#mkfs.ext4 /dev/vg0224/0224-lv3
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
1638400 inodes, 6553600 blocks
327680 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2155872256
200 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
    32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
    4096000

Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done   

[root@nodel /12:07:13]#

5.挂载到相关目录
[root@nodel /12:07:54]#mount /dev/vg0224/0224-lv1 /test1
[root@nodel /12:08:14]#mount /dev/vg0224/0224-lv2 /test2
[root@nodel /12:08:20]#mount /dev/vg0224/0224-lv3 /test3
[root@nodel /12:08:27]#mount -l |grep 'test'
/dev/mapper/vg0224-0224--lv1 on /test1 type xfs (rw,relatime,attr2,inode64,noquota)
/dev/mapper/vg0224-0224--lv2 on /test2 type xfs (rw,relatime,attr2,inode64,noquota)
/dev/mapper/vg0224-0224--lv3 on /test3 type ext4 (rw,relatime,data=ordered)
[root@nodel /12:08:42]#

6.分别查看文件系统信息
[root@nodel /12:09:15]#xfs_info /dev/vg0224/0224-lv1
meta-data=/dev/mapper/vg0224-0224--lv1 isize=512    agcount=4, agsize=655360 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=2621440, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
[root@nodel /12:09:54]#xfs_info /dev/vg0224/0224-lv2
meta-data=/dev/mapper/vg0224-0224--lv2 isize=512    agcount=4, agsize=983040 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=3932160, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
[root@nodel /12:14:49]#dumpe2fs /dev/vg0224/0224-lv3 |grep -Ei '^inode|^block'
dumpe2fs 1.42.9 (28-Dec-2013)
Inode count:              1638400
Block count:              6553600
Block size:               4096
Blocks per group:         32768
Inodes per group:         8192
Inode blocks per group:   512
Inode size:              256
[root@nodel /12:15:26]#

7.查看卷组情况

[root@nodel /12:15:26]#
[root@nodel /12:15:26]#vgs
  VG     #PV #LV #SN Attr   VSize   VFree
  centos   1   2   0 wz--n- <19.00g    0 
  vg0224   2   3   0 wz--n-  59.99g 9.99g
[root@nodel /12:16:34]#
确定还够满足扩容0224-lv3
先扩容这个
[root@nodel /12:21:13]#lvextend -L +5G /dev/vg0224/0224-lv3
  Size of logical volume vg0224/0224-lv3 changed from 25.00 GiB (6400 extents) to 30.00 GiB (7680 extents).
  Logical volume vg0224/0224-lv3 successfully resized.
[root@nodel /12:21:36]#lvs
  LV       VG     Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  root     centos -wi-ao---- <17.00g                                                    
  swap     centos -wi-ao----   2.00g                                                    
  0224-lv1 vg0224 -wi-ao----  10.00g                                                    
  0224-lv2 vg0224 -wi-ao----  15.00g                                                    
  0224-lv3 vg0224 -wi-ao----  30.00g                                                    
[root@nodel /12:21:46]##该文件系统是ext4的
[root@nodel /12:22:40]#resize2fs /dev/vg0224/0224-lv3
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/vg0224/0224-lv3 is mounted on /test3; on-line resizing required
old_desc_blocks = 4, new_desc_blocks = 4
The filesystem on /dev/vg0224/0224-lv3 is now 7864320 blocks long.

[root@nodel /12:23:07]#df -hT
Filesystem                   Type      Size  Used Avail Use% Mounted on
/dev/mapper/centos-root      xfs        17G  9.4G  7.7G  56% /
devtmpfs                     devtmpfs  476M     0  476M   0% /dev
tmpfs                        tmpfs     488M     0  488M   0% /dev/shm
tmpfs                        tmpfs     488M  7.7M  480M   2% /run
tmpfs                        tmpfs     488M     0  488M   0% /sys/fs/cgroup
/dev/sda1                    xfs      1014M  130M  885M  13% /boot
tmpfs                        tmpfs      98M     0   98M   0% /run/user/0
/dev/mapper/vg0224-0224--lv1 xfs        10G   33M   10G   1% /test1
/dev/mapper/vg0224-0224--lv2 xfs        15G   33M   15G   1% /test2
/dev/mapper/vg0224-0224--lv3 ext4       30G   45M   28G   1% /test3
[root@nodel /12:23:35]#
8.[root@nodel /12:23:35]#vgs
  VG     #PV #LV #SN Attr   VSize   VFree
  centos   1   2   0 wz--n- <19.00g    0 
  vg0224   2   3   0 wz--n-  59.99g 4.99g
[root@nodel /12:24:05]#
此时已经不够使用,需要至少增加15G的内存
[root@nodel ~12:26:20]#pvcreate /dev/sdd
  Physical volume "/dev/sdd" successfully created.
[root@nodel ~12:26:59]#vgextend vg0224 /dev/sdd
  Volume group "vg0224" successfully extended
[root@nodel ~12:27:48]#vgs
  VG     #PV #LV #SN Attr   VSize   VFree  
  centos   1   2   0 wz--n- <19.00g      0 
  vg0224   3   3   0 wz--n- <79.99g <24.99g
[root@nodel ~12:27:51]#此时已经成功扩容
需要重新挂载
xfs_growfs: /dev/vg0224/0224-lv1 is not a mounted XFS filesystem
[root@nodel ~12:29:46]#mount /dev/vg0224/0224-lv1 /test1
[root@nodel ~12:31:00]#mount /dev/vg0224/0224-lv2 /test2
[root@nodel ~12:31:07]#mount /dev/vg0224/0224-lv3 /test3
[root@nodel ~12:31:12]#xfs_growfs /dev/vg0224/0224-lv1
meta-data=/dev/mapper/vg0224-0224--lv1 isize=512    agcount=4, agsize=655360 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=2621440, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 2621440 to 6553600
[root@nodel ~12:31:16]#

[root@nodel ~12:32:41]#df -hT
Filesystem                   Type      Size  Used Avail Use% Mounted on
/dev/mapper/centos-root      xfs        17G  9.4G  7.7G  56% /
devtmpfs                     devtmpfs  476M     0  476M   0% /dev
tmpfs                        tmpfs     488M     0  488M   0% /dev/shm
tmpfs                        tmpfs     488M  7.7M  480M   2% /run
tmpfs                        tmpfs     488M     0  488M   0% /sys/fs/cgroup
/dev/sda1                    xfs      1014M  130M  885M  13% /boot
tmpfs                        tmpfs      98M     0   98M   0% /run/user/0
/dev/mapper/vg0224-0224--lv1 xfs        30G   33M   30G   1% /test1
/dev/mapper/vg0224-0224--lv2 xfs        15G   33M   15G   1% /test2
/dev/mapper/vg0224-0224--lv3 ext4       30G   45M   28G   1% /test3
[root@nodel ~12:32:48]#

 

脚本宝典总结

以上是脚本宝典为你收集整理的day25lvm逻辑卷全部内容,希望文章能够帮你解决day25lvm逻辑卷所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: