使用逻辑卷管理灵活储存

第五单元

一  lvm 定义

Lvm是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。将磁盘分区处理成物理卷(pv),再将物理卷变成一个整块的卷组(voilmegroup,vg)形成一个储存池。然后就可以在卷组随意创建lvm(逻辑卷组),并进一步在lvm上创建文件系统。

Lvm可拉伸也可压缩,当系统添加了新的磁盘,通过lvm,就不用将磁盘的文件移动到新的磁盘上以充分利用新的存储空间。而是直接扩展文件系统跨越磁盘即可

二 lvm 建立

如果出现以下问题:

[[email protected] ~]# pvcreate /dev/vdb1

Physical volume /dev/vdb1 not found

Can‘t open /dev/vdb1 exclusively.  Mounted filesystem?

说明/dev/md0没有停止

解决:[[email protected] ~]# mdadm -S /dev/md0

mdadm: stopped /dev/md0

1  fdisk    /dev/vdb            ###建立两个分区####

注意:在wq保存前,要先将分区类型选成lvm的类型

监控pv,vg,lvm的信息:watch   -n   1   ‘echo  ===pvmessaage=== ; pvs; echo ===vgmessage=== ; vgs; echo ===lvmessage=== ; lvs;  df  /weixindata’

2  pvcreate   /dev/vdb1                    ###将物理分区创建成物理卷(pv)###

3   vgcreate   vg0    /dev/vdb1           ##将物理卷创建成卷组,卷组名为vg0###

4  lvcreate   -L   300M   -n   lv0   vg0   ###在vg0上创建lvm ,-L 值大小为300M,-n指取名为lv0###

5  Mkfs.xfs    /dev/vg0/lv0                ###将lvm格式化###

6  mount   /dev/vg0/lv0   /weixindata/        ###将lvm挂载到/weixindata目录下

Lvm创建过程如下:

[[email protected] ~]# pvcreate /dev/vdb1

Physical volume /dev/vdb1 not found

WARNING: linux_raid_member signature detected on /dev/vdb1 at offset 4096. Wipe it? [y/n] y

Wiping linux_raid_member signature on /dev/vdb1.

WARNING: xfs signature detected on /dev/vdb1 at offset 0. Wipe it? [y/n] y

Wiping xfs signature on /dev/vdb1.

Physical volume "/dev/vdb1" successfully created

[[email protected] ~]# vgcreate vg0 /dev/vdb1

Volume group "vg0" successfully created

[[email protected] ~]# lvcreate -L 300M -n lv0 vg0

Logical volume "lv0" created

[[email protected] ~]# mkfs.xfs /dev/vg0/lv0

meta-data=/dev/vg0/lv0           isize=256    agcount=4, agsize=19200 blks

=                       sectsz=512   attr=2, projid32bit=1

=                       crc=0

data     =                       bsize=4096   blocks=76800, imaxpct=25

=                       sunit=0      swidth=0 blks

naming   =version 2              bsize=4096   ascii-ci=0 ftype=0

log      =internal log           bsize=4096   blocks=853, version=2

=                       sectsz=512   sunit=0 blks, lazy-count=1

realtime =none                   extsz=4096   blocks=0, rtextents=0

[[email protected] ~]# mount /dev/vg0/lv0 /weixindata/

注: /dev/mapper/vg0-lv0 和  /dev/vg0/lv0都是指你所创建的lvm即lv0

如下:

[[email protected] ~]# ll /dev/mapper/vg0-lv0

lrwxrwxrwx. 1 root root 7 Apr 22 03:47 /dev/mapper/vg0-lv0 -> ../dm-0

[[email protected] ~]# ll /dev/vg0/lv0

lrwxrwxrwx. 1 root root 7 Apr 22 03:47 /dev/vg0/lv0 -> ../dm-0

[[email protected] ~]#

三 lvm拉伸

分两步:1 拉伸设备

2 拉伸文件系统

Lvextend  -L  900M   /dev/vg0/lv0    ###拉伸lvm到900M###

xfs_growfs   /dev/vg0/lv0             ###拉伸文件系统###

过程如下:

[[email protected] ~]# lvextend -L 900M /dev/vg0/lv0

Extending logical volume lv0 to 900.00 MiB

Logical volume lv0 successfully resized

[[email protected] ~]# xfs_growfs /dev/vg0/lv0

meta-data=/dev/mapper/vg0-lv0    isize=256    agcount=4, agsize=19200 blks

=                       sectsz=512   attr=2, projid32bit=1

=                       crc=0

data     =                       bsize=4096   blocks=76800, imaxpct=25

=                       sunit=0      swidth=0 blks

naming   =version 2              bsize=4096   ascii-ci=0 ftype=0

log      =internal               bsize=4096   blocks=853, version=2

=                       sectsz=512   sunit=0 blks, lazy-count=1

realtime =none                   extsz=4096   blocks=0, rtextents=0

data blocks changed from 76800 to 230400

注意:如果要拉伸的大小太大,lvm不够时,只需扩大pv即可,pv不够就再加一块硬盘。

例:将大小为1024M的lvm拉伸到1500M,由于lvm不够,因此要扩大pv

Pvcreate   /dev/vdb2     ###增加pv###

vgextend   vg0   /dev/vdb2   ###增加vg0###

Lvextend   -L    1500M    /dev/vg0/lv0   ###拉伸lvm到1500M###

xfs_growfs     /dev/vg0/lv0     ###拉伸文件系统###

过程如下:

[[email protected] ~]# lvextend -L 1500M /dev/vg0/lv0

Extending logical volume lv0 to 1.46 GiB

Insufficient free space: 150 extents needed, but only 30 available

[[email protected] ~]# pvcreate /dev/vdb2

Physical volume /dev/vdb2 not found

WARNING: linux_raid_member signature detected on /dev/vdb2 at offset 4096. Wipe it? [y/n] y

Wiping linux_raid_member signature on /dev/vdb2.

Physical volume "/dev/vdb2" successfully created

[[email protected] ~]# vgextend vg0 /dev/vdb2

Volume group "vg0" successfully extended

[[email protected] ~]# lvextend -L 1500M /dev/vg0/lv0

Extending logical volume lv0 to 1.46 GiB

Logical volume lv0 successfully resized

[[email protected] ~]# xfs_growfs /dev/vg0/lv0

meta-data=/dev/mapper/vg0-lv0    isize=256    agcount=12, agsize=19200 blks

=                       sectsz=512   attr=2, projid32bit=1

=                       crc=0

data     =                       bsize=4096   blocks=230400, imaxpct=25

=                       sunit=0      swidth=0 blks

naming   =version 2              bsize=4096   ascii-ci=0 ftype=0

log      =internal               bsize=4096   blocks=853, version=2

=                       sectsz=512   sunit=0 blks, lazy-count=1

realtime =none                   extsz=4096   blocks=0, rtextents=0

data blocks changed from 230400 to 384000

四 lvm 压缩

注意:有的文件系统不能压缩,像xfs的文件系统就不能压缩,ext4文件系统可以压缩

所以如果是xfs的文件系统要先改变文件系统

Umount   /weixindata            ###卸载###

Mkfs.ext4   /dev/vg0/lv0         ###格式化###

Mount   /dev/vg0/lv0   /weixindata/   ###挂载###

过程如下:

[[email protected] ~]# umount /weixindata/

[[email protected] ~]# mkfs.ext4 /dev/vg0/lv0

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

96000 inodes, 384000 blocks

19200 blocks (5.00%) reserved for the super user

First data block=0

Maximum filesystem blocks=394264576

12 block groups

32768 blocks per group, 32768 fragments per group

8000 inodes per group

Superblock backups stored on blocks:

32768, 98304, 163840, 229376, 294912

Allocating group tables: done

Writing inode tables: done

Creating journal (8192 blocks): done

Writing superblocks and filesystem accounting information: done

[[email protected] ~]# mount /dev/vg0/lv0 /weixindata/

开始压缩:

为了防止压缩过小将文件损坏,就要先卸载,然后扫描,如果压缩过小就会提示

umount    /weixindata/     ###卸载###

e2fsck   -f   /dev/vg0/lv0     ###扫描###

resize2fs   /dev/vg0/lv0   300M   ###压缩文件系统到300M###

如果没有提示,则说明压缩在允许范围内

mount    /dev/vg0/lv0     /weixindata/   ##挂载###

lvreduce   -L   300    /dev/vg0/lv0    ###压缩设备到300M###

过程如下:

[[email protected] ~]# umount /weixindata/

[[email protected] ~]# mkfs.ext4 /dev/vg0/lv0

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

96000 inodes, 384000 blocks

19200 blocks (5.00%) reserved for the super user

First data block=0

Maximum filesystem blocks=394264576

12 block groups

32768 blocks per group, 32768 fragments per group

8000 inodes per group

Superblock backups stored on blocks:

32768, 98304, 163840, 229376, 294912

Allocating group tables: done

Writing inode tables: done

Creating journal (8192 blocks): done

Writing superblocks and filesystem accounting information: done

[[email protected] ~]# mount /dev/vg0/lv0 /weixindata/

五 移除物理卷

要从一个卷组中移除一个物理卷,首先要确认要移除的物理卷没有被任何逻辑卷正在使用,可通过“pvdisplay”命令查看

Pvdisplay    /dev/vdb2

如果total   PE 和Free  PE 相等,则没有被使用

如果正被使用,就需要将该物理卷的数据转移到别的物理卷,然后才能移除。

pvmove   /dev/vdb1   /dev/vdb2  ###将物理卷/dev/vdb1的数据移到/dev/vdb2###

vgreduce  vg0   /dev/vdb1        ###把vdb1从vg0里移走###

pvremove    /dev/vdb1           ###删除物理卷/dev/vdb1 ###

过程如下:

[email protected] ~]# pvmove /dev/vdb1 /dev/vdb2

/dev/vdb1: Moved: 17.3%

/dev/vdb1: Moved: 100.0%

[[email protected] ~]# vgreduce vg0 /dev/vdb1

Removed "/dev/vdb1" from volume group "vg0"

[[email protected] ~]# pvremove /dev/vdb1

Labels on physical volume "/dev/vdb1" successfully wiped

六 lvm 快照

目的 :为保护原始数据

lvcreate  -L  50M  -n  lv0backup  -s  /dev/vg0/lv0 ###-s指对/dev/vg0/lv0进行快照,-L指快照大小为50M,-n指快照名字为 lv0backup

mount   /dev/vg0/lv0backup    /weixindata/     ###将快照挂载到/weixindata/

例:在lvm挂载的目录/weixindata/ 下建立文件,然后对lvm进行快照,将其挂载到/weixindata/ 下,查看里面的文件,将文件全部删除,再删除快照,重新建立新的快照,再次查看/weixindata/ 下文件,发现文件还在,所以起到保护原始数据的作用。

过程如下:

[[email protected] ~]# touch  /weixindata/file{1..10}

[[email protected] ~]# cd /weixindata/

[[email protected] weixindata]# ls

file1   file2  file4  file6  file8  lost+found

file10  file3  file5  file7  file9

[[email protected] weixindata]# lvcreate -L 50M -n lv0backup -s /dev/vg0/lv0

Rounding up size to full physical extent 52.00 MiB

Logical volume "lv0backup" created

[[email protected] weixindata]# mount /dev/vg0/lv0backup /weixindata/

[[email protected] weixindata]# cd /weixindata/

[[email protected] weixindata]# ls

file1   file2  file4  file6  file8  lost+found

file10  file3  file5  file7  file9

[[email protected] weixindata]# rm -fr *

[[email protected] weixindata]# ls

[[email protected] weixindata]# cd

[[email protected] ~]# umount /weixindata/

[[email protected] ~]# lvremove /dev/vg0/lv0backup       ###删除快照###

Do you really want to remove active logical volume lv0backup? [y/n]: y

Logical volume "lv0backup" successfully removed

[[email protected] ~]# lvcreate -L 50M -n lv0backup -s /dev/vg0/lv0  ###建立快照##

Rounding up size to full physical extent 52.00 MiB

Logical volume "lv0backup" created

[[email protected] ~]# mount /dev/vg0/lv0backup /weixindata/

[[email protected] ~]# cd /weixindata/

[[email protected] weixindata]# ls

file1   file2  file4  file6  file8  lost+found

file10  file3  file5  file7  file9

七 卸载

umount /weixindata/                ###卸载###

lvremove /dev/vg0/lvbackup        ###删除快照###

lvremove /dev/vg0/lv0            ###删除lv0###

vgremove vg0                     ###删除vg0###

pvremove /dev/vdb2              ###删除物理卷/dev/vdb2###

时间: 2024-08-24 14:53:13

使用逻辑卷管理灵活储存的相关文章

II第五单元 使用逻辑卷管理器管理灵活存储

1.lvm名词lvm 逻辑卷,可以让设备自由伸缩的一个设备管理软件LVM  属于ibm公司逻辑运算管理物理分区---->>pv---->>vg----->>lvmpv  物理卷vg  物理卷组pe  物理拓展,lvm最小的存储单元lvm 逻辑卷,时最终我们使用的可以伸缩的设备 为什么使用逻辑卷 逻辑卷和逻辑卷管理有助于更加轻松地管理磁盘空间.如果文件系统需要更多的空间 ,可以将其卷组的可用空间分配给逻辑卷 , 并且可以调整文件系统的大小.如果磁盘开始出现误 , 可以通过

第二本书unit5.使用逻辑卷管理器管理灵活存储

unit5使用逻辑卷管理器管理灵活存储 1.lvm(可溶性磁盘扩展) 1).lvm建立(设备可以无限扩大,但是文件系统之支持18eb) 1.划分物理分区并把分区id修改为8e pvs|pvdisplay vdb1,2    /*显示pv vgs|vgdisplay westos     /*显示vg组 lvs|lvdisplay lv0      /*显示使用的lv watch -n 1 \        /*监控 'echo "===pvinfo" \ ;pvs \ ;echo &q

CentOS 6.3下配置LVM(逻辑卷管理)

一.简介 LVM是逻辑盘卷管理(Logical Volume Manager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性. LVM的工作原理其实很简单,它就是通过将底层的物理硬盘抽象的封装起来,然后以逻辑卷的方式呈现给上层应用.在传统的磁盘管理机制中,我们的上层应用是直接访问文件系统,从而对底层的物理硬盘进行读取,而在LVM中,其通过对底层的硬盘进行封装,当我们对底层的物理硬盘进行操作时,其不再是针对于分区进行操

linux逻辑卷管理

最近在进行linux充电,根据网络资料自己整理的资料,分享一下 ---------------------------------------------------------- Linux逻辑卷管理 1.什么是逻辑卷? LVM是逻辑卷管理(Logical Volume Manager)的简称,他是建立在物理存储设备之上的一个抽象层,允许你生成逻辑存储卷,和直接使用物理存储在管理上相比,提供了更好灵活性. LVM将存储虚拟化,使用逻辑卷,你不会受限于物理磁盘的大小,另外,和硬件相关的存储设置被

逻辑卷管理LVM

LVM是逻辑卷管理(Logical Volume Manager)的简称,它是建立在物理存储设备之上的一个抽象层,允许你生成逻辑存储卷,与直接使用物理存储在管理上相比,提供了更好灵活性.LVM将存储虚拟化,使用逻辑卷,你不会受限于物理磁盘的大小,另外,与硬件相关的存储设置被其隐藏,你可以不用停止应用或卸载文件系统来调整卷大小或数据迁移.这样可以减少操作成本.LVM与直接使用物理存储相比,有以下优点:1. 灵活的容量.当使用逻辑卷时,文件系统可以扩展到多个磁盘上,你可以聚合多个磁盘或磁盘分区成单一

LVM 逻辑卷管理器

LVM:Logical Volumn Manager逻辑卷管理器,一种开源软件,它有2个版本--lvm,lvm2.目前我们常用的是lvm2版本,而lvm本质是使用dm(device mapper)模块来实现将一个或多个底层块设备组织成一个逻辑设备的工具 物理卷-简称PV 物理卷在逻辑卷管理器中属于最底层的,任何的逻辑卷和卷组都必需依靠物理卷来建立,物理卷可以是一个完整的硬盘,也可以是硬盘中的莫一个分区2卷组-简称VG 卷组是建立在物理卷之上,一个卷组中可以包含一个物理卷组或者多个物理卷3逻辑卷-

手把手教你使用逻辑卷管理器:LVM

写在前面:如果此文有幸被某位朋友看见并发现有错的地方,希望批评指正.如有不明白的地方,愿可一起探讨. 什么是LVM? LVM是逻辑卷管理器(Logical Volume Manger)的缩写,是一个管理磁盘的工具.LVM可以将多个磁盘或磁盘分区整合在一起,让这些磁盘或分区看起来就像是一个磁盘一样,LVM的主要优势在于可以灵活调整文件系统的容量.更详细的信息可以参考http://tldp.org/HOWTO/LVM-HOWTO/,下面将手把手教你使用LVM. 准备工作 为了更好的演示LVM实作流程

CentOS 6.3下配置LVM(逻辑卷管理

CentOS 6.3下配置LVM(逻辑卷管理) 一.简介 LVM是逻辑盘卷管理(Logical Volume Manager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性. LVM的工作原理其实很简单,它就是通过将底层的物理硬盘抽象的封装起来,然后以逻辑卷的方式呈现给上层应用.在传统的磁盘管理机制中,我们的上层 应用是直接访问文件系统,从而对底层的物理硬盘进行读取,而在LVM中,其通过对底层的硬盘进行封装,当我们对

逻辑卷管理及单个分区扩容

1:目的 LVM是逻辑盘卷管理(Logical Volume Manager)的简称,他是磁盘管理的另一种工具,就目前基本上所有操作系统均支持,LVM是建立在硬盘和分区之上的一个逻辑层,来提高磁盘分区管理的灵活性.通过LVM系统管理员可以轻松管理磁盘分区: 2:试用范围 本文档适用的环境为linux系统: 3:术语 (1)PV(physical volume):物理卷在逻辑卷管理系统最底层,可为整个物理硬盘或实际物理硬盘上的分区: (2)VG(volume group):卷组建立在物理卷上,一卷