闲闲逛逛走走看看 發表於 2024-8-2 20:24:00

VirtualBox扩容CentOS-7虚拟机磁盘

<h2 id="1背景描述">1、背景描述</h2>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240611171335629-1420877341.png" alt="image" loading="lazy"></p>
<p>如上图所示,根路径“/”所在的文件系统已没有可用的磁盘空间,需要扩容磁盘。</p>
<pre><code>df -h
</code></pre>
<h2 id="2virtualbox操作">2、VirtualBox操作</h2>
<h3 id="21查看当前虚拟磁盘的大小">2.1、查看当前虚拟磁盘的大小</h3>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240611171658589-101050239.png" alt="image" loading="lazy"></p>
<p>如上图所示,点击打开选中的虚拟机的 Settings 界面。</p>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240611171759461-1595274513.png" alt="image" loading="lazy"></p>
<p>如上图所示,当前虚拟机的虚拟磁盘大小为 8GB 。</p>
<h3 id="22修改虚拟磁盘的大小">2.2、修改虚拟磁盘的大小</h3>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240611172215902-913415276.png" alt="image" loading="lazy"></p>
<p>如上图所示,点击“File”-&gt;“Virtual Media Manager”,进入虚拟磁盘管理界面。</p>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240611172515938-1763112414.png" alt="image" loading="lazy"></p>
<p>如上图所示,选中虚拟机,即可修改该虚拟机的虚拟磁盘大小。<br>
<img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240611172711488-1271179929.png" alt="image" loading="lazy"></p>
<p>如上图所示,本例将虚拟磁盘大小修改为 16GB 。</p>
<blockquote>
<p>注意:需要先关闭虚拟机,才能修改虚拟磁盘的大小。</p>
</blockquote>
<h3 id="23查看修改效果">2.3、查看修改效果</h3>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240611173305058-421296234.png" alt="image" loading="lazy"></p>
<p>如上图所示,当前虚拟机的虚拟磁盘大小已被修改为 16GB 。</p>
<blockquote>
<p>注意:虽然虚拟磁盘大小已被修改为 16GB ,但是在 CentOS 操作系统中还没分配使用。</p>
</blockquote>
<h2 id="3centos操作">3、CentOS操作</h2>
<h3 id="31磁盘分区阶段">3.1、磁盘分区阶段</h3>
<h4 id="311查看磁盘分区状态">3.1.1、查看磁盘分区状态</h4>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614150701296-223875176.png" alt="image" loading="lazy"></p>
<p>如上图所示,磁盘 /dev/sda 有 16G 的大小,/dev/sda1 和 /dev/sda2 两个分区一共只用了 8G ,因此还剩余 8G 可用。</p>
<pre><code>lsblk -p
</code></pre>
<h4 id="312创建新分区">3.1.2、创建新分区</h4>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614151926301-939246273.png" alt="image" loading="lazy"></p>
<pre><code>fdisk /dev/sda
</code></pre>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614152147657-1463890423.png" alt="image" loading="lazy"></p>
<p>如上图所示,输入“n”,创建一个新分区(new)。</p>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614152256492-489996791.png" alt="image" loading="lazy"></p>
<p>如上图所示,输入“p”,设置分区类型为主分区(primary)。</p>
<blockquote>
<p>注意:一个磁盘最多可以分成四个分区,分区的类型有“主要分区”和“扩展分区”。<br>
“扩展分区”最多只能有一个,一般建议将第四个分区设置为“扩展分区”,前三个分区设置为“主要分区”。<br>
结合 3.1.1 节可知,目前已有 /dev/sda1 和 /dev/sda2 两个分区,即将创建的是第三个分区,因此分区类型设置为主分区比较合适。</p>
</blockquote>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614152416779-2077790507.png" alt="image" loading="lazy"></p>
<p>如上图所示,输入“3”,设置分区号。</p>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614152719202-903459655.png" alt="image" loading="lazy"></p>
<p>如上图所示,直接回车,使用默认的起始扇区。</p>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614153057473-1747991497.png" alt="image" loading="lazy"></p>
<p>如上图所示,直接回车,使用默认的结束扇区。</p>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614153237208-1852332127.png" alt="image" loading="lazy"></p>
<p>如上图所示,输入“w”,保存退出。</p>
<blockquote>
<p>提示:输入顺序为“n”-&gt;“p”-&gt;“3(或回车)”-&gt;“回车”-&gt;“回车”-&gt;“w”</p>
</blockquote>
<blockquote>
<p>注意:如果输错了,可以输入“q”,不保存退出,重新再来一遍。<br>
此外,有部分文章有修改 system id 为 8e 的步骤,这一步骤只是为了让某些 LVM 检测指令能检测到这个分区,实际上省略这一操作也是可以的。</p>
</blockquote>
<h4 id="313更新分区表信息">3.1.3、更新分区表信息</h4>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614154817025-1833451427.png" alt="image" loading="lazy"></p>
<p>如上图所示,使用 partprobe 命令可以更新分区表信息,让系统识别到新创建的分区。</p>
<p>虽然使用 reboot 命令重启系统也能更新分区表,让系统识别到新创建的分区,但不推荐这样操作。</p>
<pre><code>partprobe -s
</code></pre>
<h4 id="314再次查看磁盘分区状态">3.1.4、再次查看磁盘分区状态</h4>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614155735821-1088355663.png" alt="image" loading="lazy"></p>
<p>如上图所示,新分区 /dev/sda3 已创建成功,大小为 8G 。</p>
<pre><code>lsblk -p
</code></pre>
<h3 id="32pv物理卷阶段">3.2、PV物理卷阶段</h3>
<h4 id="321查看pv物理卷状态">3.2.1、查看PV物理卷状态</h4>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614160321686-1854332389.png" alt="image" loading="lazy"></p>
<p>如上图所示,目前只有基于 /dev/sda2 分区创建的物理卷,大小为 7G 。</p>
<pre><code>pvdisplay
</code></pre>
<h4 id="322创建新pv物理卷">3.2.2、创建新PV物理卷</h4>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614161500425-509539451.png" alt="image" loading="lazy"></p>
<p>如上图所示,将 /dev/sda3 新分区,创建为一个新的物理卷。</p>
<pre><code>pvcreate 新分区名称
</code></pre>
<h4 id="323再次查看pv物理卷状态">3.2.3、再次查看PV物理卷状态</h4>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614161630363-714902931.png" alt="image" loading="lazy"></p>
<p>如上图所示,基于 /dev/sda3 分区,成功创建了一个新的物理卷。</p>
<pre><code>pvdisplay
</code></pre>
<blockquote>
<p>注意:此时 /dev/sda2 物理卷的 VG Name 的值为 centos ,表示该物理卷属于名称为 centos 的卷组。<br>
而 /dev/sda3 物理卷的 VG Name 的值为空 ,表示该物理卷还不属于任何卷组。</p>
</blockquote>
<h3 id="33vg卷组阶段">3.3、VG卷组阶段</h3>
<h4 id="331查看vg卷组状态">3.3.1、查看VG卷组状态</h4>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614162628523-1940153388.png" alt="image" loading="lazy"></p>
<p>如上图所示,目前只有一个名称为 centos 的卷组,大小为 7G 。</p>
<p>结合 3.2.3 节可知,该卷组只包括大小为 7G 的 /dev/sda2 物理卷。</p>
<pre><code>vgdisplay
</code></pre>
<h4 id="332扩容vg卷组">3.3.2、扩容VG卷组</h4>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614164112538-1439883611.png" alt="image" loading="lazy"></p>
<p>如上图所示,将新创建的 /dev/sda3 物理卷加入到 centos 卷组,从而完成 centos 卷组的扩容。</p>
<pre><code>vgextend 卷组名称 新物理卷名称
</code></pre>
<blockquote>
<p>注意:如果执行扩容VG的命令时,报错“Couldn't create temporary archive name”;<br>
说明磁盘已经一点空间都没有了,需要先删除(或转移)一些不重要的文件(例如日志文件之类)才能继续。<br>
<img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614163931267-459867582.png" alt="image" loading="lazy"></p>
</blockquote>
<h4 id="333再次查看vg卷组状态">3.3.3、再次查看VG卷组状态</h4>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614164253194-1957370490.png" alt="image" loading="lazy"></p>
<p>如上图所示,centos 卷组已成功扩容为 15G 。</p>
<p>结合 3.2.3 节可知,该卷组包括了大小为 7G 的 /dev/sda2 物理卷,以及大小为 8G 的 /dev/sda3 物理卷。</p>
<h3 id="34lv逻辑卷阶段">3.4、LV逻辑卷阶段</h3>
<h4 id="341查看lv逻辑卷状态">3.4.1、查看LV逻辑卷状态</h4>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614165249776-693886451.png" alt="image" loading="lazy"></p>
<p>如上图所示,要扩容的挂载点“/”所对应的文件系统为“/dev/mapper/centos-root”。</p>
<pre><code>df -h
</code></pre>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614170003773-413338484.png" alt="image" loading="lazy"></p>
<p>如上图所示,文件系统“/dev/mapper/centos-root”所对应的逻辑卷路径为“/dev/centos/root”。</p>
<p>该逻辑卷大小约为 6G ,且属于 centos 卷组。</p>
<pre><code>lvdisplay 文件系统名称
</code></pre>
<blockquote>
<p>注意:虽然逻辑卷的名称为“root”,但是要对逻辑卷进行操作,需要使用逻辑卷的路径“/dev/centos/root”。<br>
逻辑卷路径的格式为:/dev/卷组名称/逻辑卷名称</p>
</blockquote>
<h4 id="342扩容逻辑卷">3.4.2、扩容逻辑卷</h4>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614171026896-765386664.png" alt="image" loading="lazy"></p>
<p>如上图所示,将 centos 卷组扩容所得到的物理卷空间,分配给 /dev/centos/root 逻辑卷,从而完成 /dev/centos/root 逻辑卷的扩容。</p>
<pre><code>lvextend 逻辑卷路径 卷组扩容所得到的物理卷
</code></pre>
<h4 id="343再次查看lv逻辑卷状态">3.4.3、再次查看LV逻辑卷状态</h4>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614171224617-1582079063.png" alt="image" loading="lazy"></p>
<p>如上图所示, /dev/centos/root 逻辑卷已成功扩容多了 8G 。</p>
<pre><code>lvdisplay 文件系统名称
</code></pre>
<h3 id="35文件系统阶段">3.5、文件系统阶段</h3>
<h4 id="351查看文件系统状态">3.5.1、查看文件系统状态</h4>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614172422230-1803911695.png" alt="image" loading="lazy"></p>
<p>如上图所示,此时 /dev/centos/root 逻辑卷的扩容空间,还没有同步到 /dev/mapper/centos-root 文件系统。</p>
<p>此外,可以看到 /dev/mapper/centos-root 文件系统的类型为 xfs ,因此可以使用 xfs_growfs 命令来完成文件系统的扩容。</p>
<pre><code>df -hT
</code></pre>
<h4 id="352扩容文件系统">3.5.2、扩容文件系统</h4>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614173451838-703409816.png" alt="image" loading="lazy"></p>
<pre><code>xfs_growfs 文件系统名称
</code></pre>
<h4 id="353再次查看文件系统状态">3.5.3、再次查看文件系统状态</h4>
<p><img src="https://img2024.cnblogs.com/blog/2052479/202406/2052479-20240614174304552-2070479450.png" alt="image" loading="lazy"></p>
<p>如上图所示,要扩容的挂载点“/”所对应的文件系统“/dev/mapper/centos-root”,已成功扩容了 8G 。</p>
<pre><code>df -hT
</code></pre>
<h2 id="本文参考">本文参考</h2>
<p>【1】【行万路明于省】【VirtualBox扩容教程】【CSDN】【2022-10-26】</p>
<p>【2】【jianmuzi】【挂载点扩容-Linux-CentOS7】【博客园】【2022-09-10】</p>
<p>【3】【A ?Charis】【使用LVM方式扩容磁盘报错:Couldn‘t create temporary archive name.】【CSDN】【2023-10-11】</p>
<p>【4】【careybobo】【virtualbox 虚拟机 如何扩容 /dev/mapper/centos-root】【CSDN】【 2024-02-06】</p>
<p>【5】【蜡笔小新儿】【VirtualBox和VMware虚拟机centos(/dev/mapper/centos-root)磁盘扩容(亲测有效)】【CSDN】【2020-05-31】</p>
<p>【6】【知其黑、受其白】【virtualbox 扩展动态磁盘 Centos7扩容】【CSDN】【 2023-03-17】</p>
<p>【7】【鳥哥】【7.3 磁碟的分割、格式化、檢驗與掛載】【鳥哥的 Linux 私房菜】【2017-09-04】</p>
<p>【8】【鳥哥】【14.3 邏輯捲軸管理員 (Logical Volume Manager)】【鳥哥的 Linux 私房菜】【2015-07-28】</p>
<p>【9】【鳥哥】【2.2 磁碟分割】【鳥哥的 Linux 私房菜】【2015-04-28】</p>


</div>
<div id="MySignature" role="contentinfo">
    <p>本文来自博客园,作者:Javaer1995,转载请注明原文链接:https://www.cnblogs.com/Javaer1995/p/18246309</p><br><br>
来源:https://www.cnblogs.com/Javaer1995/p/18246309
頁: [1]
查看完整版本: VirtualBox扩容CentOS-7虚拟机磁盘