当前位置: 首页 > news >正文

Ubuntu 22.04 LVM 扩容实战:3步将2块新硬盘合并挂载到 /data 目录

Ubuntu 22.04 LVM 扩容实战:3步将2块新硬盘合并挂载到 /data 目录

最近在部署机器学习训练环境时,遇到了一个典型问题:随着数据集不断增长,原有的存储空间很快被占满。传统方案需要频繁迁移数据到新硬盘,既麻烦又容易造成目录结构混乱。经过实践验证,LVM(逻辑卷管理)技术能完美解决多盘合并管理的痛点——它允许将多块物理硬盘整合为单一逻辑存储池,实现容量的动态扩展和统一管理。

本文将手把手演示如何在Ubuntu 22.04系统上,通过LVM将两块新硬盘无缝合并为一个逻辑卷,并挂载到/data目录。整个过程仅需三个核心步骤,无需停机且保证数据安全。下面我们直接从实战操作开始:

1. 环境准备与硬盘识别

首先确认系统已安装LVM工具包(Ubuntu Server版默认已安装):

sudo apt update && sudo apt install -y lvm2

插入两块新硬盘后(假设为/dev/sdb和/dev/sdc),使用以下命令识别设备:

lsblk -o NAME,SIZE,FSTYPE,MOUNTPOINT

理想输出应显示新增的未格式化设备(无FSTYPE标识):

NAME SIZE FSTYPE MOUNTPOINT sdb 465.8G sdc 465.8G

关键检查点:务必确认目标设备没有重要数据!以下操作将清空磁盘所有内容。

2. 创建LVM逻辑卷

2.1 初始化物理卷(PV)

将两块硬盘初始化为LVM可管理的物理卷:

sudo pvcreate /dev/sdb /dev/sdc

验证创建结果:

sudo pvdisplay

输出应显示两个新PV的详细信息,包括分配的PE(物理块)数量。

2.2 构建卷组(VG)

创建一个名为data-vg的卷组,包含两块硬盘:

sudo vgcreate>sudo vgdisplay>sudo lvcreate -l 100%FREE -n>sudo mkfs.ext4 /dev/data-vg/data-lv

3. 挂载与自动化配置

3.1 创建挂载点并临时挂载

sudo mkdir /data sudo mount /dev/data-vg/data-lv /data

验证挂载结果:

df -h /data

输出应显示正确的容量和挂载点信息。

3.2 配置永久挂载

获取逻辑卷的UUID(避免设备名变化导致挂载失败):

sudo blkid /dev/data-vg/data-lv

编辑/etc/fstab文件,添加以下行(替换实际UUID):

UUID=你的逻辑卷UUID /data ext4 defaults 0 2

测试配置是否正确:

sudo umount /data sudo mount -a

高级技巧与故障排查

容量监控命令速查

命令作用示例输出关键字段
vgs查看卷组空间概况VFree: 剩余空间
lvs查看逻辑卷状态LSize: 逻辑卷大小
pvs查看物理卷状态PFree: 物理卷剩余空间

常见问题解决方案

  1. 挂载失败:检查dmesg日志,常见原因是:

    • 文件系统损坏:sudo fsck /dev/data-vg/data-lv
    • UUID不匹配:重新执行blkid获取最新UUID
  2. 后续扩容:当需要添加第三块硬盘时:

    sudo pvcreate /dev/sdd sudo vgextend>sudo lvcreate -i 2 -I 256 -l 100%FREE -n>sudo lvcreate -s -n>sudo vgchange -r n>
http://www.jsqmd.com/news/1134610/

相关文章:

  • 统信UOS V20 桌面版 tty9 超管模式实战:3步进入与5个关键修复场景
  • 黑群晖 DSM 7.2 旧电脑部署:3步完成引导盘制作与局域网访问
  • 雷蛇鼠标板载内存配置:1次Windows设置,实现Mac 5键自定义(附XML文件)
  • Linux passwd 命令 10 个实战参数详解:从锁定账户到设置密码有效期
  • Linux 后台任务管理:nohup、jobs、ps 与 kill 命令的 4 步协同实战
  • MacBook Pro M3 系列外接 4K 显示器 5 个关键设置:从 HiDPI 到色彩匹配
  • Windows API SetWindowsHookEx 实战:C++ 实现全局键盘监听与3种消息过滤
  • Linux echo 命令 5 个高级转义符实战: 退格、 回车的 3 种脚本应用
  • fdisk 分区实战:1块20GB磁盘创建3主1扩2逻辑分区完整流程
  • Jboss安全配置实战:从弱口令防护到网站根目录加固
  • Windows 10 家庭版 Administrator 账户救急:PE 环境下 3 步解锁与密码重置
  • Linux /proc/<pid>/fd 实战:3种方法实时捕获进程标准输出与错误流
  • glibc 2.31 源码升级风险规避:3个关键备份与回滚策略(附CentOS 7实测)
  • Windows 10 22H2 外置SSD原生安装:diskpart + DISM 命令7步部署,跨电脑启动实测
  • STM32驱动WS2812B灯带:SPI+DMA实现高效灯光控制
  • Windows 11/10 系统配置工具 msconfig 的5个高级调试功能实战
  • Linux 日志分析实战:grep 组合 awk/sed 实现 5 类复杂多关键字过滤
  • CentOS 7.6 Swap 分区动态调整:从 1.2G 扩容至 2.2G 的 8 步操作实录
  • YOLO目标检测演进史:从v1到v13,如何解决速度、精度与部署难题
  • 属性 sdn的策略自动生成方案
  • LTC6903数字控制振荡器与STM32集成指南
  • Deepin Boot Maker:5分钟制作Linux启动盘的开源神器
  • Spring Boot集成Google Authenticator实现TOTP两步验证实战
  • r77-rootkit Shellcode无文件部署:反射式DLL注入与内存驻留技术详解
  • JDK系列15:JDK21虚拟线程正式版深度实战|彻底解决Java高并发IO瓶颈
  • statsmodels 0.14.0 seasonal_decompose 实战:加法与乘法分解的3步核心差异
  • Linux chmod 755 与 644 权限实战:Web服务器部署的3个关键场景配置
  • Wand-Enhancer完整指南:快速免费解锁WeMod专业版功能的终极解决方案
  • 为什么文件明明是 UTF-8,PowerShell 里还是中文乱码?一篇讲透 Codex、Claude 等 AI 编码工具下的排查与修复
  • Windows 10/11 硬盘分区变 RAW:3 步数据抢救与 chkdsk /f 修复实战