Stuck at GNU Grub 2.04 when booting

Basically I have a dual boot with Zorin OS and windows 10

Both were working fine until I wanted to add more space from windows to Zorin OS.

I shrunk the drive and created 100gb unallocated space in windows and booted up live USB to add this space onto the Zorin OS partition using gparted. However gparted wouldn't let me do it.

So I tried rebooting into Zorin OS to check everything was still ok and it wasn't, I was stuck at this grub 2.04 text screen. I tried booting back into live USB to run boot repair but recommended repair option isn't there.

However the Zorin partition is still displayed in gparted and I can still boot into windows fine using boot selection in bios.

Any help please?

Thanks!!

The partition may have been mounted, even if you rebooted. The partition must be unmounted to alter it.

I have needed to follow the following procedure before:

No it's not mounted after checking with gparted on live-usb

(Sorry for no screenshot as I don't wanna keep logging in to forums every time I reboot)

Have you tried formatting that partition to ext4, first?

I can't cause that has my Zorin installation on it

I am referring to the partition you created when you shrunk Windows.

No the "unallocated" at the bottom shown in the screenshot is the new partition created from the shrunk windows partition

Sorry I am still new to Linux and don't understand a lot

Can you please label your partitions Given sda1, sda2, sda3... Which contains Windows and which contains Zorin OS?

Unsure what sda1 is, says basic data partition, is only 500mb and has hidden and Diag flags

sda2 is EFI system partition
sda3 Microsoft reserved partition
sda4 is my windows 10 install
sda5 is Zorin os (which displays as unknown filesystem)

That would be your EFI Boot Partition.

Oof... they need to be adjacent in order to expand Zorin into the freespace - and they are.
But Zorin OS is reading as Unknown FS...
Not good... Have you tried running fsck on the drive?

What would I need to write in terminal to check?

I tried to run it on the Zorin partition. Is this right?

Drive corruption, possible due to disk failure...
Can you follow the prompts to try e2fsck and see what you get...

I tried both but they just displayed the same thing.

Really unsure what I've done here to get it like this. I didn't even add the unallocated space onto Zorin yet.

Let's assume for the moment that there is Drive Failure...
The System will move data to occupy new space if it outgrows its assigned space, avoiding bad sectors or blocks. This is normal with ext4 journaling file system.
But if partitioning occurs during drive failure; then the shuffling of many blocks can cause data to be placed on a bad sector or block. It Brings into the spotlight the drive failure that had been going on for a while.
I am not saying that this is the case, but it makes sense and seems a probable explanation. It's not something you did or could have predicted, if so.
You might run a S.M.A.R.T. test on the drive to check.
In the meantime:
Create a superblock backup

mke2fs -n /dev/sda5

It will list stored superblock backups. Pick the First Number (For example 12345 and replace the 12345 below with the actual number you see in the terminal window) and use it to try running fsck using the backup you just made:

fsck -b 12345 /dev/sda5

Test if successful by mounting it:

mount -o barrier=0 /dev/sda5 /media/sda

Here's the output of the commands you gave

Have you tried the alternate blocks it suggests?
e2fsck -b 32768 /dev/sda5

Yes I tried both of them

Using your Live Media... are you able to access your personal files and make back ups?
Honestly, At this point, if this was me, I would back up - check drive integrity and if it is reasonably usable, perform a reinstallation. The unknown partition and Existing Zorin partitions can be deleted and reclaim the space both creates.