温馨提示×

Linux分卷如何管理空间

小樊
41
2025-12-19 23:41:06
栏目: 云计算

Linux 分卷空间管理指南

一、核心概念与适用场景

  • 使用 LVM(Logical Volume Manager) 将多块磁盘/分区抽象为一个可灵活分配的存储池,核心抽象为:PV(物理卷)VG(卷组)LV(逻辑卷)
  • PV 可以是整块磁盘或分区;多个 PV 组成 VG,在 VG 上按需创建 LV;LV 之上再创建文件系统(如 ext4xfs)。
  • PE/LE 是最小分配单位,默认 PE=4MiB,同一 VGLE 与 PE 大小一致并一一映射
  • 优势:容量可在线扩容、无需连续空间、支持快照/迁移等,适合服务器与需要弹性的场景。
  • 风险:配置与管理复杂度更高;若未结合冗余(如 RAID),单盘故障可能影响整个 VG

二、常用空间管理操作

  • 查看与评估
    • 查看空间与挂载:df -h
    • 查看卷组/逻辑卷:vgdisplaylvdisplay
    • 扫描可用设备:lvmdiskscan
  • 扩容(最常见)
    1. 加新盘并初始化:pvcreate /dev/sdX
    2. 扩充卷组:vgextend /dev/sdX
    3. 扩充逻辑卷:
      • 指定容量:lvextend -L +20G /dev//
      • 用尽剩余空间:lvextend -l +100%FREE /dev//
    4. 扩展文件系统:
      • ext2/3/4resize2fs /dev//
      • xfsxfs_growfs /mount/point(以挂载点为准)
  • 缩容(风险高,务必先备份)
    1. 先检查并缩小文件系统到目标大小(离线/只读更稳妥)
    2. 缩小逻辑卷:lvreduce -L -10G /dev//
    3. 视需要回收空间或做数据迁移
  • 在线调整与迁移
    • 多数 LV/VG 操作支持在线进行;可在运行中完成扩容。
    • 支持在线数据迁移(如更换磁盘)以降低停机时间。
  • 快照与回滚
    • 创建快照:lvcreate -s -L 5G -n /dev//(用于备份/测试)
    • 快照用毕及时移除:lvremove /dev//

三、典型场景与命令清单

  • 新盘并入并扩容到根分区(ext4 示例)
    1. 分区并设类型(MBR 类型 8e;GPT 类型 8e00
    2. pvcreate /dev/sdb1
    3. vgextend /dev/sdb1
    4. lvextend -l +100%FREE /dev//root
    5. resize2fs /dev//root
  • 新建 LV 并挂载为 /home
    1. lvcreate -L 100G -n home
    2. mkfs.ext4 /dev//home
    3. 挂载:mount /dev//home /home
    4. 开机自动挂载(推荐用 UUID):
      • 获取 UUID:blkid /dev//home
      • 写入 /etc/fstabUUID= /home ext4 defaults 0 2
  • 迁移目录到新 LV(以 /home 为例)
    1. 按上节创建并挂载新 LV 到临时目录(如 /mnt/home
    2. 同步数据:rsync -aAX --info=progress2 /home/ /mnt/home/
    3. 核对无误后切换:
      • 备份原目录:mv /home /home.bak
      • 挂载新 LV:mount /dev//home /home
      • 验证后删除备份
    4. 更新 /etc/fstab 使用 UUID 固定挂载。

四、风险与最佳实践

  • 操作前务必完整备份;缩容前先缩小文件系统,避免数据损坏。
  • 生产环境优先使用 LVM + 冗余(如 RAID1/RAID10),避免单盘故障波及整个 VG
  • 使用 UUID 配置 /etc/fstab,避免设备名变化导致挂载异常。
  • 对关键业务,建议在维护窗口LiveCD/救援环境执行复杂变更;变更后及时 df/lsblk/vgdisplay/lvdisplay 校验。
  • 快照仅作短期备份/测试,使用完及时删除,避免占用 VG 空间。

0