LVM综合实验

实验目标

  • 创建并管理一个 LVM 卷组 (VG)。
  • 在卷组中创建、扩展和缩小逻辑卷 (LV)。
  • 创建和使用快照。

实验环境

  • Linux 服务器
  • 三个可用的磁盘分区: /dev/sdb1, /dev/sdb2, 和 /dev/sdb3

实验步骤

步骤 1: 安装 LVM 工具

确保 LVM 工具已安装。如果没有,请安装它:


   
   
yum install lvm2 -y
步骤 2: 创建物理卷 (PV)

使用 /dev/sdb1, /dev/sdb2, 和 /dev/sdb3 创建物理卷。


   
   
pvcreate /dev/sdb1
pvcreate /dev/sdb2
pvcreate /dev/sdb3
步骤 3: 查看物理卷信息

   
   
pvs
pvdisplay
步骤 4: 创建卷组 (VG)

使用所有三个物理卷创建卷组 myvg


   
   
vgcreate myvg /dev/sdb1 /dev/sdb2 /dev/sdb3

image.png

步骤 5: 查看卷组信息

   
   
vgs
vgdisplay
步骤 6:卷组的扩容与缩减

   
   
[root@localhost ~]# vgs
VG #PV #LV #SN Attr VSize VFree
myvg 3 0 0 wz--n- <14.99g <14.99g
rhel 1 2 0 wz--n- <19.00g 0
[root@localhost ~]# pvcreate /dev/sdb{5,6}
Physical volume "/dev/sdb5" successfully created.
Physical volume "/dev/sdb6" successfully created.
[root@localhost ~]# vgextend myvg /dev/sdb{5,6}
Volume group "myvg" successfully extended
[root@localhost ~]# vgs
VG #PV #LV #SN Attr VSize VFree
myvg 5 0 0 wz--n- 18.98g 18.98g
rhel 1 2 0 wz--n- <19.00g 0
[root@localhost ~]# vgreduce myvg /dev/sdb6
Removed "/dev/sdb6" from volume group "myvg"
[root@localhost ~]# vgs
VG #PV #LV #SN Attr VSize VFree
myvg 4 0 0 wz--n- 16.98g 16.98g
rhel 1 2 0 wz--n- <19.00g 0
[root@localhost ~]#
步骤 7: 创建逻辑卷 (LV)

创建两个逻辑卷:mylv1mylv2


   
   
[root@localhost ~]# lvcreate -l 10 -n mylv1 myvg
Logical volume "mylv1" created.
[root@localhost ~]# lvcreate -L 100M -n mylv2 myvg
Logical volume "mylv2" created.
image.png步骤 8: 查看逻辑卷信息

   
   
lvs
lvdisplay
步骤 9: 格式化逻辑卷

格式化新创建的逻辑卷为 ext4 文件系统。


   
   
mkfs.ext4 /dev/myvg/mylv1
mkfs.ext4 /dev/myvg/mylv2
步骤 10: 挂载逻辑卷

创建挂载点并挂载逻辑卷。


   
   
[root@localhost ~]# mkdir -p /mydir/mylv1
[root@localhost ~]# mkdir -p /mydir/mylv2
[root@localhost ~]# mount /dev/myvg/mylv1 /mydir/mylv1
[root@localhost ~]# mount /dev/myvg/mylv2 /mydir/mylv2
步骤 11: 验证挂载情况

   
   
[root@localhost ~]# df -Th
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/mapper/rhel-root xfs 17G 3.8G 14G 22% /
devtmpfs devtmpfs 897M 0 897M 0% /dev
tmpfs tmpfs 912M 0 912M 0% /dev/shm
tmpfs tmpfs 912M 9.0M 903M 1% /run
tmpfs tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 179M 836M 18% /boot
tmpfs tmpfs 183M 20K 183M 1% /run/user/0
/dev/mapper/myvg-mylv1 ext4 35M 782K 32M 3% /mydir/mylv1
/dev/mapper/myvg-mylv2 ext4 93M 1.6M 85M 2% /mydir/mylv2
步骤 12: 扩展逻辑卷 (LV)

扩展 mylv1 的大小。


   
   
[root@localhost ~]# lvextend -L +60M /dev/myvg/mylv1
[root@localhost ~]# resize2fs /dev/myvg/mylv1

image.png

步骤 13: 缩减逻辑卷 (LV)

先卸载逻辑卷,然后检查并调整文件系统大小,最后调整逻辑卷大小。


   
   
[root@localhost ~]# umount /mydir/mylv1
[root@localhost ~]# e2fsck -f /dev/myvg/mylv1
[root@localhost ~]# resize2fs /dev/myvg/mylv1 50M
[root@localhost ~]# lvreduce -L -50M /dev/myvg/mylv1
[root@localhost ~]# mount /dev/myvg/mylv1 /mydir/mylv1
[root@localhost ~]# lvs

image.png

步骤 14: 创建快照

创建 mylv2 的快照 mysnop


   
   
[root@localhost ~]# echo "test data" > /mydir/mylv2/newfile
[root@localhost ~]# lvcreate -L 20M -s -n mysnop /dev/myvg/mylv2
[root@localhost ~]# lvs

image.png

步骤 15: 使用快照恢复数据

假设在 mylv2 中写入了一些数据,现在需要恢复到快照时的状态。


   
   
[root@localhost ~]# ls /mydir/mylv2/
[root@localhost ~]# rm -rf /mydir/mylv2/newfile
[root@localhost ~]# umount /mydir/mylv2
[root@localhost ~]# lvconvert --merge /dev/myvg/mysnop
[root@localhost ~]# mount /dev/myvg/mylv2 /mydir/mylv2
[root@localhost ~]# ls /mydir/mylv2/
[root@localhost ~]# lvs

image.png

步骤 16: 逻辑卷卷组删除

当实验完成后,清理创建的所有资源。


   
   
umount /mydir/mylv1
umount /mydir/mylv2
lvremove /dev/myvg/mylv1
lvremove /dev/myvg/mylv2
vgremove myvg
pvremove /dev/sdb1 /dev/sdb2 /dev/sdb3 /dev/sdb5

注意事项

  • 在进行任何涉及数据的操作之前,请确保备份重要数据。
  • 在进行逻辑卷的扩展或缩小操作时,务必先卸载逻辑卷。
  • 在缩小逻辑卷之前,确保先执行文件系统的检查 (e2fsck) 并调整文件系统大小 (resize2fs)。

完成上述步骤后,您应该能够掌握 LVM 的基本管理和操作技巧。请确保在实验过程中记录下重要的输出结果和观察到的现象,以便于后续分析和学习。

原创作者: yuanqing09 转载于: https://www.cnblogs.com/yuanqing09/p/18331868
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值