I have used fdisk to move Ubuntu Mate partitions from a 1M boundary to start on a 4M boundary on a SD card.
The "boot" partition now starts at block 8192.
This is how the Raspbian distributions are configured, which makes perfect sense for the partitions to align with an Erase Block Group.
This is working OK, but gparted shows a 4M unused block before the "boot" partition which it does not show for Raspbian.
My question is how does the system "know" the 1st 4M is reserved for boot on one disk, but think only 1M is reserved on my modified disk.
EDIT
I just purchased a brand new 8GiB SDHC memory card which has a FAT32Lba partition starting at block 8192. I dumped the 1st 4MiB which contains 00 except for the 16bytes containing the partition table, so there does not seem to be anything special here.