创建分区

2T 以下

  1. 首先查看磁盘
    fdisk -l

image-20210814224758480.png

  1. 进入磁盘 ```shell
  2. fdisk /dev/sdb

  3. n 创建新磁盘

  4. p 创建主分区 创建分区ID 1-4为主分区 根据提示选择磁盘开始位置(默认空格就好) 选择结束位置(新增磁盘大小)

  5. t 修改分区类型

  6. 8e lvm分区

  7. w 保存退出 ```

2T 以上

  1. 2T以上使用以下命令进行分区,此时已经不能使用 **fdisk** 进行分区,需要使用 **parted**
  1. parted /dev/sdb
  1. 设置磁盘类型
  1. mklabel gpt
  1. 创建分区
  1. mkpart primary xfs 0 -1
  1. 设置分区名字
  1. name 1 diskname(分区名字)
  1. 设置分区标志n
  1. set 1 lvm on
  1. 使用p命令进行查看磁盘信息
  1. p
  1. 检查分区类型是否满足类型的约束
  1. align-check gpt
  2. type 必须是 "minimal" or "optimal".(完整检查和最小化检查)

image-20210814225906737.png

  1. quit或q退出parted
  2. 命令行执行
  1. parted -s /dev/sdb "mklabel gpt"
  2. parted -s /dev/sdb "mkpart primary xfs 0 -1"
  3. parted -s /dev/sdb "name 1 sdb1"
  4. parted -s /dev/sdb "set 1 lvm on"
  5. partprobe

创建LVM

创建pv

  1. pvcreate /dev/sdb1
  2. #查看PV
  3. pvs

创建vg

  1. vgcreate vgname(名称) /dev/sdb1
  2. #查看vg
  3. vgs(查看vg)

image-20210814230538796.png

创建lv

  1. lvcreate -n lvname(lv名字) -l 100%VGlv磁盘大小) vgnamevg名字)
  2. #查看lv
  3. lvs(查看lv)

image-20210814230623382.png

格式化lvm

  1. mkfs.xfs /dev/vgname/lvname

挂在磁盘

  1. mount /dev/vgname/lvname /挂在磁盘目录

写入fatab

  1. vim /etc/fstab
  2. /dev/vgname/lvname /挂在目录 xfs(磁盘格式) defaults 0 0
  3. #查看UUID
  4. blkid /dev/sdb
  5. [root@core-prd-stor-9 data]# blkid /dev/sdb
  6. /dev/sdb: UUID="a2fb832d-6665-4218-b3e9-d3eec9876a3b" TYPE="xfs"

image-20210814230804911.png

命令

  1. # 创建分区
  2. parted -s /dev/sdb mklabel gpt
  3. parted -s /dev/sdb mkpart primary xfs 2048s 100%
  4. parted -s /dev/sdb name 1 sdb1
  5. parted -s /dev/sdb set 1 lvm on
  6. partprobe
  7. parted /dev/sdb print
  8. # 创建PV
  9. pvcreate /dev/sdb1
  10. pvdisplay
  11. #创建 VG
  12. vgcreate vg1 /dev/sdb1
  13. vgdisplay
  14. #创建 LV
  15. lvcreate -n lv1(lv名称) -l 100%VG(lv大小) vg1(vg名字)
  16. lvdisplay
  17. #格式化lv
  18. mkfs.xfs /dev/vg1/lv1
  19. # 挂载目录
  20. mount /dev/vg1/lv1 /lv-dir/
  21. # 写入fstab
  22. vim /etc/fstab
  23. /dev/vg1/lv1 /lv-dir(挂载目录) xfs(磁盘格式) defaults 0 0
  24. /dev/vg1/lv1 /lvdir xfs defaults 0 0
  25. UUID="27d51f6c-55c7-4a1e-8fde-ed4977ae11f7" /lvdir xfs defaults 0 0
  26. 注:uuid查看 blkid /dev/vg1/lv1

扩容现有的lvm卷

思路

创建新的PV —-> 将新的PV加入到当前VG —-> 扩容现有LV ——> 扩容文件系统

  1. parted -s /dev/sda "mklabel gpt"
  2. parted -s /dev/sda "mkpart primary xfs 0 -1"
  3. parted -s /dev/sda "name 1 sda1"
  4. parted -s /dev/sda "set 1 lvm on"
  5. partprobe

image-20210814231003713.png

创建新的pv
  1. pvcreate /dev/sda1

image-20210814231040953.png

将新的PV加入到当前VG
  1. vgextend data(现有的vgname /dev/sdb1PV绝对路径)

image-20210814231109454.png

查看当前vg信息
  1. vgs
  2. vgdisplay

image-20210814231139909.pngimage-20210814231152907.png

扩容现有的lv
#1.查看lv信息
lvdisplay

#2.
lvextend -L +3.49T(需要扩多大空间) /dev/data/data(现有lv绝对路径)
lvextend -l +915899 /dev/data/data(现有lv绝对路径)

image-20210814231212067.pngimage-20210814231218133.pngimage-20210814231350780.png

扩容文件系统
#扩容xfs格式
xfs_growfs /dev/vg1/lv1

#扩容ext格式
resize2fs /dev/vg1/lv1

命令

# 创建新分区
parted -s /dev/sdc mklabel gpt
parted -s /dev/sdc mkpart primary xfs 2048s 100%
parted -s /dev/sdc name 1 sdc1
parted -s /dev/sdc set 1 lvm on
partprobe
parted /dev/sdb print

# 创建新的PV
pvcreate /dev/sdc1
pvdisplay

# 将新的PV加入当前VG
vgextend vg1(现有的vgname) /dev/sdb1(PV绝对路径)
vgdisplay
vgs

# 扩容现有lv
lvextend -l +100%FREE(需要扩多大空间) /dev/vg1/lv1(lvm根路径)
lvextend -l +1279(需要扩多大空间) /dev/vg1/lv1(lvm根路径)
lvextend -L +5G(需要扩多大空间) /dev/vg1/lv1(lvm根路径)
lvdisplay

# 扩容文件系统
# xfs
xfs_growfs /dev/vg1/lv1
# ext
resize2fs /dev/vg1/lv1

LVM的缩减操作

# 1:
umount 文件系统

# 2:缩减文件系统

[root@localhost ~]# lvs

[root@localhost ~]# resize2fs /dev/vg1/lv1 3.49T               (ext格式)           
xfs_growfs /dev/vg1/lv1  (xfs格式)          

[root@localhost ~]# lvreduce -L -3.49T /dev/vg1/lv1

[root@localhost ~]# lvs

[root@localhost ~]# ls #检查文件是否丢失

#挂载查看
[root@localhost ~]# mount /dev/vgqjc/lvqjc /mnt
[root@localhost ~]# df -Th

删除LVM

如果要彻底的来移除LVM的话,需要把创建的步骤反过来操作。

#1:卸载 文件系统
umount

#2:删除lv
[root@localhost ~]# lvremove /dev/mapper/vg1-lv1

#3:删除vg
[root@localhost ~]# vgremove /dev/mapper/vg1

#4:删除pv
[root@localhost ~]# pvremove /dev/sdb1

image-20210814232927799.png