1、背景描述

如上图所示,根路径“/”所在的文件系统已没有可用的磁盘空间,需要扩容磁盘。

df -h

2、VirtualBox操作

2.1、查看当前虚拟磁盘的大小

如上图所示,点击打开选中的虚拟机的 Settings 界面。

如上图所示,当前虚拟机的虚拟磁盘大小为 8GB 。

2.2、修改虚拟磁盘的大小

如上图所示,点击“File”->“Virtual Media Manager”,进入虚拟磁盘管理界面。

如上图所示,选中虚拟机,即可修改该虚拟机的虚拟磁盘大小。

如上图所示,本例将虚拟磁盘大小修改为 16GB 。

注意:需要先关闭虚拟机,才能修改虚拟磁盘的大小。

2.3、查看修改效果

如上图所示,当前虚拟机的虚拟磁盘大小已被修改为 16GB 。

注意:虽然虚拟磁盘大小已被修改为 16GB ,但是在 CentOS 操作系统中还没分配使用。

3、CentOS操作

3.1、磁盘分区阶段

3.1.1、查看磁盘分区状态

如上图所示,磁盘 /dev/sda 有 16G 的大小,/dev/sda1 和 /dev/sda2 两个分区一共只用了 8G ,因此还剩余 8G 可用。

lsblk -p

3.1.2、创建新分区

fdisk /dev/sda

如上图所示,输入“n”,创建一个新分区(new)。

如上图所示,输入“p”,设置分区类型为主分区(primary)。

注意:一个磁盘最多可以分成四个分区,分区的类型有“主要分区”和“扩展分区”。

“扩展分区”最多只能有一个,一般建议将第四个分区设置为“扩展分区”,前三个分区设置为“主要分区”。

结合 3.1.1 节可知,目前已有 /dev/sda1 和 /dev/sda2 两个分区,即将创建的是第三个分区,因此分区类型设置为主分区比较合适。

如上图所示,输入“3”,设置分区号。

如上图所示,直接回车,使用默认的起始扇区。

如上图所示,直接回车,使用默认的结束扇区。

如上图所示,输入“w”,保存退出。

提示:输入顺序为“n”->“p”->“3(或回车)”->“回车”->“回车”->“w”

注意:如果输错了,可以输入“q”,不保存退出,重新再来一遍。

此外,有部分文章有修改 system id 为 8e 的步骤,这一步骤只是为了让某些 LVM 检测指令能检测到这个分区,实际上省略这一操作也是可以的。

3.1.3、更新分区表信息

如上图所示,使用 partprobe 命令可以更新分区表信息,让系统识别到新创建的分区。

虽然使用 reboot 命令重启系统也能更新分区表,让系统识别到新创建的分区,但不推荐这样操作。

partprobe -s

3.1.4、再次查看磁盘分区状态

如上图所示,新分区 /dev/sda3 已创建成功,大小为 8G 。

lsblk -p

3.2、PV物理卷阶段

3.2.1、查看PV物理卷状态

如上图所示,目前只有基于 /dev/sda2 分区创建的物理卷,大小为 7G 。

pvdisplay

3.2.2、创建新PV物理卷

如上图所示,将 /dev/sda3 新分区,创建为一个新的物理卷。

pvcreate 新分区名称

3.2.3、再次查看PV物理卷状态

如上图所示,基于 /dev/sda3 分区,成功创建了一个新的物理卷。

pvdisplay

注意:此时 /dev/sda2 物理卷的 VG Name 的值为 centos ,表示该物理卷属于名称为 centos 的卷组。

而 /dev/sda3 物理卷的 VG Name 的值为空 ,表示该物理卷还不属于任何卷组。

3.3、VG卷组阶段

3.3.1、查看VG卷组状态

如上图所示,目前只有一个名称为 centos 的卷组,大小为 7G 。

结合 3.2.3 节可知,该卷组只包括大小为 7G 的 /dev/sda2 物理卷。

vgdisplay

3.3.2、扩容VG卷组

如上图所示,将新创建的 /dev/sda3 物理卷加入到 centos 卷组,从而完成 centos 卷组的扩容。

vgextend 卷组名称 新物理卷名称

注意:如果执行扩容VG的命令时,报错“Couldn't create temporary archive name”;

说明磁盘已经一点空间都没有了,需要先删除(或转移)一些不重要的文件(例如日志文件之类)才能继续。

3.3.3、再次查看VG卷组状态

如上图所示,centos 卷组已成功扩容为 15G 。

结合 3.2.3 节可知,该卷组包括了大小为 7G 的 /dev/sda2 物理卷,以及大小为 8G 的 /dev/sda3 物理卷。

3.4、LV逻辑卷阶段

3.4.1、查看LV逻辑卷状态

如上图所示,要扩容的挂载点“/”所对应的文件系统为“/dev/mapper/centos-root”。

df -h

如上图所示,文件系统“/dev/mapper/centos-root”所对应的逻辑卷路径为“/dev/centos/root”。

该逻辑卷大小约为 6G ,且属于 centos 卷组。

lvdisplay 文件系统名称

注意:虽然逻辑卷的名称为“root”,但是要对逻辑卷进行操作,需要使用逻辑卷的路径“/dev/centos/root”。

逻辑卷路径的格式为:/dev/卷组名称/逻辑卷名称

3.4.2、扩容逻辑卷

如上图所示,将 centos 卷组扩容所得到的物理卷空间,分配给 /dev/centos/root 逻辑卷,从而完成 /dev/centos/root 逻辑卷的扩容。

lvextend 逻辑卷路径 卷组扩容所得到的物理卷

3.4.3、再次查看LV逻辑卷状态

如上图所示, /dev/centos/root 逻辑卷已成功扩容多了 8G 。

lvdisplay 文件系统名称

3.5、文件系统阶段

3.5.1、查看文件系统状态

如上图所示,此时 /dev/centos/root 逻辑卷的扩容空间,还没有同步到 /dev/mapper/centos-root 文件系统。

此外,可以看到 /dev/mapper/centos-root 文件系统的类型为 xfs ,因此可以使用 xfs_growfs 命令来完成文件系统的扩容。

df -hT

3.5.2、扩容文件系统

xfs_growfs 文件系统名称

3.5.3、再次查看文件系统状态

如上图所示,要扩容的挂载点“/”所对应的文件系统“/dev/mapper/centos-root”,已成功扩容了 8G 。

df -hT

本文参考

【1】【行万路明于省】【VirtualBox扩容教程】【CSDN】【2022-10-26】

【2】【jianmuzi】【挂载点扩容-Linux-CentOS7】【博客园】【2022-09-10】

【3】【A ?Charis】【使用LVM方式扩容磁盘报错:Couldn‘t create temporary archive name.】【CSDN】【2023-10-11】

【4】【careybobo】【virtualbox 虚拟机 如何扩容 /dev/mapper/centos-root】【CSDN】【 2024-02-06】

【5】【蜡笔小新儿】【VirtualBox和VMware虚拟机centos(/dev/mapper/centos-root)磁盘扩容(亲测有效)】【CSDN】【2020-05-31】

【6】【知其黑、受其白】【virtualbox 扩展动态磁盘 Centos7扩容】【CSDN】【 2023-03-17】

【7】【鳥哥】【7.3 磁碟的分割、格式化、檢驗與掛載】【鳥哥的 Linux 私房菜】【2017-09-04】

【8】【鳥哥】【14.3 邏輯捲軸管理員 (Logical Volume Manager)】【鳥哥的 Linux 私房菜】【2015-07-28】

【9】【鳥哥】【2.2 磁碟分割】【鳥哥的 Linux 私房菜】【2015-04-28】

VirtualBox扩容CentOS-7虚拟机磁盘的更多相关文章

  1. virtualBox下Centos系统扩展磁盘空间

    (1)查看空间容量: 打开windows命令终端.然后打开virtualbox安装目录,找到VBoxManage.exe,拖动到终端里面.输入命令:list hdds,回车. 我安装的位置是 : C: ...

  2. VirtualBox给CentOS虚拟机挂载磁盘扩大空间

    VirtualBox给CentOS虚拟机挂载磁盘扩大空间 楼主,发现虚拟机使用存储空间不够用的情况,需要改虚拟机挂载磁盘,扩容,在网上找了一波资料,于是整合记录操详细作如下: 概要步骤如下: 1.设置 ...

  3. Workstation和Virtualbox的虚拟机磁盘扩容方式.

    1. 虚拟机磁盘管理, 更改磁盘格式是一个场景 还有一个场景是 硬盘空间不够了 需要扩充. 方法主要有两个. 如果是workstation的的虚拟机. 并且没有快照 可以直接GUI操作 如下图: 虚拟 ...

  4. centos Linux下磁盘管理 parted,df ,du,fdisk,partprobe,mkfs.ext4,mount,/etc/fstab,fsck,e2fsck,mk2efs,tmpfs ,nr_inodes, LVM,传统方式扩容文件系统 第七节课

    centos Linux下磁盘管理   parted,df ,du,fdisk,partprobe,mkfs.ext4,mount,/etc/fstab,fsck,e2fsck,mk2efs,tmpf ...

  5. Virtualbox 复制 CentOS 虚拟机无法联网

    Centos刚装好后无法联网 复制虚拟机后,出现 No such device eth0 我们要处理的三个问题: 在Virtualbox上安装好Centos后如何联网 如何在Virtualbox上复制 ...

  6. virtualbox下centos虚拟机安装,并网卡配置桥接方式上网,使得和host可以互Ping通。

    见:http://www.cnblogs.com/taoshiqian/p/7615993.html 注意: 1.host 主机什么都不要处理 2.将virtualbox 的对应虚拟机网络设置桥接 3 ...

  7. VirtualBox虚拟机磁盘瘦身

    操作系统 : windows7_x64 VirtualBox 版本 : 4.3.28 原理: 使用0填充虚拟系统磁盘,然后删除填充文件,再使用VBoxManage进行压缩. Linux系统磁盘瘦身 一 ...

  8. Vmware Linux虚拟机磁盘扩容方法

    我的LINUX版本是ubuntu12.04 32bit.今天在下载android源代码的时候发现自己最初给这个虚拟机分配的磁盘空间不足了(只有20G).所以就需要给磁盘扩容.网上大致搜索了一下,主要有 ...

  9. 使用Oracle VM VirtualBox安装CentOS 7.6操作系统

    使用Oracle VM VirtualBox安装CentOS 7.6操作系统                                                               ...

  10. 一次 KVM 虚拟机磁盘占满的排查过程

    一次 KVM 虚拟机磁盘占满的排查过程 KVM 虚拟机系统为 CentOS,文件系统为 XFS. 现象如下: 使用 df -h 命令发现磁盘剩余空间为30k(总大小为30G),使用 df -i 发现 ...

随机推荐

  1. 【论文笔记】R-CNN系列之代码实现

    代码源码 前情回顾:[论文笔记]R-CNN系列之论文理解 整体架构 由三部分组成 (1)提取特征的卷积网络extractor (2)输入特征获得建议框rois的rpn网络 (3)传入rois和特征图, ...

  2. itest(爱测试)开源接口测试&敏捷测试&极简项目管理 7.7.7 发布,接口测试重大升级

    (一)itest 简介及更新说明 itest 开源敏捷测试管理,testOps 践行者,极简的任务管理,测试管理,缺陷管理,测试环境管理,接口测试,接口Mock 6合1,又有丰富的统计分析.可按测试包 ...

  3. Yolov8和Yolov10的差异以及后处理实现

    Yolo模型可分为4个维度的概念 模型版本.数据集.模型变体(Variants).动态/静态模型. Yolo各模型版本进展历史 Yolov(2015年华盛顿大学的 Joseph Redmon 和 Al ...

  4. OpenAI正式发布第一个官方.NET版本库的测试版

    尽管 Microsoft 和 OpenAI 长期以来一直是紧密相连的合作伙伴,但他们现在才开始为 .NET 开发人员发布官方 OpenAI 库,加入现有的社区库.这项工作的第一个测试版是支持 .NET ...

  5. 双网卡、多网卡指定IP分别访问网卡(windows添加静态路由)

    有两块网卡,网关分别是 128.0.100.198 和 192.168.10.2,128.0.100.198,网速10M.192.168.10.2,网速100M.平时上网用192.168.10.2,访 ...

  6. 夜莺项目发布 v6.1.0 版本,增强可观测性数据串联

    大家好,夜莺项目发布 v6.1.0 版本,这是一个中版本迭代,不止是 bugfix 了,而是引入了既有功能的增强.具体增强了什么功能,下面一一介绍. 1. 增强可观测性数据串联 从 v6.1.0 开始 ...

  7. idea编译报错 sun.misc.BASE64Decoder升级处理

    idea编译报错 sun.misc.BASE64Decoder升级处理 警告:17:01:15 /deploy/jenkins/workspace/auto-java-test/utils/Image ...

  8. 字符串— trim()、trimStart() 和 trimEnd()

    在今天的教程中,我们将一起来学习JavaScript 字符串trim().trimStart() 和 trimEnd(). 01.trim() 学习如何使用 JavaScript  trim()方法从 ...

  9. 哈啰面试:说说Dubbo运行原理?

    Dubbo 是一款高性能.轻量级的开源 RPC(远程过程调用)框架,主要用于构建分布式服务和微服务架构.那 Dubbo 又是如何运行的呢?让我们一起来看. 1.核心组件 要说 Dubbo 运行流程就不 ...

  10. CLR via C# 笔记 -- 可空值类型(19)

    1. 值类型的变量永远不会为null,所有需要使用System.Nullable<T> 2. 操作数是null,结构是null:==.!=操作数都为null,则返回true:<.&g ...