Use the right tool for the job. gparted
is a partition editor, not a data mover. For that, you want something like dd
. Check the manpage - it's an old program, and its commands are a bit atypical compared to modern tools - but it should be simple enough. You can copy entire disks (with all data, including boot records and partition tables), or just copy individual partitions (which will include the partition header / volume boot record). You can use gparted
to resize partitions before (or after) copying, of course, or to pre-create the partition layout if you want to copy partitions one at a time. I recommend using a reasonable block size (the BS
parameter) for dd
; a few megabytes at least. It's pretty slow on anything the size of a disk (or even partition) otherwise.
I have no idea how important the Microsoft Reserved partitions that Windows loves to create these days really are. I think they might be related to the Win8+ refresh/reset features of Windows, but I really don't know. They're usually quite small, though, so I would just copy them unless you have a reason not to. dd
doesn't need to know the layout; it just copies blocks of data.
To use convert.exe
with a partition, you need to mount it first. By default, Windows does not mount the EFI System partition. The C:
drive is the OS partition, which is something else entirely (and Windows hasn't supported booting from one of those formatted as FAT32 since Vista). To mount the EFI system partition, try using the mountvol.exe
command. For example, mountvol S: /S
. If that doesn't work for some reason, you can do it using diskpart.exe
and its assign
command. Note that these commands must be run as Admin. After mounting the EFI System partition, you can (assuming you mounted it at drive S:) use convert S: /FS:NTFS
to convert the partition to NTFS.