How to Increase Virtual Machine Disk Space Without Rebooting

by Simon Sparks · 7 March 2026

This procedure works on Fedora based Linux distributions e.g. Fedora, CentOS, Rocky, Red Hat Enterprise Linux.

Login to vCenter UI, find the virtual machine you need to increase the disk space of and change the hard disk size and units to your desired size.

vCenter – Virtual Machine – Edit Settings

Command Line: Check the current physical disk layout.

lsblk
Bash

Result: There is only 1 physical disk labelled SDA with a size of 900GB.

NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda           8:0    0   900G  0 disk
├─sda1        8:1    0   600M  0 part /boot/efi
├─sda2        8:2    0     1G  0 part /boot
└─sda3        8:3    0 898.4G  0 part
  ├─rl-root 253:0    0 896.4G  0 lvm  /
  └─rl-swap 253:1    0     2G  0 lvm  [SWAP]
sr0          11:0    1  1024M  0 rom
Bash

Command Line: Scan the physical disk labelled SDA for any changes.

echo 1 > /sys/block/sda/device/rescan
Bash

Result: This command does not have any output.

# NO OUTPUT
Bash

Command Line: Check the current physical disk layout.

lsblk
Bash

Result: Notice that SDA now shows as been a physical disk with a size of 1.2TB.

NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda           8:0    0   1.2T  0 disk
├─sda1        8:1    0   600M  0 part /boot/efi
├─sda2        8:2    0     1G  0 part /boot
└─sda3        8:3    0 898.4G  0 part
  ├─rl-root 253:0    0 896.4G  0 lvm  /
  └─rl-swap 253:1    0     2G  0 lvm  [SWAP]
sr0          11:0    1  1024M  0 rom
Bash

Command Line: Use Dandified YUM to install the package.

dnf install cloud-utils-growpart
Bash

Result: Dandified YUM has installed the package.

Last metadata expiration check: 2:17:26 ago on Tue Mar  3 08:25:22 2026.
Dependencies resolved.
=======================================================================================================================================================================================
 Package                                             Architecture                          Version                                      Repository                                Size
=======================================================================================================================================================================================
Installing:
 cloud-utils-growpart                                x86_64                                0.33-1.el9                                   appstream                                 34 k

Transaction Summary
=======================================================================================================================================================================================
Install  1 Package

Total download size: 34 k
Installed size: 75 k
Is this ok [y/N]: y
Downloading Packages:
cloud-utils-growpart-0.33-1.el9.x86_64.rpm                                                                                                             286 kB/s |  34 kB     00:00
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                                  115 kB/s |  34 kB     00:00
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                                                                                               1/1
  Installing       : cloud-utils-growpart-0.33-1.el9.x86_64                                                                                                                        1/1
  Running scriptlet: cloud-utils-growpart-0.33-1.el9.x86_64                                                                                                                        1/1
  Verifying        : cloud-utils-growpart-0.33-1.el9.x86_64                                                                                                                        1/1
Installed products updated.

Installed:
  cloud-utils-growpart-0.33-1.el9.x86_64

Complete!
Bash

Command Line: Use the growpart utility to run a dry run of the process to extend partition number 3 of the physical disk labelled SDA.

growpart /dev/sda 3 --dry-run
Bash

Result: The growpart utility dry run process reports the actions it will take when it is not used in dry run mode.

CHANGE: partition=3 start=3328000 old: size=1884108767 end=1887436766 new: size=2513254367 end=2516582366
# === old sfdisk -d ===
label: gpt
label-id: ED0A7588-2032-4DE4-8360-6B569C854D64
device: /dev/sda
unit: sectors
first-lba: 34
sector-size: 512

/dev/sda1 : start=        2048, size=     1228800, type=C12A7328-F81F-11D2-BA4B-00A0C93EC93B, uuid=02E74B9C-1704-4FEE-8F16-32FAB02CB10A, name="EFI System Partition"
/dev/sda2 : start=     1230848, size=     2097152, type=0FC63DAF-8483-4772-8E79-3D69D8477DE4, uuid=64C2B81A-9613-4DD6-8D87-C3D75CD4D81D
/dev/sda3 : start=     3328000, size=  1884108767, type=E6D6D379-F507-44C2-A23C-238F2A3DF928, uuid=80C9D957-0D30-42C0-A603-D9078982485D
# === new sfdisk -d ===
label: gpt
label-id: ED0A7588-2032-4DE4-8360-6B569C854D64
device: /dev/sda
unit: sectors
first-lba: 34
sector-size: 512

/dev/sda1 : start=        2048, size=     1228800, type=C12A7328-F81F-11D2-BA4B-00A0C93EC93B, uuid=02E74B9C-1704-4FEE-8F16-32FAB02CB10A, name="EFI System Partition"
/dev/sda2 : start=     1230848, size=     2097152, type=0FC63DAF-8483-4772-8E79-3D69D8477DE4, uuid=64C2B81A-9613-4DD6-8D87-C3D75CD4D81D
/dev/sda3 : start=     3328000, size=  2513254367, type=E6D6D379-F507-44C2-A23C-238F2A3DF928, uuid=80C9D957-0D30-42C0-A603-D9078982485D
Bash

Command Line: Use the growpart utility to run the process to extend partition number 3 of the physical disk labelled SDA.

growpart /dev/sda 3
Bash

Result: The growpart utility process reports the actions has taken.

CHANGED: partition=3 start=3328000 old: size=1884108767 end=1887436766 new: size=2513254367 end=2516582366
Bash

Command Line: Check the current physical disk layout.

lsblk
Bash

Result: Notice that SDA partition 3 now shows as being a size of 1.2TB.

NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda           8:0    0   1.2T  0 disk
├─sda1        8:1    0   600M  0 part /boot/efi
├─sda2        8:2    0     1G  0 part /boot
└─sda3        8:3    0   1.2T  0 part
  ├─rl-root 253:0    0 896.4G  0 lvm  /
  └─rl-swap 253:1    0     2G  0 lvm  [SWAP]
sr0          11:0    1  1024M  0 rom
Bash

Command Line: Run the Logical Volume Manager (LVM) physical volume display command.

pvdisplay
Bash

Result: The Logical Volume Manager (LVM) displays the physical volumes.

  --- Physical volume ---
  PV Name               /dev/sda3
  VG Name               rl
  PV Size               1.17 TiB / not usable 1.98 MiB
  Allocatable           yes
  PE Size               4.00 MiB
  Total PE              306793
  Free PE               76800
  Allocated PE          229993
  PV UUID               sbrOJO-Ctwi-z7PT-Fta9-T8V8-Ubxi-Oob3G4
Bash

Command Line: Run the Logical Volume Manager (LVM) logical volume display command.

lvdisplay
Bash

Result: The Logical Volume Manager (LVM) displays the logical volumes.

  --- Logical volume ---
  LV Path                /dev/rl/swap
  LV Name                swap
  VG Name                rl
  LV UUID                ItRBdl-lcWU-SGQ1-sgBm-aOsH-dfVL-1Lud3B
  LV Write Access        read/write
  LV Creation host, time rocky-9.cloudbuildtools.com, 2023-03-26 12:17:46 +0100
  LV Status              available
  # open                 2
  LV Size                2.00 GiB
  Current LE             512
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:1

  --- Logical volume ---
  LV Path                /dev/rl/root
  LV Name                root
  VG Name                rl
  LV UUID                kGDYqY-Pwvw-8dR0-JIna-BZNC-eSNh-euFOPk
  LV Write Access        read/write
  LV Creation host, time rocky-9.cloudbuildtools.com, 2023-03-26 12:17:46 +0100
  LV Status              available
  # open                 1
  LV Size                896.41 GiB
  Current LE             229481
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:0
Bash

Command Line: Run the Disk Free command with some additional parameters.

df --print-type --total --human-readable
Bash

Result: The Disk Free command reports the current state of the filesystem.

Filesystem          Type      Size  Used Avail Use% Mounted on
devtmpfs            devtmpfs  4.0M     0  4.0M   0% /dev
tmpfs               tmpfs     1.8G     0  1.8G   0% /dev/shm
tmpfs               tmpfs     731M  8.8M  723M   2% /run
efivarfs            efivarfs  256K   43K  209K  17% /sys/firmware/efi/efivars
/dev/mapper/rl-root xfs       897G  606G  291G  68% /
/dev/sda2           xfs      1014M  423M  592M  42% /boot
/dev/sda1           vfat      599M  7.1M  592M   2% /boot/efi
tmpfs               tmpfs     366M     0  366M   0% /run/user/0
total               -         900G  609G  593G  51% -
Bash

Command Line: Run the Logical Volume Manager (LVM) logical volume extend command.

lvextend --resizefs --extents +100%FREE /dev/rl/root
Bash

Result: The Logical Volume Manager (LVM) logical volume extend command completes the partition extension and also resizes the filesystem.

  File system xfs found on rl/root mounted at /.
  Size of logical volume rl/root changed from 896.41 GiB (229481 extents) to <1.17 TiB (306281 extents).
  Extending file system xfs to <1.17 TiB (1284635623424 bytes) on rl/root...
xfs_growfs /dev/rl/root
meta-data=/dev/mapper/rl-root    isize=512    agcount=219, agsize=1075456 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=1, sparse=1, rmapbt=0
         =                       reflink=1    bigtime=1 inobtcount=1 nrext64=0
data     =                       bsize=4096   blocks=234988544, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0, ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 234988544 to 313631744
xfs_growfs done
  Extended file system xfs on rl/root.
  Logical volume rl/root successfully resized.
Bash

Command Line: Run the Logical Volume Manager (LVM) logical volume display command.

lvdisplay
Bash

Result: The Logical Volume Manager (LVM) displays the logical volumes.

  --- Logical volume ---
  LV Path                /dev/rl/swap
  LV Name                swap
  VG Name                rl
  LV UUID                ItRBdl-lcWU-SGQ1-sgBm-aOsH-dfVL-1Lud3B
  LV Write Access        read/write
  LV Creation host, time rocky-9.cloudbuildtools.com, 2023-03-26 12:17:46 +0100
  LV Status              available
  # open                 2
  LV Size                2.00 GiB
  Current LE             512
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:1

  --- Logical volume ---
  LV Path                /dev/rl/root
  LV Name                root
  VG Name                rl
  LV UUID                kGDYqY-Pwvw-8dR0-JIna-BZNC-eSNh-euFOPk
  LV Write Access        read/write
  LV Creation host, time rocky-9.cloudbuildtools.com, 2023-03-26 12:17:46 +0100
  LV Status              available
  # open                 1
  LV Size                <1.17 TiB
  Current LE             306281
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           253:0
Bash

Command Line: Run the Disk Free command with some additional parameters.

df --print-type --total --human-readable
Bash

Result: The Disk Free command reports the current state of the filesystem.

Filesystem          Type      Size  Used Avail Use% Mounted on
devtmpfs            devtmpfs  4.0M     0  4.0M   0% /dev
tmpfs               tmpfs     1.8G     0  1.8G   0% /dev/shm
tmpfs               tmpfs     731M  8.8M  723M   2% /run
efivarfs            efivarfs  256K   43K  209K  17% /sys/firmware/efi/efivars
/dev/mapper/rl-root xfs       1.2T  608G  589G  51% /
/dev/sda2           xfs      1014M  423M  592M  42% /boot
/dev/sda1           vfat      599M  7.1M  592M   2% /boot/efi
tmpfs               tmpfs     366M     0  366M   0% /run/user/0
total               -         1.2T  609G  593G  51% -
Bash

Discover more from Cloud Build Tools

Subscribe to get the latest posts sent to your email.

You may also like