2025年4月3日 星期四 乙巳(蛇)年 正月初四 设为首页 加入收藏
rss
您当前的位置:首页 > 计算机 > 软件应用 > 其它软件

Esxi6给虚拟机磁盘扩容

时间:02-17来源:作者:点击数:23

需求

因为最初磁盘规划没想好,导致磁盘给的太小,很快磁盘被用满了,所以需要把该磁盘扩容。

我们这里尝试将/home分区由原来的45GB增加50GB,所以首先我们需要将整个虚拟机扩容50GB,然后再把这50GB全部分给/home分区,这样我们的/home分区就将增加到95GB。

扩容方法

扩容前
  1. 通过df -hT查看磁盘大小(这里我们计划扩容/home分区)
    image-20230601194519951
  2. 通过lsblk命令查看当前系统的分区情况
    • [root@localhost ~]# lsblk
    • NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
    • sda 8:0 0 150G 0 disk
    • ├─sda1 8:1 0 1G 0 part /boot
    • └─sda2 8:2 0 99G 0 part
    • ├─euleros-root 253:0 0 50G 0 lvm /
    • ├─euleros-swap 253:1 0 3.9G 0 lvm [SWAP]
    • └─euleros-home 253:2 0 45.1G 0 lvm /home # 扩容前,我们/home的大小为45GB,我们扩容后应该为95GB
    • sr0 11:0 1 4.6G 0 rom
    • [root@localhost ~]#
扩容步骤
  1. 先在Esxi上给虚拟机扩容,扩容好后启动该虚拟机(扩容的时候需要关掉虚拟机电源
    image-20230601200707782
    说明:
    1. 需要先关掉虚拟机电源;
    2. 不能有快照,否则会导致无法修改磁盘大小;
  2. 登录该虚拟机,通过fdisk -l查看我们刚才新增的磁盘容量是否已经增加
    • [root@localhost ~]# fdisk -l
    • 磁盘 /dev/sda:161.1 GB, 161061273600 字节,314572800 个扇区 # 原来这里是100GB,现在有150GB了(多余的10GB也不知道哪来的)
    • Units = 扇区 of 1 * 512 = 512 bytes
    • 扇区大小(逻辑/物理):512 字节 / 512 字节
    • I/O 大小(最小/最佳):512 字节 / 512 字节
    • 磁盘标签类型:dos
    • 磁盘标识符:0x000bb65d
    • 设备 Boot Start End Blocks Id System
    • /dev/sda1 * 2048 2099199 1048576 83 Linux
    • /dev/sda2 2099200 209715199 103808000 8e Linux LVM # 目前看只有sda1和sda2两个分区
    • 磁盘 /dev/mapper/euleros-root:53.7 GB, 53687091200 字节,104857600 个扇区
    • Units = 扇区 of 1 * 512 = 512 bytes
    • 扇区大小(逻辑/物理):512 字节 / 512 字节
    • I/O 大小(最小/最佳):512 字节 / 512 字节
    • 磁盘 /dev/mapper/euleros-swap:4160 MB, 4160749568 字节,8126464 个扇区
    • Units = 扇区 of 1 * 512 = 512 bytes
    • 扇区大小(逻辑/物理):512 字节 / 512 字节
    • I/O 大小(最小/最佳):512 字节 / 512 字节
    • 磁盘 /dev/mapper/euleros-home:48.4 GB, 48444211200 字节,94617600 个扇区
    • Units = 扇区 of 1 * 512 = 512 bytes
    • 扇区大小(逻辑/物理):512 字节 / 512 字节
    • I/O 大小(最小/最佳):512 字节 / 512 字节
  3. 新增分区
    • [root@localhost ~]# fdisk /dev/sda # 通过该命令新增分区
    • 欢迎使用 fdisk (util-linux 2.23.2)。
    • 更改将停留在内存中,直到您决定将更改写入磁盘。
    • 使用写入命令前请三思。
    • 命令(输入 m 获取帮助):n # n 新增分区
    • Partition type:
    • p primary (2 primary, 0 extended, 2 free)
    • e extended
    • Select (default p): # 不输入直接回车代表默认p,主分区
    • Using default response p
    • 分区号 (3,4,默认 3): # 直接回车默认即可
    • 起始 扇区 (209715200-314572799,默认为 209715200): # 回车默认即可
    • 将使用默认值 209715200
    • Last 扇区, +扇区 or +size{K,M,G} (209715200-314572799,默认为 314572799): # 回车默认即可
    • 将使用默认值 314572799
    • 分区 3 已设置为 Linux 类型,大小设为 50 GiB
    • 命令(输入 m 获取帮助):t # 输入命令t
    • 分区号 (1-3,默认 3): # 回车默认即可
    • Hex 代码(输入 L 列出所有代码):8e # 输入8e8e代表Linux LVM分区类型)
    • 已将分区“Linux”的类型更改为“Linux LVM
    • 命令(输入 m 获取帮助):w # 保存以上更改信息
    • The partition table has been altered!
    • Calling ioctl() to re-read partition table.
    • WARNING: Re-reading the partition table failed with error 16: 设备或资源忙.
    • The kernel still uses the old table. The new table will be used at
    • the next reboot or after you run partprobe(8) or kpartx(8)
    • 正在同步磁盘。
    • [root@localhost ~]#
  4. 再次查看分区,发现多了/dev/sda3这个分区
    • [root@localhost ~]# fdisk -l
    • 磁盘 /dev/sda:161.1 GB, 161061273600 字节,314572800 个扇区
    • Units = 扇区 of 1 * 512 = 512 bytes
    • 扇区大小(逻辑/物理):512 字节 / 512 字节
    • I/O 大小(最小/最佳):512 字节 / 512 字节
    • 磁盘标签类型:dos
    • 磁盘标识符:0x000bb65d
    • 设备 Boot Start End Blocks Id System
    • /dev/sda1 * 2048 2099199 1048576 83 Linux
    • /dev/sda2 2099200 209715199 103808000 8e Linux LVM
    • /dev/sda3 209715200 314572799 52428800 8e Linux LVM # 多了这个分区,而且类型是Linux LVM
    • 磁盘 /dev/mapper/euleros-root:53.7 GB, 53687091200 字节,104857600 个扇区
    • Units = 扇区 of 1 * 512 = 512 bytes
    • 扇区大小(逻辑/物理):512 字节 / 512 字节
    • I/O 大小(最小/最佳):512 字节 / 512 字节
    • 磁盘 /dev/mapper/euleros-swap:4160 MB, 4160749568 字节,8126464 个扇区
    • Units = 扇区 of 1 * 512 = 512 bytes
    • 扇区大小(逻辑/物理):512 字节 / 512 字节
    • I/O 大小(最小/最佳):512 字节 / 512 字节
    • 磁盘 /dev/mapper/euleros-home:48.4 GB, 48444211200 字节,94617600 个扇区
    • Units = 扇区 of 1 * 512 = 512 bytes
    • 扇区大小(逻辑/物理):512 字节 / 512 字节
    • I/O 大小(最小/最佳):512 字节 / 512 字节
    • [root@localhost ~]#
    通过lsblk查看分区情况
    • [root@localhost ~]# lsblk
    • NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
    • sda 8:0 0 150G 0 disk
    • ├─sda1 8:1 0 1G 0 part /boot
    • ├─sda2 8:2 0 99G 0 part
    • │ ├─euleros-root 253:0 0 50G 0 lvm /
    • │ ├─euleros-swap 253:1 0 3.9G 0 lvm [SWAP]
    • │ └─euleros-home 253:2 0 45.1G 0 lvm /home
    • └─sda3 8:3 0 50G 0 part # 如果这时候还看不到sda3,那需要重启一下虚拟机
    • sr0 11:0 1 4.6G 0 rom
    • [root@localhost ~]#
    说明:
    如果这时候通过lsblk还看不到新增的分区sda3,需要重启一下该虚拟机,否则下一步无法进行,会报错。
  5. 格式化新建的分区
    • [root@localhost ~]# mke2fs -t ext4 /dev/sda3
    • mke2fs 1.45.0 (6-Mar-2019)
    • 创建含有 13107200 个块(每块 4k)和 3276800 个inode的文件系统
    • 文件系统UUID:a3d078f0-6563-44da-a3a4-f5170d10fcdd
    • 超级块的备份存储于下列块:
    • 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
    • 4096000, 7962624, 11239424
    • 正在分配组表: 完成
    • 正在写入inode表: 完成
    • 创建日志(65536 个块)完成
    • 写入超级块和文件系统账户统计信息: 已完成
    • [root@localhost ~]#
    说明:
    根据实际情况,如果系统类型是xfs,那么需要改成mke2fs -t xfs /dev/sda3
  6. 合并分区
    • [root@localhost ~]# lvm # 进入逻辑卷操作命令行
    • lvm> pvcreate /dev/sda3 # 创建物理卷/dev/sda3
    • WARNING: ext4 signature detected on /dev/sda3 at offset 1080. Wipe it? [y/n]: y
    • Wiping ext4 signature on /dev/sda3.
    • Physical volume "/dev/sda3" successfully created.
    • lvm> vgdisplay # 查看逻辑卷分组
    • --- Volume group ---
    • VG Name euleros # 这个是卷组名称,接下来的命令要用到
    • System ID
    • Format lvm2
    • Metadata Areas 2
    • Metadata Sequence No 5
    • VG Access read/write
    • VG Status resizable
    • MAX LV 0
    • Cur LV 3
    • Open LV 3
    • Max PV 0
    • Cur PV 2
    • Act PV 2
    • VG Size 148.99 GiB
    • PE Size 4.00 MiB
    • Total PE 38142
    • Alloc PE / Size 25342 / 98.99 GiB
    • Free PE / Size 12800 / 50.00 GiB
    • VG UUID FhkADC-CfQ8-OKwB-MK4z-V4Aw-U6xe-M4oQ8U
    • lvm> vgextend euleros /dev/sda3 # 将/dev/sda3这个逻辑卷加入到euleros卷组中
    • Volume group "euleros" successfully extended
    • lvm> vgdisplay -v # 查看卷组详细信息
    • --- Volume group ---
    • VG Name euleros
    • System ID
    • Format lvm2
    • Metadata Areas 2
    • Metadata Sequence No 5
    • VG Access read/write
    • VG Status resizable
    • MAX LV 0
    • Cur LV 3
    • Open LV 3
    • Max PV 0
    • Cur PV 2
    • Act PV 2
    • VG Size 148.99 GiB
    • PE Size 4.00 MiB
    • Total PE 38142
    • Alloc PE / Size 25342 / 98.99 GiB
    • Free PE / Size 12800 / 50.00 GiB
    • VG UUID FhkADC-CfQ8-OKwB-MK4z-V4Aw-U6xe-M4oQ8U
    • --- Logical volume ---
    • LV Path /dev/euleros/swap
    • LV Name swap
    • VG Name euleros
    • LV UUID LHH1Ye-9wAv-TC7p-fZPM-rEcO-sVl9-IZij2F
    • LV Write Access read/write
    • LV Creation host, time localhost, 2023-06-01 18:58:51 +0800
    • LV Status available
    • # open 2
    • LV Size <3.88 GiB
    • Current LE 992
    • Segments 1
    • Allocation inherit
    • Read ahead sectors auto
    • - currently set to 8192
    • Block device 253:1
    • --- Logical volume ---
    • LV Path /dev/euleros/home # 逻辑卷的名称,也是我们需要扩容的卷
    • LV Name home
    • VG Name euleros
    • LV UUID 0wYhhL-V0t7-EwvK-hJWZ-2RdL-foUz-URQnw7
    • LV Write Access read/write
    • LV Creation host, time localhost, 2023-06-01 18:58:51 +0800
    • LV Status available
    • # open 1
    • LV Size <45.12 GiB
    • Current LE 11550
    • Segments 1
    • Allocation inherit
    • Read ahead sectors auto
    • - currently set to 8192
    • Block device 253:2
    • --- Logical volume ---
    • LV Path /dev/euleros/root
    • LV Name root
    • VG Name euleros
    • LV UUID ppqcnE-qWsb-qhsX-QY2a-TvXj-ePVv-xotD3h
    • LV Write Access read/write
    • LV Creation host, time localhost, 2023-06-01 18:58:54 +0800
    • LV Status available
    • # open 1
    • LV Size 50.00 GiB
    • Current LE 12800
    • Segments 1
    • Allocation inherit
    • Read ahead sectors auto
    • - currently set to 8192
    • Block device 253:0
    • --- Physical volumes ---
    • PV Name /dev/sda2
    • PV UUID hA5CGs-b8LD-04SG-1nAq-nIU4-kMlj-wx3z2r
    • PV Status allocatable
    • Total PE / Free PE 25343 / 1 # 这里是已经分配的,后面空闲大小为1可以看出来
    • PV Name /dev/sda3 # 这会我们就能看到/dev/sda3这个物理卷了
    • PV UUID 2U4wD1-vRFM-7Umi-v5ka-006u-9Qlh-AOxOkZ
    • PV Status allocatable # 说明是可以分配的
    • Total PE / Free PE 12799 / 12799 # 这是这个卷的总大小/空闲大小
    • lvm> lvextend -l+12799 /dev/mapper/euleros-home # 增加逻辑卷容量,12799为上面看到的空闲容量
    • Size of logical volume euleros/home changed from <45.12 GiB (11550 extents) to 95.11 GiB (24349 extents).
    • Logical volume euleros/home successfully resized.
    • lvm>
    说明:
    主要操作命令:
    1. pvcreate /dev/sda3 ## 创建物理卷/dev/sda3
    2. vgextend euleros /dev/sda3 ## 将/dev/sda3这个逻辑卷加入到euleros卷组中
    3. lvextend -l+12799 /dev/mapper/euleros-home # 增加逻辑卷容量,-l或-L后面根可扩展的磁盘大小,为12799为可分配的空闲容量大小,/dev/mapper/euleros-home 可以根据df -hT看到,也就是我们要扩容的磁盘分区
  7. 最后扩容文件系统,让系统识别
    • [root@localhost ~]# resize2fs /dev/mapper/euleros-home
    • resize2fs 1.45.0 (6-Mar-2019)
    • /dev/mapper/euleros-home 上的文件系统已被挂载于 /home;需要进行在线调整大小
    • old_desc_blocks = 6, new_desc_blocks = 12
    • /dev/mapper/euleros-home 上的文件系统现在为 24933376 个块(每块 4k)。
    • [root@localhost ~]#
    说明:
    如果是xfs类型的文件系统,需要用xfs_growfs命令,如:xfs_growfs /dev/mapper/euleros-home
扩容后

所有操作完成了,我们来检验一下我们的成果。

  1. 通过df -hT检查磁盘容量是否真的增加了
    • [root@localhost ~]# df -hT
    • 文件系统 类型 容量 已用 可用 已用% 挂载点
    • /dev/mapper/euleros-root ext4 49G 1.2G 46G 3% /
    • devtmpfs devtmpfs 1.9G 0 1.9G 0% /dev
    • tmpfs tmpfs 1.9G 0 1.9G 0% /dev/shm
    • tmpfs tmpfs 1.9G 8.9M 1.9G 1% /run
    • tmpfs tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
    • /dev/sda1 ext4 976M 115M 795M 13% /boot
    • /dev/mapper/euleros-home ext4 94G 60M 90G 1% /home # 原来总容量是45GB,现在变成了94GB,说明确实如我们所想那样扩容了50GB
    • tmpfs tmpfs 378M 0 378M 0% /run/user/0
    • [root@localhost ~]#
  2. 通过lsblk命令再次查看确认
    • [root@localhost ~]# lsblk
    • NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
    • sda 8:0 0 150G 0 disk
    • ├─sda1 8:1 0 1G 0 part /boot
    • ├─sda2 8:2 0 99G 0 part
    • │ ├─euleros-root 253:0 0 50G 0 lvm /
    • │ ├─euleros-swap 253:1 0 3.9G 0 lvm [SWAP]
    • │ └─euleros-home 253:2 0 95.1G 0 lvm /home # 这里总大小也确实增涨为95GB了
    • └─sda3 8:3 0 50G 0 part
    • └─euleros-home 253:2 0 95.1G 0 lvm /home
    • sr0 11:0 1 4.6G 0 rom
    • [root@localhost ~]#
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门