Detect new disk size
With virtual machines (VMware at least), you can resize the disk drives without restarting the VM itself. After doing that, you have to get Linux to recognize the new disk drive size. Use one of these (found here
and here) – assuming the modified drive is /dev/sdc:
hdparm -z /dev/sdcecho 1 > /sys/block/sdc/device/rescanpartprobe /dev/sdc
Check the success with fdisk -l.
Resize partition
Using parted, there’s the resize command. But this is not as robust, as using resize2fs from the e2fsprogs package. So the recommended way is to manually resize the partition using parted and then run resize2fs to do the actual resize operation.
Make sure to switch to unit s (sectors) in parted and print the partition table before doing anything to it so that you can refer to it later.
Fill Empty Space
To fill empty space with zeroes (to e.g. reduce the partition size using vmkfstools), use this command (found here):
nice cat /dev/zero > zero.fill; sync; sleep 1; sync; rm -f zero.fill