目录
一、原理与理论
LVM(Logical Volume Manager)是Linux环境下对磁盘分区进行灵活管理的机制。核心概念包括:
- PV(Physical Volume):物理硬盘或分区
- VG(Volume Group):多个PV组成的存储池
- LV(Logical Volume):从VG划分的逻辑存储单元
优势:动态调整容量、支持多硬盘聚合、灵活分配空间
二、背景与目的
场景需求:通过SSH管理远程CentOS服务器时,需将3G、4G、5G三个虚拟硬盘整合使用。传统分区方式无法灵活利用分散空间,使用LVM可实现:
- 合并不同容量硬盘为统一存储池
- 按需创建/调整逻辑卷
- 实现不同文件系统的灵活挂载
三、操作步骤
-
环境准备
-
我们可以在VM中实验
-
首先我们需要一台虚拟机
- 然后在添加3块虚拟硬盘分别为4G、5G、6G
- 按照上述操作往复循环,最终如下图即可
-
- 接着我们打开虚拟机,查看硬盘是否存在
-
# 查看可用硬盘(确认识别到sdb/sdc/sdd) lsblk
-
- 推荐使用ssh软件进行查看,进行下面的操作更加方便
-
#查看IP地址 ip addr
- 使用SCRT进行连接
- 运行命令
-
-
-
创建物理卷(PV)
-
sudo pvcreate /dev/sdb /dev/sdc /dev/sdd sudo pvs # 验证创建结果
-
-
创建卷组(VG)
-
sudo vgcreate VG-1 /dev/sdb /dev/sdc /dev/sdd sudo vgs # 查看VG容量应为12G
-
-
创建逻辑卷(LV)
-
# 创建7G的lv-1 sudo lvcreate -L 7G -n lv-1 VG-1 # 使用剩余空间创建lv-2 sudo lvcreate -l 100%FREE -n lv-2 VG-1
-
-
创建文件系统
-
# 创建XFS文件系统 sudo mkfs.xfs /dev/VG-1/lv-1 # 创建EXT4文件系统 sudo mkfs.ext4 /dev/VG-1/lv-2
-
-
挂载逻辑卷
-
# 创建挂载点 sudo mkdir -p /mnt/lv-{1,2} # 临时挂载 sudo mount /dev/VG-1/lv-1 /mnt/lv-1 sudo mount /dev/VG-1/lv-2 /mnt/lv-2 # 永久挂载(修改/etc/fstab) echo "/dev/VG-1/lv-1 /mnt/lv-1 xfs defaults 0 0" | sudo tee -a /etc/fstab echo "/dev/VG-1/lv-2 /mnt/lv-2 ext4 defaults 0 0" | sudo tee -a /etc/fstab
-
四、常见问题与解决方案
-
硬盘未识别
-
现象:"
lsblk
" 未显示新硬盘 -
解决:
-
echo "- - -" | sudo tee /sys/class/scsi_host/host*/scan # 重新扫描SCSI总线 partprobe # 重载分区表
-
-
权限不足
-
现象:"
Permission denied
" -
解决:所有LVM操作前加 "
sudo
"
-
-
挂载失败
-
现象:"
mount: unknown filesystem type
" -
解决:检查 "
mkfs
" 命令是否正确执行
-
-
空间计算错误
-
现象:"
Insufficient free space
" -
技巧:使用 "
vgdisplay
" 查看确切可用空间
-
五、总结与心得
-
LVM优势验证
-
成功将分散的12G空间按需分配,相比传统分区更灵活
-
-
文件系统选择
-
XFS适合大文件,EXT4兼容性更好,根据场景选择
-
-
注意事项
-
操作前做好数据备份
-
VG/LV命名要有可读性
-
生产环境建议保留部分空间
-