Can't resize NTFS partition using GParted (ntfsresize)

I wanted to clone an old and slow 2tb HDD (230gb used, everything else is backed up) to a 240gb SSD with Clonezilla. It gave me errors, saying that the disk is to big to clone.

I decided to boot GParted live and move and resize the HDD partitions so they could fit on the SSD. The main Windows file partition would be resized from 1.81tb to 210gb and other partitions at the back of the disk moved closer. Then later I would rebuid EFI to reset boot order.

The problem is, that to resize an NTFS partition, GParted uses "ntfsresize" which halts the process if it finds bad sectors and requires the user to run "chkdsk /f" and reboot TWICE, and so I did.

I got my Windows 10 iso, went to cli and ran "chkdsk C: /f /r" so it could find and repair any damaged sectors. It ran overnight and when finished showed 0kb of bad sectors. Rebooted twice.

Back at GParted and get the same error again.

My question: Is there any other way around using "ntfsresize" and using different tools to resize disk, or even clone without resizing. Thank you

Edits:

1: I'm currently trying to shrink the windows volume using DISKPART. 2: "Specified shrink size too big and will cause volume to be smaller than minimum size." Same message when selecting volume or partition.


Solution 1:

My question: Is there any other way around using "ntfsresize" and using different tools to resize disk, or even clone without resizing. Thank you

Clone it at file level – use DISM (from the Win10 installer's CLI) to capture a .wim image from the old disk, then apply it to the new disk. This is almost the same mechanism as how Windows is installed, and it should preserve all file metadata that is needed for Windows to run.

(Though, I would suggest that if the old disk has 230 GB used, then a 240 GB SSD is a bit too small – even if the files fit, you'll likely have problems with OS upgrades not having enough space for the staging area.)

DISM will only clone the C: partition, you will still need to create an EFI system partition using DISKPART and BCDBOOT (or copy an existing one with CloneZilla) before doing this.

Solution 2:

Just running a Windows program to "fix" bad sectors isn't necessarily going to work, especially if it ran all night long. It's likely that it made many tries to read some sectors - but failed and moved onto the next sector. Does chkdsk validate your GPT/MBR partition information?

If a sector can't be read, it can't be repaired.

Presumably, you just want to transfer the data to the SSD? If you want to install Windows onto the SSD, you could do that, followed by transferring the user data?