LVM逻辑卷管理

1.lvm基本操作

1 fdisk -l   # 查看信息
2 lvdisplay   # 逻辑卷的相关属性
3 df -Th | grep "^/dev"  # 查看磁盘文件系统
4 fdisk  -l |grep sd   # 查看分区情况
5 pvs    # 显示所有的物理卷
6 vgs       # 显示所有卷组信息
7 vgdisplay    #  查看所有卷组的详细信息
8 lvs # 显示逻辑卷的信息(大小为1G,上面分配的)
9 lvdisplay #显示逻辑卷的详细信息

2.VG卷组扩容(这步完成看不到磁盘空间大了,要完成下一步lv逻辑卷才能看到磁盘空间大了)

1 新建一个PV物理卷,然后加入VG即可(fdisk创建分区->修改分区类型Linux LVM->向内核注册新分区->创建物理卷->把物理卷加入需要扩容的卷组)。
2 fdisk /dev/sda  # 把新添加的磁盘进行分区
    a   toggle a bootable flag    # 切换可启动标志
    b   edit bsd disklabel   # 编辑bsd磁碟标签
    c   toggle the dos compatibility flag   # 切换dos兼容性标志
    d   delete a partition   # 删除一个分区
    g   create a new empty GPT partition table  # 创建一个新的空GPT分区表
    G   create an IRIX (SGI) partition table  # 创建一个IRIX (SGI)分区表
    l   list known partition types  # 列出已知的分区类型
    m   print this menu   # 打印这个菜单
    n   add a new partition  # 添加新分区
    o   create a new empty DOS partition table  # 创建一个新的空DOS分区表
    p   print the partition table  # 打印分区表
    q   quit without saving changes  # 不保存更改就退出
    s   create a new empty Sun disklabel # 创建一个新的空太阳磁盘标签
    t   change a partition's system id # 更改分区的系统id
    u   change display/entry units # 改变显示/输入单元
    v   verify the partition table  # 验证分区表
    w   write table to disk and exit  # 将表写入磁盘并退出
    x   extra functionality (experts only)  # 额外功能(仅限专家使用)

3 fdisk /dev/sdb # 把新添加的磁盘进行分区
创建分区操作 n(新建分一个分区)-->p(创建主分区)-->默认(分区名称)-->分区大小-->t修改分区类型-->1分区选择-->8e分区类型-->p打印分区信息-->w保存退出分区
4 partprobe /dev/sdb  #  更新内核分区表
5 pvcreate /dev/sdb1 #  创建物理卷PV
6 pvs    # 显示所有的物理卷
7 vgextend centos /dev/sdb1 #扩展VG卷组容量,把物理卷加入卷组   centos:VG卷组  /dev/sdb1:物理卷
8 vgs   # 显示所有卷组信息

3.LV逻辑卷扩容 (支持在线扩展,完成能看到磁盘空间大了)

1 lvdisplay  # 查看逻辑卷信息
2 pvs   # 显示所有的物理卷
3 cat /etc/fstab | grep root   # 查看文件系统
4 lvextend -L +2G /dev/centos/root  # 扩容逻辑卷LVtest1,增加2G空间容量(从对应的卷组中划分空间容量)
5 xfs_growfs /dev/centos/root  # 使用xfs_growfs命令来进行确认增加容量,前面的步骤只是初步分配,还不能实际使用,需要此步骤来确定实际分配使用
5.1 resize2fs /dev/centos/root   # 上面成功 这一步步执行 使用resize2fs命令来进行确认增加容量,前面的步骤只是初步分配,还不能实际使用,需要此步骤来确定实际分配使用
6 df -h|grep centos   # 查看挂载目录的空间容量大小

4.挂载LV逻辑卷

1 fdisk /dev/sda  # 把新添加的磁盘进行分区

a   toggle a bootable flag    # 切换可启动标志
b   edit bsd disklabel   # 编辑bsd磁碟标签
c   toggle the dos compatibility flag   # 切换dos兼容性标志
d   delete a partition   # 删除一个分区
g   create a new empty GPT partition table  # 创建一个新的空GPT分区表
G   create an IRIX (SGI) partition table  # 创建一个IRIX (SGI)分区表
l   list known partition types  # 列出已知的分区类型
m   print this menu   # 打印这个菜单
n   add a new partition  # 添加新分区
o   create a new empty DOS partition table  # 创建一个新的空DOS分区表
p   print the partition table  # 打印分区表
q   quit without saving changes  # 不保存更改就退出
s   create a new empty Sun disklabel # 创建一个新的空太阳磁盘标签
t   change a partition's system id # 更改分区的系统id
u   change display/entry units # 改变显示/输入单元
v   verify the partition table  # 验证分区表
w   write table to disk and exit  # 将表写入磁盘并退出
x   extra functionality (experts only)  # 额外功能(仅限专家使用)
创建分区操作 n(新建分一个分区)-->p(创建主分区)-->默认(分区名称)-->分区大小-->t修改分区类型-->1分区选择-->8e分区类型-->p打印分区信息-->w保存退出分区
2 partprobe /dev/sdb #更新内核分区表
3 fdisk  -l |grep sd   # 查看分区情况
4 pvcreate /dev/sdb1  # 创建PV物理卷  /dev/sdb1分区
5 pvs    # 显示所有的物理卷
6 vgcreate VGtest1 /dev/sdb1   # 创建卷组  VGtest1:卷组名称   /dev/sdb1:前面创建的pv物理卷   # 我们是卷主扩容 这一步不需要操作
7 vgs       # 显示所有卷组信息
8 vgdisplay    #  查看所有卷组的详细信息
9 lvcreate -n LVtest1 -L 1G VGtest1 # 创建逻辑卷  -n表示创建逻辑卷名,-L表示分配逻辑卷的空间大小,VGtest1表示在卷组VGtest1上创建逻辑卷LVtest1 # 我们是卷主扩容 这一步不需要操作
10 lvs # 显示逻辑卷的信息(大小为1G,上面分配的)
11 lvdisplay #显示逻辑卷的详细信息
12 mke2fs -t ext4 /dev/VGtest1/LVtest1 # 物理卷需要格式化之后才能使用,格式化为ext4格式
13 mount /dev/VGtest1/LVtest1 /appdata #把LV逻辑卷挂载到实际的目录  /dev/VGtest1/LVtest1:物理卷   /appdata:实际的目录
14 vim /etc/fstab 打开这个文件夹      /dev/VGtest1/LVtest1 /appdata                   ext4    defaults        0 0 最后 一行添加这个数据   #  永久挂载LV逻辑卷

5.参考文献

https://blog.51cto.com/13691477/2299707