VM中Centos7的LVM磁盘扩容
程序员文章站
2022-07-03 15:22:46
...
VM中Centos7的LVM磁盘扩容
参考:
[Linux入门:常用命令:查看硬盘、分区、CPU、内存信息 - 遇见阿杜 - 博客园] ( https://www.cnblogs.com/yujianadu/p/10455109.html)
需求:
- 75G扩容到100G,
- 扩容空间添加到 /var目录下
- 原数据不能丢失
虚拟机扩容
-
扩容前需要关闭虚拟机
-
首先虚拟机关机 —> 选中要扩容的虚拟机 —>编辑虚拟机设置 —> 硬盘 —> 扩展 —> 调整最大磁盘大小 —> 扩展 (普通VMware右键虚拟机–设置即可弹出设置功能)
- 开机
磁盘扩容
此时新增的空间需要手动分配
- 查看磁盘信息
df -h # 原先共75G,var中有38G
fdisk -l #显示所有的分区
方法1:创建新分区
网上的,是从20G扩容为30G,创建了3分区,新分区挂载到 /dev/centos/root
创建分区
sudo fdisk /dev/sda # 操作分区表
#p # 查看分区信息
n # 创建分区
# 若是出现 if you want to create more than four parthtions,you must replace a primary partition with an extended partition first. #此时需要删除一个分区作为主分区,然后再去创建一个扩展分区。 使用下面的方法2
p # 创建主分区
3 #分区数 ,使用默认的,直接回车也行
开始位置:回车 # 开始位置直接默认即可
结束位置:可以直接设置大小,比如 +25G,创建一个25G的分区,或者直接 【回车】,默认就将剩余空间都创建进来了
#----------此时分区就创建了----------
# 设置类型
# 上面p可以看到linux的id为 8e
t
3 #创建的分区号
8e
w # 保存
若是输入n出现下面的情况,就改为下面的方法2
- 重启虚拟机
reboot
磁盘设置
- 查看分区类型
df -T /dev/sda1 # 查看1,因为此时4还没有对应的分区
- 在新磁盘上创建xfs文件系统
mkfs.xfs /dev/sda3 # 图片找的网上的,所以是3
- 创建pv
pvcreate /dev/sda3
pvdisplay
- 查看VG详情,并将PV加入VG
vgdisplay
vgextend centos /dev/sda3 #此处的centos为VG Name,/dev/sda3为新的PV Name
- 查看LV详情,并将VG加入LV
lvdisplay
lvextend -l +2559 /dev/centos/root
# +2559 来自vgdisplay命令的Free PE/Size字段,或者使用 +100%FREE ,或者使用vgs也可以查看到free空间
# /dev/centos/root 来自于lvdisplay命令的LV Path字段,根据自己虚拟机实际情况填写
- 调整文件系统大小,本文中是xfs文件系统,使用xfs_growfs命令调整。(若为其他文件系统,如ext4,则使用resize2fs命令)
xfs_growfs /dev/centos/root #/dev/centos/root是LV Path字段,根据自己虚拟机实际情况填写
- 查看
df -h
方法2:扩容原有分区
扩容分区
-
只能扩容最后一个分区
-
默认linux允许的分区是有限的,最多到4,只能将4扩容了
操作:
- 将最后一个分区删除
- 重新创建分区
这种删除分区不会影响数据的,放心!
- 操作分区表
sudo fdisk /dev/sda
- 查看分区信息
p
- 删除最后一个分区
d
4
- 创建分区(操作与上面的方法1一致)
#创建4分区
n #创建分区
p
4 #盘符,一般默认即可,若是上一步删除了一个盘,使用删除的盘符
默认 #开始位置,直接回车默认即可
默认 #结束位置,直接回车默认即可
t
4 #上面创建的盘符
8e
p #查看创建的信息
w #保存
- 重启虚拟机
reboot
磁盘设置
- 查询分区
lsblk # 此时4分区已经扩大了
- 运行
sudo vgs
--使用的还是之前的75G
-
sudo pvdisplay
--还是之前的30G
- 挂载目录还是之前的大小
sudo lvdisplay # 挂载到/var,所以路径就是 /dev/centos/var 了
- 刷新pv
sudo pvresize /dev/sda4
# 此时vgs可以看到有25G的可扩展空间
- 扩展磁盘
sudo lvextend -L +25G /dev/centos/var # 挂载到 /var上 ,通过 sudo lvdislay 查看到的名字
- 刷新文件系统
# xfs系统
sudo xfs_growfs /dev/centos/var
#ext4系统
sudo resize2fs /dev/centos/var
推荐阅读