Linux创建逻辑卷并扩容(超详细)
不会编程的喵星人 2024-06-21 16:07:02 阅读 89
目录
编辑
一、概念解析
1、LV逻辑卷
2、PV物理卷
3、VG卷组
二、扩容前准备
三、创建逻辑卷并扩容
1、打开虚拟机
2、进入root用户
3、查看新加入的硬盘
4、创建主分区
5、创建物理卷
6、打包为一个卷组
7、创建逻辑卷
8、格式化逻辑卷
9、挂载逻辑卷--开机自启动挂载(永久挂载)
10、逻辑卷扩容
一、概念解析
1、LV逻辑卷
LV(Logical Volume,逻辑卷)是Linux系统中的一种逻辑卷,它是在物理卷(PV)和卷组(VG)之上创建的,可以动态地调整大小和迁移数据。通常,LV被格式化为文件系统,以提供高级别的数据管理和访问方式。LV提供了更好的灵活性和可用性,可以根据需要增加或减少存储空间,同时提供了数据冗余和恢复功能。在Linux系统中,LVM(Logical Volume Manager,逻辑卷管理)为LV提供了管理和配置工具。
2、PV物理卷
PV(Physical Volume)物理卷是在LVM(Logical Volume Manager)中使用的一个概念,它表示一个硬盘或分区。在LVM中,多个PV物理卷可以组成一个VG(Volume Group)卷组,VG卷组则可以被分成多个LV(Logical Volume)逻辑卷。PV物理卷通常使用命令pvcreate来创建,之后可以使用vgextend命令将其添加到VG卷组中。
3、VG卷组
VG是Linux中的卷组(Volume Group)的缩写。VG是逻辑卷(Logical Volumes)的基础,它将一个或多个物理卷(Physical Volumes)组合在一起,形成一个单一的卷组。VG提供了一种灵活的方式,来管理一个或多个物理硬盘驱动器的存储空间。VG中的所有物理卷都必须属于同一系统,并且必须使用相同的块大小。VG可以被划分成多个逻辑卷(Logical Volumes),每个逻辑卷都可以被格式化为一个文件系统,或被用作其他用途,如MySQL数据目录等。
二、扩容前准备
笔者这里做的操作是先创建一个逻辑卷,然后在对这个逻辑卷扩容,这里是先创建5G的逻辑卷,然后在将这个5g逻辑卷扩容到10G,因为原来的硬盘已经全部分完,所以在这里我选择了接着添加硬盘,为了方便看出细节,笔者没有选择直接添加10G的硬盘,选择了添加两个5G的硬盘进行操作和扩容
添加一个硬盘
选择SCSI
创建新虚拟磁盘
选择大小5G,这里可以根据自己的需求进行改变
这样之后我们就会得到一个5G的硬盘,再重复一次操作,我们可以得到两个这样的硬盘,最终结果如下图
三、创建逻辑卷并扩容
1、打开虚拟机
这里应该没什么说的了吧
2、进入root用户
su root
3、查看新加入的硬盘
lsblk
我们可以看到我们刚刚加进去的两个5G的硬盘
4、创建主分区
在创建LVM逻辑卷之前我们需要先创建主分区
使用 fdisk /dev/sdb 创建主分区。注意:我这里是新添的两块硬盘,所以此操作要执行两次,只是硬盘名不一样。依次输入 n , p, 1, 然后回车回车,输入w后保存。
注意下行命令sdb哪里需要和上边我们查看到的空硬盘名字一致,先对其中一个创建主分区,在对另一个创建,步骤都是一样的。
fdisk /dev/sdb
依次输入n,p,1,然后两次回车选择默认大小
然后输入w进行保存
同样的方法在对sdc执行一下,我们要将两个盘都创建主分区
5、创建物理卷
下面一条语句是创建物理卷的命令,注意刚刚那个过程,其中的编号我们选择的是1,所以sdb变成主分区之后是sdb1,sdc变成sdc1,如果你写的是其他的数字就会显示其他的。
如果你还不确定你是什么的情况下,可以在执行一下lsblk进行查看
lsblk
这里就是我们刚刚的主分区
pvcreate /dev/sdb1 /dev/sdc1
我们的物理卷已经创建成功了。
6、打包为一个卷组
格式:vgcreate+卷组名+设备1+设备2+设备...
卷组的名字随便起,笔者是随便打了几个字母
vgcreate ysh /dev/sdb1 /dev/sdc1
查看一下我们打包的卷组
vgdisplay ysh
可以看到我们有9.99G的空间
7、创建逻辑卷
格式:lvcreate -L 指定的大小 -n 指定的逻辑卷名 卷组名
第一个ysh是我当前逻辑卷的名字,第二个是之前的卷组名字,这里可以参考上边格式就能理解
lvcreate -L +5G -n ysh ysh
查看我们创建的逻辑卷
lvdisplay /dev/ysh/ysh
8、格式化逻辑卷
格式:mkfs.xfs+创建的LVM卷组
mkfs.xfs /dev/ysh/ysh
9、挂载逻辑卷--开机自启动挂载(永久挂载)
//开机自启动挂载的方式不是唯一的,这里使用的是blkid-UUID的方法
//使用 mkdir 建立一个挂载的目录 mkdir /ysh
//使用blkid查看自己的UUID编码,然后复制最下面的UUID编码,不要双引号。
创建挂载目录,这里名字自己起
mkdir /ysh
查看blkid-UUID
blkid
注意最后一个是的UUID
现在吧UUID复制一下,保存
a99e6802-1cc8-4e9c-88d2-fd301e078ed5
注意不要复制到双引号
//编辑vim /etc/fstab 然后把/boot那一行的格式复制在最下面,把UUID替换为刚刚复制的UUID,把/boot换成自己的挂载目录,保存退出
vim /etc/fstab
添加这条语句,将UUID换成自己的,将/ysh换成自己刚刚创建的目录
UUID=a99e6802-1cc8-4e9c-88d2-fd301e078ed5 /ysh xfs defaults 0 0
//使用 mount -a 命令刷新,然后 df -h 查看
//挂载成功,大小为5G接下来可以进行扩容,然后也可以不扩容,看自己需求
mount -a
df -h
可以看到逻辑卷创建成功
10、逻辑卷扩容
需要手动操作
lvextend -L +4.9G /dev/ysh/ysh xfs_growfs /dev/ysh/yshdf -h
执行上列命令就可以了
如果出现下列报错的话,我们看保存信息,5G需要1280内存块,但是我们只有1278。所以把5G改成4.9G就ok了。如果还不行就在该小点。
好啦,大功告成,完结散花
上一篇: 解决 Linux 系统,出现“不在sudoers文件中,此事将被报告”的问题
下一篇: Mac M2芯片 VMware Fusion 虚拟机安装 Centos(ARM 64 版本)
本文标签
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。