There is similar question about moving msr, but it asks about previous version of gparted which did not supported that: Move MSR partition?
Now, I know I can move msr left and right without a problem. But in my case msr was laying in-between of two other partitions, which I wanted to resize, and it was inconvenient. I wanted to make a jump move of it (see this about jump moving: Can Gparted make a jump move of a partition?) to get it out of the way.
But after I did it (copy, paste, delete original), Windows could not be booted anymore.
I noticed that new partition in Partition Type in cgdisk is “Linux filesystem”, but not Microsoft reserved. I fixed that, but it did not help.
I remembered original partition’s uniq guid before removing it. But even when I used original uniq partition guid for the new msr, it did not help.
The question is: why Windows disliked moving of msr? Can I fix it without reinstalling Windows?
Best Answer
Short answer: Yes, you can move msr to another location with gparted, but you also will need to keep some conditions (described further), otherwise, Windows could not be booted.
I explored which conditions caused boot failure using virtual machines. Here are the facts:
There should not be any skipped partition numbers between msr and windows partition if msr partition number is smaller than windows’ partition number.
To change partition number, use gdisk, type x, then t, then number of the partition, then new number which will be used for that partition, then w, then answer yes to write changes to drive.
you can shrink (or move) windows partition (ntfs disk C) from the beginning and from the end without a problem (at least for gpt booting).
What I did not tested is if it is possible to make it less than 16 Mib. If in gparted I moved a partition to the very end of the disk space, partition started displayed as 15 mb (I think the last sector is shorter than all other normal sectors) and after applying changes, it failed. Gparted refused to move that partition, because it does not know how to shrink “unknown filesystem”.