I have a laptop with Windows and Ubuntu installed on the same drive. I need to change the partition sizes, possibly shrinking my Ubuntu home partition to make more room for Windows. When I tried using GParted from a live Ubuntu session, it warned that Windows might no longer boot after the resize. Is there a safe way to resize the partitions while keeping both operating systems bootable?
3 Answers
If you are making the Windows partition smaller, do that from inside Windows using Disk Management. Windows can account for files such as the pagefile, restore points, and other data that cannot easily be moved while the system is offline. After creating unallocated space, you can use GParted from a live USB to move or resize the Linux partition if necessary.
If the space is coming from Ubuntu rather than Windows, use GParted while booted from a live USB, with the Ubuntu partitions unmounted. Back up both systems first. Shrinking a Linux filesystem is generally possible, but moving partitions can take a long time and an interruption could make the system unbootable. Check the partition order carefully and leave the EFI system partition and Windows recovery partitions intact.
The safest approach depends on which partition is being reduced and where the resulting unallocated space sits. Windows Disk Management is best for shrinking Windows, while GParted is needed for shrinking or moving Linux partitions. Afterward, Windows may need its boot files repaired and Ubuntu’s bootloader may need refreshing, so prepare Windows installation or recovery media and an Ubuntu live USB before starting. Do not proceed without a full backup.

I only have one physical drive, so I’ll make sure everything important is backed up before changing the layout.