linux如何扩展磁盘容量(VMware虚拟机)

 更新时间:2024年09月07日 14:13:22   作者:极创者  
这篇文章主要介绍了linux如何扩展磁盘容量(VMware虚拟机)问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

一、前置准备工作

扩展虚拟机磁盘前,需要先把虚拟机关机才能进行扩展磁盘操作

  • 1.选择虚拟机设置,如下图所示

  • 2.输入你想扩展的磁盘容量,以本次实操为例,我这里输入的30G(具体按照实际容量输入)
  • 3.点击确定
  • 4.启动虚拟机

二、扩展磁盘容量

1.使用root用户登录系统,使用fdisk -l命令查看磁盘分区情况

[root@localhost ~]# fdisk -l

2. 使用fdisk命令重新对/dev/sda磁盘进行分区

使用 fdisk /dev/sda后会进入具体实际分区操作页面,以下为参数说明:

常规

  • d   删除分区
  • F   列出未分区的空闲区
  • l   列出已知分区类型
  • n   添加新分区
  • p   打印分区表
  • t   更改分区类型
  • v   检查分区表
  • i   打印某个分区的相关信息

输入m,仅是提示获取帮助,在这里可以看到各个命令具体含义

输入p,打印当前有多少分区表,本例中有两个分区表,分别为/dev/sda1和/dev/sda2

输入n,添加新分区,这里输入n以后会让你选择是对主分区扩展还是对扩展分区扩展,请根据实际情况填写,本例中输入p,选择主分区进行扩展。完成后,会让你输入数字,具体的数字根据你实际的情况来,本例中

输入3,完成后此时出现扇区大小确认,直接用默认值,直接敲2次回车

最后输入w,保存退出

# 实际操作如下:
[root@localhost ~]# fdisk /dev/sda

欢迎使用 fdisk (util-linux 2.32.1)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。


命令(输入 m 获取帮助):m

帮助:

  DOS (MBR)
   a   开关 可启动 标志
   b   编辑嵌套的 BSD 磁盘标签
   c   开关 dos 兼容性标志

  常规
   d   删除分区
   F   列出未分区的空闲区
   l   列出已知分区类型
   n   添加新分区
   p   打印分区表
   t   更改分区类型
   v   检查分区表
   i   打印某个分区的相关信息

  杂项
   m   打印此菜单
   u   更改 显示/记录 单位
   x   更多功能(仅限专业人员)

  脚本
   I   从 sfdisk 脚本文件加载磁盘布局
   O   将磁盘布局转储为 sfdisk 脚本文件

  保存并退出
   w   将分区表写入磁盘并退出
   q   退出而不保存更改

  新建空磁盘标签
   g   新建一份 GPT 分区表
   G   新建一份空 GPT (IRIX) 分区表
   o   新建一份的空 DOS 分区表
   s   新建一份空 Sun 分区表


命令(输入 m 获取帮助):p
Disk /dev/sda:30 GiB,32212254720 字节,62914560 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x89f751ac

设备       启动    起点     末尾     扇区 大小 Id 类型
/dev/sda1  *       2048  2099199  2097152   1G 83 Linux
/dev/sda2       2099200 41943039 39843840  19G 8e Linux LVM

命令(输入 m 获取帮助):n
分区类型
   p   主分区 (2个主分区,0个扩展分区,2空闲)
   e   扩展分区 (逻辑分区容器)
选择 (默认 p):p
分区号 (3,4, 默认  3): 3
第一个扇区 (41943040-62914559, 默认 41943040):
上个扇区,+sectors 或 +size{K,M,G,T,P} (41943040-62914559, 默认 62914559):

创建了一个新分区 3,类型为“Linux”,大小为 10 GiB。

命令(输入 m 获取帮助):w
分区表已调整。
正在同步磁盘。
[root@localhost ~]#

3.再次使用fdisk -l查看扩展分区情况

[root@localhost ~]# fdisk -l

4.reboot重启虚拟机

[root@localhost ~]# reboot

5.使用pvcreate命令对新建的分区创建物理分区

[root@localhost ~]# pvcreate /dev/sda3
  Physical volume "/dev/sda3" successfully created.

6.使用vgs查看虚拟卷组

[root@localhost ~]# vgs
  VG #PV #LV #SN Attr   VSize   VFree
  cl   1   2   0 wz--n- <19.00g    0

7.使用vgextend命令对卷组进行扩容,将新建的/dev/sda3分区加入到上述第6步骤查询出来的卷组中(本例中查询出来的卷组名为cl,实际的卷组名以你们查询出来的为准)

[root@localhost ~]# vgextend cl /dev/sda3
  Volume group "cl" successfully extended

8.使用df -h查看要扩展的文件系统,本例中文件系统为:/dev/mapper/cl-root

[root@localhost ~]# df -h
文件系统             容量  已用  可用 已用% 挂载点
devtmpfs             3.8G     0  3.8G    0% /dev
tmpfs                3.9G     0  3.9G    0% /dev/shm
tmpfs                3.9G  9.8M  3.8G    1% /run
tmpfs                3.9G     0  3.9G    0% /sys/fs/cgroup
/dev/mapper/cl-root   17G   14G  3.4G   81% /
/dev/sda1            976M  144M  766M   16% /boot
tmpfs                779M  1.2M  778M    1% /run/user/42
tmpfs                779M  4.0K  779M    1% /run/user/0

9.使用lvextend命令扩展文件系统,本例中为:/dev/mapper/cl-root,注意,本例中是额外扩展了10G磁盘(没扩展磁盘前是20G),在使用lvextend扩展时,不能完全给10G,要比10G小一点作为预留,本次给9G

[root@localhost ~]# lvextend -L +9G /dev/mapper/cl-root
  Size of logical volume cl/root changed from <17.00 GiB (4351 extents) to <26.00 GiB (6655 extents).
  Logical volume cl/root successfully resized.

10.使用pvdisplay查看创建后的物理分区

[root@localhost ~]# pvdisplay
  --- Physical volume ---
  PV Name               /dev/sda2
  VG Name               cl
  PV Size               <19.00 GiB / not usable 3.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              4863
  Free PE               0
  Allocated PE          4863
  PV UUID               DwVhNf-XFeN-Pmwn-Sw9L-nhtd-dmxk-q3qcFf

  --- Physical volume ---
  PV Name               /dev/sda3
  VG Name               cl
  PV Size               10.00 GiB / not usable 4.00 MiB
  Allocatable           yes
  PE Size               4.00 MiB
  Total PE              2559
  Free PE               255
  Allocated PE          2304
  PV UUID               oMd2wT-pJ7h-fXxo-XjPE-rLdj-VP5l-fGA4dT

11.再次使用df -h查看磁盘空间,发现磁盘仍然只有20G,并未增加到30G,那是因为还缺少最后一步,需要对文件系统进行扩容

[root@localhost ~]# df -h
文件系统             容量  已用  可用 已用% 挂载点
devtmpfs             3.8G     0  3.8G    0% /dev
tmpfs                3.9G     0  3.9G    0% /dev/shm
tmpfs                3.9G  9.8M  3.8G    1% /run
tmpfs                3.9G     0  3.9G    0% /sys/fs/cgroup
/dev/mapper/cl-root   17G   14G  3.3G   81% /
/dev/sda1            976M  144M  766M   16% /boot
tmpfs                779M  1.2M  778M    1% /run/user/42
tmpfs                779M  4.0K  779M    1% /run/user/0

12.查看文件系统/dev/mapper/cl-root格式,此处查询出来是xfs,有的查询出来可能是ext4,具体已实际情况为准

[root@localhost ~]# cat /etc/fstab

13. 使用xfs_growfs(红帽、CentOS使用该xfs_growfs命令,其他系统如Ubuntu等自行查阅一下)命令对文件系统进行扩容,如果是ext4格式的,使用resize2fs

[root@localhost ~]# xfs_growfs /

注意:xfs_growfs用两种用法

  • 老版xfs_growfs用法:xfs_growfs [文件系统名]
  • 新版xfs_growfs用法:xfs_growfs [挂载点]

如果命令用的不对,会出现如下错误:

[root@localhost ~]# xfs_growfs /dev/mapper/cl-root
xfs_growfs: /dev/mapper/cl-root is not a mounted XFS filesystem

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 制作PHP的RPM包详解及实例

    制作PHP的RPM包详解及实例

    这篇文章主要介绍了制作PHP的RPM包详解及实例的相关资料,为了方便源码包的安装,我们需要自己订制软件包的需求,我们会把一些源码包按照我们的需求来做成rpm包,需要的朋友可以参考下
    2016-12-12
  • Linux中Centos7搭建Hadoop服务步骤

    Linux中Centos7搭建Hadoop服务步骤

    本篇文章给大家详细讲述了Linux中Centos7搭建Hadoop服务步骤,对此有需要的读者朋友们可以参考下。
    2018-02-02
  • LINUX服务器安装SVN服务实现方式

    LINUX服务器安装SVN服务实现方式

    本文介绍了如何使用yum安装Subversion,创建版本库,配置SVN服务,并解决常见问题,详细步骤包括安装Subversion,查看安装版本和位置,创建存放版本库的目录及svn版本库,配置权限控制,启动svn版本库,以及处理端口访问权限等
    2024-09-09
  • linux让$变成#符号的实操方法

    linux让$变成#符号的实操方法

    在本文里我们给大家整理了一篇关于linux让$变成#符号的操作方法和案例,对此有需要的朋友们跟着操作下。
    2019-02-02
  • linux采用scp命令拷贝文件到本地,拷贝本地文件到远程服务器的方法

    linux采用scp命令拷贝文件到本地,拷贝本地文件到远程服务器的方法

    今天小编就为大家分享一篇linux采用scp命令拷贝文件到本地,拷贝本地文件到远程服务器的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07
  • Centos定制rpm包、搭建yum仓库的教程

    Centos定制rpm包、搭建yum仓库的教程

    这篇文章主要介绍了Centos定制rpm包、搭建yum仓库的教程,感兴趣的朋友跟随小编一起看看吧
    2019-11-11
  • Linux宿主机下/容器下如何修改进程打开的文件句柄数(open files)

    Linux宿主机下/容器下如何修改进程打开的文件句柄数(open files)

    系统级的max-file和进程级的ulimit-n分别控制文件句柄的最大数量,系统级限制整个系统,而ulimit-n只限制单个进程,当进程打开的文件句柄数超限时,会报“Too many files open”错误,可以通过特定命令查看和修改这些值
    2024-10-10
  • Apeache启动不成功时,用命令行检测的方法

    Apeache启动不成功时,用命令行检测的方法

    下面小编就为大家带来一篇Apeache启动不成功时,用命令行检测的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • 在CentOS 7下使用yum配置MySQL源并安装MySQL

    在CentOS 7下使用yum配置MySQL源并安装MySQL

    这篇文章主要介绍了CentOS 7.0下使用yum安装mysql的方法详解的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-11-11
  • IO多路复用之poll全面总结(必看篇)

    IO多路复用之poll全面总结(必看篇)

    下面小编就为大家带来一篇IO多路复用之poll全面总结(必看篇)。小编觉得挺不错的。现在就分享给大家。也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12

最新评论