Linux-逻辑卷轴

571 阅读2分钟

1.逻辑卷轴:

  • LVM 将几个实体的分区通过软件合称为一个看起来是独立的大磁盘(VG), 然后将这块大磁盘在经过分区称为可使用分区(LV), 最终就能够挂载使用了. LVM 的重点在与可以弹性的调整文件系统的容量.
    • PV(Physical Volume): 实体卷轴. 实际的分区需要调整系统识别码为 8e, 然后再经过pvcreate命令转化成实体卷轴(PV).
    • VG(Volume Group): 卷轴群组, 即由多个 PV 组成.
    • PE(Physical Extent): 实体范围区块. 是整个 LVM 最小的存储区块, 文件数据都是借由写入 PE 来处理的.
    • LV(Logical Volume): 逻辑卷轴. LV 是最后可以被格式化使用的, 和分区比较类似.
    • 写入机制:
      • 线性模式(linear): 当某一个分区容量使用完毕后, 再使用另外一个分区的容量.
      • 交错模式(triped): 将数据拆分, 分别写入多个分区.
  1. 操作流程:
  • PV 阶段:
    • 相关命令:
      • pvcreate: 将实体分区创建成为 PV.
      • pvscan: 搜寻目前系统里面任何具有 PV 的磁盘.
      • pvdisplay: 显示出目前系统上面的 PV 状态.
      • pvremove: 将 PV 属性移除, 让该分区不再具有 PV 属性.
    • 操作:
      • 查看 PV: pvscan
        20191227102429.png
      • pvcreate /dev/sdb{1, 2, 3}
      • 查看 PV: pvscan
        20191227102545.png
  • VG 阶段:
    • 相关命令:
      • vgcreate: 创建 VG
      • vgscan: 搜寻 VG
      • vgdisplay: 显示 VG 状态
      • vgextend: 在 VG 内增加额外的 PV
      • vgreduce: 在 VG 内移除 PV
      • vgchange: 设置 VG 是否启动
      • vgremove: 删除一个 VG
    • 操作:
      • 创建 VG: vgcreate -s 16M studyvg /de/sdb{1, 2}
        -s: 指定 PE 大小为 16M
      • 查看 VG: vgdisplay studyvg
        20191227103518.png
      • 扩展 VG: vgextend studyvg /dev/sdb3
  • LV 阶段:
    • 相关命令:
      • lvcreate: 创建 LV
      • lvscan: 查询 LV
      • lvdisplay: 显示系统 LV 状态
      • lvextend: 在 LV 里增加容量
      • lvreduce: 在 LV 里减少容量
      • lvremove: 删除一个 LV
      • lvresize: 对 LV 进行容量大小调整
    • 操作:
      • 创建 LV:lvcreate -L 2G -n studylv1 studyvg
        -L 指定容量, -n 指定名称
      • 查看 LV: lvdisplay /dev/studyvg/studylv1
        20191227104239.png
      • 格式化 LV:mkfs.xfs /dev/studyvg/studylv1
      • 放大 LV 容量: lvresize -L +500M /dev/studyvg/studylv1
      • 处理文件系统: xfs_groufs /dev/studyvg/studylv1
      • 查看文件系统: 可以看到整个 block group(agrount) 的数量增加一个; 整体的 block 数量也增加了.
        Snipaste_2019-12-27_10-52-30.png
  • LVM 快照:
    • 创建快照 LV: lvcreate -s -L 512M -n studysnap1 /dev/studyvg/studylv1
    • 挂载快照: mount -o nouuid /dev/studyvg/studysnap1 /home/snap1
    • 创建快照备份: xfsdump -l 0 -L lvm1 -M lvm1 -f /home/lvm.dump /dev/studyvg/studysnap1
    • 卸载分区并重新格式化:
      umount /home/studysnap1 umount /home/studylv1 mkfs.xfs -f /dev/studyvg/studylv1
    • 恢复文件: xfsrestore -f /home/lvm.dump -L lvm1 /dev/studyvg/studylv1
  1. 参考:
    [1] : 鸟哥的Linux私房菜