练习
创建物理卷(pv->vg->lv)
物理卷(PV)就像把一块块独立的硬盘,标记成 "可用于搭建 LVM 的积木",让系统知道这些硬盘可以被 LVM 管理。
#把sdb这块硬盘标记为物理卷(相当于给这块积木盖章,说明 "这是 LVM 专用积木")[root@server ~ 10:59:59]# pvcreate /dev/sdbPhysical volume "/dev/sdb" successfully created.#同时把sdc和sdd两块硬盘也标记为物理卷(一次性处理多个积木)[root@server ~ 11:18:01]# pvcreate /dev/sd{c,d}Physical volume "/dev/sdc" successfully created.Physical volume "/dev/sdd" successfully created.#查看所有物理卷的状态(pvs是 "物理卷列表" 的缩写)[root@server ~ 11:18:21]# pvsPV VG Fmt Attr PSize PFree /dev/sda2 centos lvm2 a-- 52.00g 4.00m/dev/sdb lvm2 --- 20.00g 20.00g #20G空闲还是未使用的/dev/sdc lvm2 --- 20.00g 20.00g/dev/sdd lvm2 --- 20.00g 20.00g#查看sdb这块物理卷的详细信息(比如大小、是否被使用等),确认它是 20G 的新卷[root@server ~ 11:18:31]# pvdisplay /dev/sdb"/dev/sdb" is a new physical volume of "20.00 GiB"--- NEW Physical volume ---PV Name /dev/sdbVG Name PV Size 20.00 GiBAllocatable NOPE Size 0 Total PE 0Free PE 0Allocated PE 0PV UUID fSUdiC-O7r0-t3jf-Kxc5-aEpE-0Lbk-RA1weH
创建卷组
卷组(VG)就像一个 "收纳盒",把多个物理卷(积木)装进去,统一管理。之后创建的逻辑卷会从这个盒子里取空间
#创建一个叫webapp的卷组(收纳盒),把sdb这块物理卷(积木)放进去[root@server ~ 11:18:39]# vgcreate webapp /dev/sdbVolume group "webapp" successfully created#再创建一个叫dbapp的卷组,把sdc和sdd两块物理卷放进去(一个盒子可以装多块积木)[root@server ~ 11:19:45]# vgcreate dbapp /dev/sd{c,d}Volume group "dbapp" successfully created#再次查看物理卷,发现sdb属于webapp卷组,sdc和sdd属于dbapp卷组(积木已经放进对应盒子了)[root@server ~ 11:20:06]# pvsPV VG Fmt Attr PSize PFree /dev/sda2 centos lvm2 a-- 52.00g 4.00m/dev/sdb webapp lvm2 a-- <20.00g <20.00g/dev/sdc dbapp lvm2 a-- <20.00g <20.00g/dev/sdd dbapp lvm2 a-- <20.00g <20.00g#查看所有卷组的状态(vgs是 "卷组列表" 的缩写)。#结果显示:dbapp卷组有 2 块物理卷(#PV=2),总空间约 40G(20G+20G),目前全是空的(VFree=39.99g);webapp卷组有 1 块物理卷,总空间约 20G[root@server ~ 11:20:10]# vgsVG #PV #LV #SN Attr VSize VFree centos 1 2 0 wz--n- 52.00g 4.00mdbapp 2 0 0 wz--n- 39.99g 39.99gwebapp 1 0 0 wz--n- <20.00g <20.00g#查看dbapp卷组的详细信息,确认它的总空间是 40G,且完全空闲(所有积木都没被用)[root@server ~ 11:20:26]# vgdisplay dbapp--- Volume group ---VG Name dbappSystem ID Format lvm2Metadata Areas 2Metadata Sequence No 1VG Access read/writeVG Status resizable......VG Size 39.99 GiBPE Size 4.00 MiBTotal PE 10238Alloc PE / Size 0 / 0 Free PE / Size 10238 / 39.99 GiBVG UUID kUsUui-4yZ8-SqKL-6xIN-Bdfq-sgWh-e9Z1hR
创建逻辑卷
逻辑卷(LV)就像从卷组(收纳盒)里切割出的一块 "虚拟硬盘",可以直接用它来存数据。大小可以灵活调整,不受物理硬盘限制
#从webapp卷组(收纳盒)里切割出一块 5G 的空间,取名webapp01(逻辑卷)。#-n:指定逻辑卷名字;-L 5G:指定大小为 5G[root@server ~ 11:20:37]# lvcreate -n webapp01 -L 5G webappLogical volume "webapp01" created.#从dbapp卷组里切割出 25G 的空间,取名data01(dbapp总共有 40G,足够分 25G)[root@server ~ 11:21:40]# lvcreate -n data01 -L 25G dbappLogical volume "data01" created.#查看所有逻辑卷(lvs是 "逻辑卷列表" 的缩写),确认webapp01(5G)和data01(25G)已创建[root@server ~ 11:21:50]# lvsLV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convertroot centos -wi-ao---- 50.00g swap centos -wi-ao---- 2.00g data01 dbapp -wi-a----- 25.00g webapp01 webapp -wi-a----- 5.00g
#逻辑卷设备名由如下三种格式:- /dev/vname/lvame- /dev/mapper/vname-lvame- /dev/dm-N#逻辑卷的访问路径有多种方式,比如/dev/dbapp/data01或/dev/mapper/dbapp-data01,其实都是指向同一个逻辑卷(相当于一个文件有多个快捷方式)[root@server ~ 11:21:56]# ls -l /dev/dbapp/data01 /dev/mapper/dbapp-data01lrwxrwxrwx 1 root root 7 8月 4 11:21 /dev/dbapp/data01 -> ../dm-3lrwxrwxrwx 1 root root 7 8月 4 11:21 /dev/mapper/dbapp-data01 -> ../dm-3
# 查看data01逻辑卷的详细信息,确认它属于dbapp卷组,大小 25G[root@server ~ 11:22:19]# lvdisplay /dev/dbapp/data01--- Logical volume ---LV Path /dev/dbapp/data01LV Name data01VG Name dbappLV UUID QKSeZN-4S6s-AJyx-NNm1-l29s-WCf6-tkCKnlLV Write Access read/writeLV Creation host, time server.lyk.cloud, 2025-08-04 11:21:50 +0800LV Status available# open 0LV Size 25.00 GiB......# 再次查看物理卷,发现webapp卷组的sdb用了 5G(因为webapp01是 5G);dbapp卷组的sdc(20G)全用完了,sdd用了 5G(因为data01要 25G,sdc的 20G 不够,就从sdd再取 5G)[root@server ~ 11:23:20]# pvsPV VG Fmt Attr PSize PFree /dev/sda2 centos lvm2 a-- 52.00g 4.00m/dev/sdb webapp lvm2 a-- <20.00g <15.00g/dev/sdc dbapp lvm2 a-- <20.00g 0 /dev/sdd dbapp lvm2 a-- <20.00g 14.99g# 用lsblk查看硬盘分区关系,清晰看到data01逻辑卷横跨了sdc和sdd两块物理硬盘(这就是 LVM 的灵活之处:逻辑卷可以跨多个硬盘)[root@server ~ 11:23:58]# lsblk /dev/sd{b..d}NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTsdb 8:16 0 20G 0 disk └─webapp-webapp01 253:2 0 5G 0 lvm sdc 8:32 0 20G 0 disk └─dbapp-data01 253:3 0 25G 0 lvm sdd 8:48 0 20G 0 disk └─dbapp-data01 253:3 0 25G 0 lvm
创建文件系统
逻辑卷创建后,需要格式化(创建文件系统)才能用,就像新买的 U 盘要格式化一样
#给webapp01逻辑卷格式化,用xfs文件系统(相当于给这块 25G 的虚拟硬盘格式化,让系统能识别文件)[root@server ~ 11:24:24]# mkfs.xfs /dev/webapp/webapp01meta-data=/dev/webapp/webapp01 isize=512 agcount=4, agsize=327680 blks= sectsz=512 attr=2, projid32bit=1= crc=1 finobt=0, sparse=0data = bsize=4096 blocks=1310720, imaxpct=25= sunit=0 swidth=0 blksnaming =version 2 bsize=4096 ascii-ci=0 ftype=1log =internal log bsize=4096 blocks=2560, version=2= sectsz=512 sunit=0 blks, lazy-count=1realtime =none extsz=4096 blocks=0, rtextents=0#把webapp01逻辑卷挂载到/var/www/html文件夹(网站目录),以后往这个文件夹存东西,实际就是存在webapp01逻辑卷里。[root@server ~ 11:24:44]# mount /dev/webapp/webapp01 /var/www/html#/var/www/html 是 Linux 里默认的网页存放目录(就像网站的 “仓库”),index.html 是网站的首页文件。这条命令相当于在首页文件里写了 “hello” 这行字[root@server ~ 11:31:47]# echo hello >> /var/www/html/index.html#安装 httpd 软件(Apache 服务器,相当于电脑上的 “网页发布工具”,能让其他设备通过网络访问你的网页)[root@server ~ 11:32:38]# yum install -y httpd[root@server ~ 11:32:51]# systemctl start httpd#curl 是个查看网页内容的工具,http://localhost 指的是 “本机的网页地址”。执行后输出 “hello”,说明[root@server ~ 11:32:54]# curl http://localhosthello
清理(lv->vg->pg)
#我们把webapp01这个逻辑卷(虚拟硬盘)挂载到了/var/www/html(网页目录),现在先取消这个关联,就像拔 U 盘前先 “安全弹出”,避免数据出问题[root@server ~ 11:41:33]# umount /dev/webapp/webapp01#相当于 “把从收纳盒里拼好的虚拟硬盘拆成零散积木”。#这里要删除两个逻辑卷:webapp01(5G)和data01(25G)。系统会确认 “真的要删吗?”,输入y(是)后,这两个 “虚拟硬盘” 就被拆掉了,卷组里的空间变回空闲状态[root@server ~ 11:41:55]# lvremove /dev/webapp/webapp01 /dev/dbapp/data01Do you really want to remove active logical volume webapp/webapp01? [y/n]: yLogical volume "webapp01" successfully removedDo you really want to remove active logical volume dbapp/data01? [y/n]: yLogical volume "data01" successfully removed#相当于 “把装积木的收纳盒扔掉”。#之前创建的webapp和dbapp两个卷组(收纳盒),现在里面的逻辑卷已经删掉了,就可以把空盒子直接移除,彻底清理[root@server ~ 11:42:54]# vgremove webapp dbappVolume group "webapp" successfully removedVolume group "dbapp" successfully removed#相当于 “擦掉积木上的 LVM 标记,变回普通积木”。#最后把sdb、sdc、sdd这三块物理卷(原始硬盘)上的 LVM 标识清除,它们就变回了普通硬盘,以后可以重新用来创建新的 LVM,或者做其他用途(比如分区、创建 RAID 等)[root@server ~ 11:43:01]# pvremove /dev/sd{b..d}Labels on physical volume "/dev/sdb" successfully wiped.Labels on physical volume "/dev/sdc" successfully wiped.Labels on physical volume "/dev/sdd" successfully wiped.#整个过程就是 “拆除” 的逆向操作:先卸载使用中的设备,再删除逻辑卷(虚拟硬盘),接着删除卷组(收纳盒),最后清除物理卷标记(恢复原始硬盘),让所有资源回到初始状态,方便下次重新规划使用
扩展卷组和缩减卷组
首先得有个 “积木盒”(卷组),里面放 “积木块”(物理磁盘),再从盒子里拿出一块 “橡皮泥”(逻辑卷)随便捏
环境准备
# 创建卷组(积木盒)叫webapp,放进第一块积木/dev/sdb[root@server ~ 13:27:12]# vgcreate webapp /dev/sdbPhysical volume "/dev/sdb" successfully created.Volume group "webapp" successfully created# 从盒子里揪一块10G的橡皮泥(逻辑卷),叫webapp01[root@server ~ 13:36:11]# lvcreate -n webapp01 -L 10G webappWARNING: xfs signature detected on /dev/webapp/webapp01 at offset 0. Wipe it? [y/n]: yWiping xfs signature on /dev/webapp/webapp01.Logical volume "webapp01" created.
这里
vgcreate
就像给一堆磁盘起个集体名字,lvcreate
就是从这堆磁盘里划出一块可用空间
扩展卷组
如果原来的积木不够用了,就往盒子里加新积木(新磁盘)
# 给webapp盒子加两块新积木/dev/sdc和/dev/sdd [root@server ~ 13:37:11]# vgextend webapp /dev/sd{c,d}Physical volume "/dev/sdc" successfully created.Physical volume "/dev/sdd" successfully created.Volume group "webapp" successfully extended#执行后用vgs查看:webapp卷组从 1 块积木变成 3 块,总容量变大了(VSize从 20G 变成约 60G) [root@server ~ 13:39:00]# vgsVG #PV #LV #SN Attr VSize VFree centos 1 2 0 wz--n- 52.00g 4.00mwebapp 3 1 0 wz--n- <59.99g <49.99g#pvs命令能看到每块积木(物理卷)的使用情况,比如/dev/sdb用了 10G,还剩 10G [root@server ~ 13:39:47]# pvsPV VG Fmt Attr PSize PFree /dev/sda2 centos lvm2 a-- 52.00g 4.00m/dev/sdb webapp lvm2 a-- <20.00g <10.00g/dev/sdc webapp lvm2 a-- <20.00g <20.00g/dev/sdd webapp lvm2 a-- <20.00g <20.00g
缩减卷组
想拿走一块积木,得先把上面的 “零件”(数据)移到其他积木上,不然会散架
[root@server ~ 13:39:47]# pvsPV VG Fmt Attr PSize PFree /dev/sda2 centos lvm2 a-- 52.00g 4.00m/dev/sdb webapp lvm2 a-- <20.00g <10.00g/dev/sdc webapp lvm2 a-- <20.00g <20.00g/dev/sdd webapp lvm2 a-- <20.00g <20.00g# 直接拿/dev/sdb会报错(上面有数据) # 将物理卷/dev/sdb从卷组webapp中剔除,则会报错 [root@server ~ 13:40:24]# vgreduce webapp /dev/sdbPhysical volume "/dev/sdb" still in use# 先把/dev/sdb的数据搬到其他积木上 # 解决方法:将物理卷/dev/sdb中数据移动到卷组中其他物理卷 [root@server ~ 13:41:41]# pvmove /dev/sdb/dev/sdb: Moved: 0.31%/dev/sdb: Moved: 100.00% pvmove没选择目标,默认拿本组下一个的容量 # 现在可以安全拿走了(虽然命令里没写,但pvmove后/dev/sdb已空,默认从卷组移除)[root@server ~ 13:43:50]# pvsPV VG Fmt Attr PSize PFree /dev/sda2 centos lvm2 a-- 52.00g 4.00m/dev/sdb lvm2 --- 20.00g 20.00g/dev/sdc webapp lvm2 a-- <20.00g <10.00g/dev/sdd webapp lvm2 a-- <20.00g <20.00g
扩展和缩减逻辑卷
逻辑卷就像橡皮泥,能直接变大或变小(前提是卷组有空间)
扩展逻辑卷
# 把webapp01从10G捏到12G(+2G) [root@server ~ 13:43:55]# lvextend -L +2G /dev/webapp/webapp01 Size of logical volume webapp/webapp01 changed from 10.00 GiB (2560 extents) to 12.00 GiB (3072 extents).Logical volume webapp/webapp01 successfully resized. [root@server ~ 13:47:37]# lvs /dev/webapp/webapp01LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convertwebapp01 webapp -wi-a----- 12.00g
缩减逻辑卷
# 再捏回10G(-2G) [root@server ~ 13:47:44]# lvreduce -L -2G /dev/webapp/webapp01WARNING: Reducing active logical volume to 10.00 GiB.THIS MAY DESTROY YOUR DATA (filesystem etc.) Do you really want to reduce webapp/webapp01? [y/n]: ySize of logical volume webapp/webapp01 changed from 12.00 GiB (3072 extents) to 10.00 GiB (2560 extents).Logical volume webapp/webapp01 successfully resized. [root@server ~ 13:48:08]# lvs /dev/webapp/webapp01 LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convertwebapp01 webapp -wi-a----- 10.00g
指定逻辑卷大小lvresize
# 直接指定大小(比如捏到15G) [root@server ~ 13:50:49]# lvresize -L 15G /dev/webapp/webapp01Size of logical volume webapp/webapp01 changed from 10.00 GiB (2560 extents) to 15.00 GiB (3840 extents).Logical volume webapp/webapp01 successfully resized. [root@server ~ 13:51:41]# lvs /dev/webapp/webapp01 LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convertwebapp01 webapp -wi-a----- 15.00g
扩展和缩减文件系统
逻辑卷变大后,外面的 “袋子”(文件系统)也要跟着放大,不然装不下东西
扩展 XFS 文件系统
XFS 文件系统(只能放大,不能缩小)
[root@server ~ 13:51:46]# mkfs.xfs /dev/webapp/webapp01 [root@server ~ 13:58:06]# mkdir /var/www/html [root@server ~ 13:58:15]# mount /dev/webapp/webapp01 /var/www/html [root@server ~ 13:58:40]# cp /etc/host* /var/www/html [root@server ~ 13:59:01]# ls /var/www/html host.conf hostname hosts hosts.allow hosts.deny
# 第一步:扩展逻辑卷 [root@server ~ 13:59:08]# lvextend -L 15G /dev/webapp/webapp01 New size (3840 extents) matches existing size (3840 extents). [root@server ~ 14:00:28]# lvs /dev/webapp/webapp01 LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convertwebapp01 webapp -wi-ao---- 15.00g # 第二步:扩展文件系统# 同步文件系统大小(挂载点路径) [root@server ~ 14:00:40]# xfs_growfs /var/www/html ...... realtime =none extsz=4096 blocks=0, rtextents=0[root@server ~ 14:01:04]# df -h /var/www/html 文件系统 容量 已用 可用 已用% 挂载点 /dev/mapper/webapp-webapp01 15G 33M 15G 1% /var/www/html[root@server ~ 14:01:15]# ls /var/www/html host.conf hostname hosts hosts.allow hosts.deny# 先把逻辑卷放大到20G(-r参数会自动同步文件系统) # 块设备和文件系统一并扩展***r***一定要在L前面,或者写成 -r -L [root@server ~ 14:01:55]# lvextend -rL 20G /dev/webapp/webapp01[root@server ~ 14:02:38]# lvs /dev/webapp/webapp01 LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convertwebapp01 webapp -wi-ao---- 20.00g [root@server ~ 14:03:33]# df -h /var/www/html/ 文件系统 容量 已用 可用 已用% 挂载点 /dev/mapper/webapp-webapp01 20G 33M 20G 1% /var/www/html
扩展 EXT4 文件系统
EXT4 文件系统(能放大也能缩小)
[root@server ~ 14:03:46]# umount /var/www/html #<<< 'y'免输入y [root@server ~ 14:04:42]# mkfs.ext4 /dev/webapp/webapp01 <<< 'y'[root@server ~ 14:05:07]# mount /dev/webapp/webapp01 /var/www/html [root@server ~ 14:06:32]# df -h /var/www/html 文件系统 容量 已用 可用 已用% 挂载点 /dev/mapper/webapp-webapp01 20G 45M 19G 1% /var/www/html[root@server ~ 14:06:40]# cp /etc/host* /var/www/html [root@server ~ 14:06:53]# ls /var/www/html host.conf hostname hosts hosts.allow hosts.deny lost+found
# 第一步:扩展逻辑卷 # 先放大逻辑卷到25G [root@server ~ 14:06:59]# lvextend -L 25G /dev/webapp/webapp01Size of logical volume webapp/webapp01 changed from 20.00 GiB (5120 extents) to 25.00 GiB (6400 extents).Logical volume webapp/webapp01 successfully resized. [root@server ~ 14:07:32]# lvs /dev/webapp/webapp01LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convertwebapp01 webapp -wi-ao---- 25.00g # 第二步:扩展文件系统# 放大文件系统(EXT4用resize2fs) [root@server ~ 14:07:38]# resize2fs /dev/webapp/webapp01 [root@server ~ 14:08:04]# df -h /var/www/html/ 文件系统 容量 已用 可用 已用% 挂载点 /dev/mapper/webapp-webapp01 25G 44M 24G 1% /var/www/html [root@server ~ 14:08:33]# ls /var/www/html host.conf hostname hosts hosts.allow hosts.deny lost+found# 块设备和文件系统一并扩展 [root@server ~ 14:08:55]# lvextend -rL 30G /dev/webapp/webapp01 [root@server ~ 14:09:31]# lvs /dev/webapp/webapp01 LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convertwebapp01 webapp -wi-ao---- 30.00g [root@server ~ 14:09:42]# df -h /var/www/html 文件系统 容量 已用 可用 已用% 挂载点 /dev/mapper/webapp-webapp01 30G 44M 28G 1% /var/www/html
缩减 EXT4 文件系统
缩减EXT4文件系统注意事项:
不支持在线缩减,必须卸载后缩减。
缩减后的容量,不能小于当前使用的容量。
ext4 减容流程:
卸载文件系统
e2fsck 文件系统
缩减文件系统
缩减lv
挂载测试
[root@server ~ 14:10:45]# df -hT /var/www/html/ #卸载文件系统# 缩小的话,先卸载挂载点,检查文件系统(重要!) [root@server ~ 14:15:00]# umount /var/www/html [root@server ~ 14:15:16]# fsck /dev/webapp/webapp01 fsck,来自 util-linux 2.23.2 e2fsck 1.42.9 (28-Dec-2013) /dev/mapper/webapp-webapp01: clean, 16/1966080 files, 167447/7864320 blocks #检测文件系统# 检查并修复错误 [root@server ~ 14:15:51]# e2fsck -f /dev/webapp/webapp01 e2fsck 1.42.9 (28-Dec-2013) 第一步: 检查inode,块,和大小 第二步: 检查目录结构 第3步: 检查目录连接性 Pass 4: Checking reference counts 第5步: 检查簇概要信息 /dev/webapp/webapp01: 16/1966080 files (0.0% non-contiguous), 167447/7864320 blocks#缩减文件系统# 先缩小文件系统到10G(必须小于逻辑卷当前大小) [root@server ~ 14:16:04]# resize2fs /dev/webapp/webapp01 10G#缩减逻辑卷# 再缩小逻辑卷到10G [root@server ~ 14:16:15]# lvreduce -L 10G /dev/webapp/webapp01[root@server ~ 14:16:26]# mount /dev/webapp/webapp01 /var/www/html [root@server ~ 14:19:57]# df -h /var/www/html 文件系统 容量 已用 可用 已用% 挂载点 /dev/mapper/webapp-webapp01 9.8G 37M 9.2G 1% /var/www/html[root@server ~ 14:20:21]# ls /var/www/html host.conf hostname hosts hosts.allow hosts.deny lost+found
总结:
#核心流程 卷组(VG):用vgextend加磁盘,vgreduce减磁盘(减前用pvmove移数据)。 逻辑卷(LV):用lvextend/lvreduce/lvresize调整大小。 文件系统:XFS 用xfs_growfs放大;EXT4 用resize2fs放大 / 缩小(缩小要先卸挂载点 + 检查)。
逻辑卷快照
我们可以使用快照记录了lv中数据,后续可以用来恢复数据
[root@server ~ 14:20:31]# lvcreate -s -n webapp01-snap1 -L 10G /dev/webapp/webapp01Logical volume "webapp01-snap1" created.# 卸载原始卷,挂载快照 [root@server ~ 14:45:16]# mkdir -p /webapp/webapp01[root@server ~ 14:45:24]# mount /dev/webapp/webapp01-snap1 /webapp/webapp01/ [root@server ~ 14:45:36]# umount /dev/webapp/webapp01[root@server ~ 14:46:38]# ls /webapp/webapp01/ host.conf hostname hosts hosts.allow hosts.deny lost+found[root@server ~ 14:46:48]# echo hello world > /webapp/webapp01/hello.txt [root@server ~ 14:48:17]# cat /webapp/webapp01/hello.txt hello world
创建raid1 逻辑卷
清理
[root@server ~ 14:55:07]# umount /dev/webapp/webapp01-snap1 [root@server ~ 14:56:30]# lvs /dev/webappLV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convertwebapp01 webapp owi-a-s--- 10.00g webapp01-snap1 webapp swi-a-s--- 10.00g webapp01 0.01 [root@server ~ 14:56:30]# lvremove /dev/webapp/webapp01*[root@server ~ 14:57:00]# lvs /dev/webapp
创建
[root@server ~ 14:57:02]# pvsPV VG Fmt Attr PSize PFree /dev/sda2 centos lvm2 a-- 52.00g 4.00m/dev/sdb lvm2 --- 20.00g 20.00g/dev/sdc webapp lvm2 a-- <20.00g <20.00g/dev/sdd webapp lvm2 a-- <20.00g <20.00g[root@server ~ 15:00:08]# lvcreate --type raid1 -n webapp01 -L 15G webapp WARNING: ext4 signature detected on /dev/webapp/webapp01_rmeta_0 at offset 1080. Wipe it? [y/n]: yWiping ext4 signature on /dev/webapp/webapp01_rmeta_0.Logical volume "webapp01" created.[root@server ~ 15:00:53]# pvsPV VG Fmt Attr PSize PFree /dev/sda2 centos lvm2 a-- 52.00g 4.00m/dev/sdb lvm2 --- 20.00g 20.00g/dev/sdc webapp lvm2 a-- <20.00g 4.99g/dev/sdd webapp lvm2 a-- <20.00g 4.99g[root@server ~ 15:01:34]# mkfs.xfs /dev/webapp/webapp01 [root@server ~ 15:01:58]# mount /dev/webapp/webapp01 /var/www/html/ [root@server ~ 15:02:12]# cp /etc/ho* /var/www/html/ [root@server ~ 15:02:17]# ls /var/www/html/ host.conf hostname hosts hosts.allow hosts.deny[root@server ~ 15:02:44]# wipefs -a /dev/sdd wipefs: error: /dev/sdd: probing initialization failed: 设备或资源忙[root@server ~ 15:04:06]# dd if=/dev/zero of=/dev/sdd bs=1M count=256 记录了256+0 的读入 记录了256+0 的写出 268435456字节(268 MB)已复制,0.0826577 秒,3.2 GB/秒[root@server ~ 15:04:46]# pvs ....../dev/sda2 centos lvm2 a-- 52.00g 4.00m/dev/sdb lvm2 --- 20.00g 20.00g/dev/sdc webapp lvm2 a-- <20.00g 4.99g[unknown] webapp lvm2 a-m <20.00g 4.99g [root@server ~ 15:05:13]# ls /var/www/html/ host.conf hostname hosts hosts.allow hosts.deny[root@server ~ 15:05:23]# umount /var/www/html [root@server ~ 15:06:15]# mount /dev/webapp/webapp01 /var/www/html/ [root@server ~ 15:06:21]# ls /var/www/html/ host.conf hostname hosts hosts.allow hosts.deny
修复raid
[root@server ~ 15:06:26]# vgreduce --removemissing webapp --force [root@server ~ 15:11:45]# vgextend webapp /dev/sdd [root@server ~ 15:12:13]# lvconvert --repair webapp/webapp01 [root@server ~ 15:12:51]# pvs|grep webapWARNING: Not using lvmetad because a repair command was run./dev/sdc webapp lvm2 a-- <20.00g 4.99g/dev/sdd webapp lvm2 a-- <20.00g 4.99g