一.lvm磁盘分区:
1,查看新增的磁盘,需要使用root权限
fdisk -l
看到有一个新增的100G磁盘
2,对磁盘进行分区
fdisk /dev/xvdb
1,输入:n
表示创建一个新的分区(new的意思)
2,输入:p
表示创建一个基本分区(p是基本分区,e是扩展分区)
3,选择分区编号,1~4,默认使用1,直接按回车即可。
4,选择分区起始点,使用默认即可,直接按回车。
5,选择分区终点,使用默认即可,直接按回车。
6,分区完成。
3,更改分区编号
我们需要将分区类型改成linux lvm卷才能创建lvm。
输入:t
输入t表示更改分区编号
输入:L
大写的L表示查看所有编号
这里我们选择8e
输入:8e
回车即可
4,保存退出
输入:w
表示写入磁盘(write)
在进行下一步之前,我们说明一下pv、vg、lv的关系。
一个硬盘f分区组成一个pv(物理卷)
一个或者多个pv组成一个vg(卷组)
一个vg可以划分出多个lv(逻辑卷)
5,创建pv
输入:pvcreate /dev/xvdb1
此时的磁盘分区是xvdb1,而不是xvdb了。
6,创建vg
输入:vgcreate vg_group /dev/xvdb1
此处的vg_group是vg组的名字,可以自定义。
查看创建的vg
输入:vgdisplay
可以看到已经成功创建
7,创建lv
输入:lvcreate -L 60G -n vg_usr vg_group
-L后面是要分给lv的大小
-n新建一个名字为vg_usr的lv
使用的vg是vg_group
8,格式化lv
查看系统的文件类型
输入:df -Th
文件类型是ext4
格式化lv
输入:mkfs.ext4 /dev/vg_group/vg_usr
mkfs后面是文件类型。
9,编辑/etc/fstab文件,创建磁盘开机自动挂载
vim /etc/fstab
在文件最后加入一行
第一列:要挂载的磁盘
第二列:挂载点
第三列:文件类型
第四列:挂载选项,详细参考man mount. 下面列出一些常用的选项:
auto: 系统自动挂载,fstab默认就是这个选项
ro: read-only
rw: read-write
defaults: rw, suid, dev, exec, auto, nouser, and async.
第五列:为dump选项,设置是否让备份程序dump备份文件系统,0为忽略,1为备份。
第六列:为fsck选项,告诉fsck程序以什么顺序检查文件系统,0为忽略。
10,重新挂载
mount -a
11,查看是否挂载成功
至此,新磁盘创建lvm已完成,后续可以随时扩容lvm。
-----------------------------------------------------------
扩容lvm
lvextend -L +100G /dev/mapper/vg_group-vg_user
之后使用resize2fs进行更新
resize2fs /dev/mapper/vg_group-vg_user
即可扩容完成
如果resize2fs出现错误:
resize2fs 1.42.9 (28-Dec-2013)
resize2fs: Bad magic number in super-block while trying to open /dev/mapper/vg_group-vg_user
Couldn't find valid filesystem superblock.
则使用下面的方式
xfs_growfs /dev/mapper/vg_group-vg_user
二、动态扩容:
1.查看卷组名称及卷组使用情况 vgdisplay
2.查看当前逻辑卷的空间状态,如下图:/ 50G、/var 200G、/home 100G、swap 20G
3.现在感觉/home 100G不够用,想扩容至120G,新插入一块20G硬盘;用‘fdisk -l’查看
4.格式化分区操作‘fsdisk /dev/sdb’
5.把新加的磁盘设置为LVM模式
6.确认分区
7.将新加的分区 /dev/sdb1 创建为物理卷
8.给卷组‘cl’扩容,将物理卷 /dev/sdb1 扩展至‘cl’卷组
此时卷组‘cl’有20G空余空间,及 /dev/sdb1,将其全部扩展至 /home
9.扩容lvm
lvextend -L +100G /dev/mapper/vg_group-vg_user
之后使用resize2fs进行更新
resize2fs /dev/mapper/vg_group-vg_user