My hardDisk was working perfectly fine but all of a sudden, I felt that it was operating a bit slowly after a huge data transfer(around 250GB). So I decided to unmount and remount it, believing that it will fix the issue but as soon as I unmounted the drive, it wouldn't remount again. :(
This is the first time that I have had such low free space left on my drive, about 2.5GB free space left out of 2TB. Before, I used to always keep around 50-60GB free space. I believe that filling the hard drive up so high has caused this issue. I am not sure. :(
I am able to access the data in the hard-disk and recover it using M3 Partition Recovery software. As that software is able to access my hard drive so I believe that this issue should be resolvable but I am not sure how to do it.
Here is the error that I am getting when I try to re-mount the hard drive:

My Hard disk Details:

Here are a few things that I have tried to resolve the issue:
ntfsfix: I tried using ntfsfix but it failed to fix the issue by giving an error saying "Failed to Load $MFT"

ntfs-3g: I got the same error as above, ie, "Failed to Load $MFT"

fsck: I used this but it didn't do anything.

Using chkdsk in Windows to fix the issue:
I have dual-boot so I booted into Windows and ran chkdsk /f on Windows then rebooted into Windows twice." Then I ran "chkdsk /f X: where X is the external drive.
But chkdsk also failed to fix the issue.
Note: All of the above chkdsk operations were executed with administrator privileges.
- I also used "M3 Partition Recovery" on windows and it works perfectly well in accessing my hard disk and extracting data from it but it seems to not be able to fix the issue, although it says "Issue resolved" but I still can't access the hard drive. as you can see in the screenshots below:



so then I decided to use Testdisk, which was a very long and tedious process:
5)Testdisk: Below are all the screeshots of the whole process along with the log file for "Deep Search", It took around 18 hours to do the Deep Search. Below are all the files:





In this Above Screenshot, I selected the first option and not the 3rd option even though the 3rd option is highlighted in the screenshot, I didn't actually select Continue with it.

Logfile of the Deep Search Operation:
Thu Oct 28 11:27:07 2021
Command line: TestDisk
TestDisk 7.0, Data Recovery Utility, April 2015
Christophe GRENIER <[email protected]>
http://www.cgsecurity.org
OS: Linux, kernel 4.15.0-66-generic (#75~16.04.1-Ubuntu SMP Tue Oct 1 14:01:08 UTC 2019) x86_64
Compiler: GCC 5.3
ext2fs lib: 1.42.13, ntfs lib: libntfs-3g, reiserfs lib: none, ewf lib: none, curses lib: ncurses 6.0
/dev/sda: LBA, HPA, LBA48, DCO support
/dev/sda: size 250069680 sectors
/dev/sda: user_max 250069680 sectors
/dev/sda: native_max 250069680 sectors
/dev/sda: dco 250069680 sectors
Warning: can't get size for Disk /dev/mapper/control - 0 B - 0 sectors, sector size=512
Hard disk list
Disk /dev/sda - 128 GB / 119 GiB - CHS 15566 255 63, sector size=512 - SanDisk SSD U100 128GB, S/N:122853312102, FW:10.56.04
Disk /dev/sdb - 2000 GB / 1863 GiB - CHS 62016335 1 63, sector size=512 - Seagate FA GoFlex Desk, FW:0155
Partition table type (auto): Intel
Disk /dev/sdb - 2000 GB / 1863 GiB - Seagate FA GoFlex Desk
Partition table type: Intel
Analyse Disk /dev/sdb - 2000 GB / 1863 GiB - CHS 62016335 1 63
Geometry from i386 MBR: head=1 sector=63
NTFS at 1/0/1
heads/cylinder 255 (NTFS) != 1 (HD)
get_geometry_from_list_part_aux head=1 nbr=2
get_geometry_from_list_part_aux head=8 nbr=2
get_geometry_from_list_part_aux head=16 nbr=2
get_geometry_from_list_part_aux head=32 nbr=2
get_geometry_from_list_part_aux head=64 nbr=2
get_geometry_from_list_part_aux head=128 nbr=2
get_geometry_from_list_part_aux head=240 nbr=1
get_geometry_from_list_part_aux head=255 nbr=1
Current partition structure:
Warning: number of heads/cylinder mismatches 255 (NTFS) != 1 (HD)
1 * HPFS - NTFS 1 0 1 62016255 0 63 3907024065
search_part()
Disk /dev/sdb - 2000 GB / 1863 GiB - CHS 62016335 1 63
NTFS at 1/0/1
heads/cylinder 255 (NTFS) != 1 (HD)
filesystem size 3907024065
sectors_per_cluster 8
mft_lcn 786432
mftmirr_lcn 244189004
clusters_per_mft_record -10
clusters_per_index_record 1
HPFS - NTFS 1 0 1 62016255 0 63 3907024065
NTFS, blocksize=4096, 2000 GB / 1863 GiB
get_geometry_from_list_part_aux head=1 nbr=2
get_geometry_from_list_part_aux head=8 nbr=2
get_geometry_from_list_part_aux head=16 nbr=2
get_geometry_from_list_part_aux head=32 nbr=2
get_geometry_from_list_part_aux head=64 nbr=2
get_geometry_from_list_part_aux head=128 nbr=2
get_geometry_from_list_part_aux head=240 nbr=1
get_geometry_from_list_part_aux head=255 nbr=1
Warning: the current number of heads per cylinder is 1 but the correct value may be 128.
Results
* HPFS - NTFS 1 0 1 62016255 0 63 3907024065
NTFS, blocksize=4096, 2000 GB / 1863 GiB
Hint for advanced users. dmsetup may be used if you prefer to avoid to rewrite the partition table for the moment:
echo "0 3907024065 linear /dev/sdb 63" | dmsetup create test0
interface_write()
1 * HPFS - NTFS 1 0 1 62016255 0 63 3907024065
search_part()
Disk /dev/sdb - 2000 GB / 1863 GiB - CHS 62016335 1 63
NTFS at 1/0/1
heads/cylinder 255 (NTFS) != 1 (HD)
filesystem size 3907024065
sectors_per_cluster 8
mft_lcn 786432
mftmirr_lcn 244189004
clusters_per_mft_record -10
clusters_per_index_record 1
HPFS - NTFS 1 0 1 62016255 0 63 3907024065
NTFS, blocksize=4096, 2000 GB / 1863 GiB
BAD_RS LBA=1263756759 43696
check_part_i386 failed for partition type 04
FAT16 <32M 20059631 0 7 51166304 0 26 1959720419
BAD_RS LBA=1079596174 34696
check_part_i386 failed for partition type 06
FAT16 >32M 17136447 0 14 35899043 0 62 1182043597
BAD_RS LBA=2970128932 69003
check_part_i386 failed for partition type 0B
FAT32 47144903 0 44 50248592 0 26 195532390
BAD_RS LBA=1756227370 59103
check_part_i386 failed for partition type 07
HPFS - NTFS 27876624 0 59 94453147 0 12 4194320903
This partition ends after the disk limits. (start=1756227370, size=4194320903, end=5950548272, disk end=3907029167)
BAD_RS LBA=3869828590 65342
check_part_i386 failed for partition type 0C
FAT32 LBA 61425850 0 41 106776923 0 25 2857117584
This partition ends after the disk limits. (start=3869828590, size=2857117584, end=6726946173, disk end=3907029167)
BAD_RS LBA=1031325279 17335
check_part_i386 failed for partition type 04
FAT16 <32M 16370242 0 34 61819040 0 36 2863274277
BAD_RS LBA=2137074000 36283
check_part_i386 failed for partition type 04
FAT16 <32M 33921809 0 34 101997321 0 55 4288757278
This partition ends after the disk limits. (start=2137074000, size=4288757278, end=6425831277, disk end=3907029167)
BAD_RS LBA=4592864492 49226
check_FAT: can't read FAT boot sector
check_part_i386 failed for partition type 01
FAT12 72902610 0 63 113368966 0 56 2549380422
This partition ends after the disk limits. (start=4592864492, size=2549380422, end=7142244913, disk end=3907029167)
LVM magic value at 11775090/0/1
recover_EXT2: s_block_group_nr=0/152, s_mnt_count=1/4294967295, s_blocks_per_group=32768, s_inodes_per_group=8176
recover_EXT2: s_blocksize=4096
recover_EXT2: s_blocks_count 4999744
recover_EXT2: part_size 39997952
Linux 12156353 0 1 12791241 0 8 39997952
ext4 blocksize=4096 Large_file Sparse_SB Recover, 20 GB / 19 GiB
BAD_RS LBA=3920760379 31127
check_FAT: can't read FAT boot sector
check_part_i386 failed for partition type 01
FAT12 62234291 0 47 73953843 0 10 738331740
This partition ends after the disk limits. (start=3920760379, size=738331740, end=4659092118, disk end=3907029167)
BAD_RS LBA=3473508731 34686
check_part_i386 failed for partition type 04
FAT16 <32M 55135059 0 15 79359492 0 60 1526139325
This partition ends after the disk limits. (start=3473508731, size=1526139325, end=4999648055, disk end=3907029167)
BAD_RS LBA=2761860265 61462
check_part_i386 failed for partition type 0C
FAT32 LBA 43839051 0 53 68303526 0 47 1541261920
This partition ends after the disk limits. (start=2761860265, size=1541261920, end=4303122184, disk end=3907029167)
BAD_RS LBA=2008456376 19143
check_part_i386 failed for partition type 04
FAT16 <32M 31880259 0 60 39448208 0 16 476780744
block_group_nr 81
recover_EXT2: "e2fsck -b 2654208 -B 4096 device" may be needed
recover_EXT2: s_block_group_nr=81/160, s_mnt_count=0/4294967295, s_blocks_per_group=32768, s_inodes_per_group=8192
recover_EXT2: s_blocksize=4096
recover_EXT2: s_blocks_count 5242880
recover_EXT2: part_size 41943040
Linux 24604289 0 49 25270052 0 19 41943040
ext4 blocksize=4096 Large_file Sparse_SB Backup_SB, 21 GB / 20 GiB
block_group_nr 1
recover_EXT2: "e2fsck -b 32768 -B 4096 device" may be needed
recover_EXT2: s_block_group_nr=1/160, s_mnt_count=0/4294967295, s_blocks_per_group=32768, s_inodes_per_group=8192
recover_EXT2: s_blocksize=4096
recover_EXT2: s_blocks_count 5242880
recover_EXT2: part_size 41943040
Linux 25024102 0 14 25689864 0 47 41943040
ext4 blocksize=4096 Large_file Sparse_SB Backup_SB, 21 GB / 20 GiB
block_group_nr 5
recover_EXT2: "e2fsck -b 163840 -B 4096 device" may be needed
recover_EXT2: s_block_group_nr=5/152, s_mnt_count=0/4294967295, s_blocks_per_group=32768, s_inodes_per_group=8176
recover_EXT2: s_blocksize=4096
recover_EXT2: s_blocks_count 4999744
recover_EXT2: part_size 39997952
Linux 25007510 0 62 25642399 0 6 39997952
ext4 blocksize=4096 Large_file Sparse_SB Backup_SB, 20 GB / 19 GiB
BAD_RS LBA=4081361525 46634
check_FAT: can't read FAT boot sector
check_part_i386 failed for partition type 04
FAT16 <32M 64783516 0 18 76332589 0 47 727591629
This partition ends after the disk limits. (start=4081361525, size=727591629, end=4808953153, disk end=3907029167)
BAD_RS LBA=5070440163 61298
check_FAT: can't read FAT boot sector
check_part_i386 failed for partition type 06
FAT16 >32M 80483177 0 13 108877749 0 59 1788858083
This partition ends after the disk limits. (start=5070440163, size=1788858083, end=6859298245, disk end=3907029167)
BAD_RS LBA=4746841335 15033
check_FAT: can't read FAT boot sector
check_part_i386 failed for partition type 04
FAT16 <32M 75346687 0 55 103742355 0 46 1788927076
This partition ends after the disk limits. (start=4746841335, size=1788927076, end=6535768410, disk end=3907029167)
BAD_RS LBA=4482678695 50522
check_FAT: can't read FAT boot sector
check_part_i386 failed for partition type 06
FAT16 >32M 71153630 0 6 134068740 0 61 3963651986
This partition ends after the disk limits. (start=4482678695, size=3963651986, end=8446330680, disk end=3907029167)
BAD_RS LBA=5577961975 64489
check_FAT: can't read FAT boot sector
check_part_i386 failed for partition type 06
FAT16 >32M 88539078 0 62 133171557 0 60 2811846176
This partition ends after the disk limits. (start=5577961975, size=2811846176, end=8389808150, disk end=3907029167)
check_FAT: Bad jump in FAT partition
BAD_RS LBA=5807733636 40172
check_FAT: can't read FAT boot sector
check_part_i386 failed for partition type 0B
FAT32 92186248 0 13 114644307 0 4 1414857709
This partition ends after the disk limits. (start=5807733636, size=1414857709, end=7222591344, disk end=3907029167)
BAD_RS LBA=4178106140 5567
check_FAT: can't read FAT boot sector
check_part_i386 failed for partition type 06
FAT16 >32M 66319145 0 6 133706624 0 18 4245411190
This partition ends after the disk limits. (start=4178106140, size=4245411190, end=8423517329, disk end=3907029167)
BAD_RS LBA=4562646535 15285
check_FAT: can't read FAT boot sector
check_part_i386 failed for partition type 0B
FAT32 72422960 0 56 108166168 0 62 2251822111
This partition ends after the disk limits. (start=4562646535, size=2251822111, end=6814468645, disk end=3907029167)
BAD_RS LBA=7252457593 28590
check_FAT: can't read FAT boot sector
check_part_i386 failed for partition type 0E
FAT16 LBA 115118374 0 32 130190502 0 5 949544038
This partition ends after the disk limits. (start=7252457593, size=949544038, end=8202001630, disk end=3907029167)
BAD_RS LBA=4313139787 41552
check_part_i386 failed for partition type 07
HPFS - NTFS 68462536 0 20 136636488 0 51 4294959008
This partition ends after the disk limits. (start=4313139787, size=4294959008, end=8608098794, disk end=3907029167)
BAD_RS LBA=3305519159 64159
check_part_i386 failed for partition type 07
HPFS - NTFS 52468558 0 6 116817302 0 45 4053970912
This partition ends after the disk limits. (start=3305519159, size=4053970912, end=7359490070, disk end=3907029167)
BAD_RS LBA=3623691655 32186
check_part_i386 failed for partition type 0E
FAT16 LBA 57518915 0 11 98152942 0 41 2559943732
This partition ends after the disk limits. (start=3623691655, size=2559943732, end=6183635386, disk end=3907029167)
BAD_RS LBA=4219958171 15474
check_FAT: can't read FAT boot sector
check_part_i386 failed for partition type 01
FAT12 66983463 0 3 122472769 0 5 3495826281
This partition ends after the disk limits. (start=4219958171, size=3495826281, end=7715784451, disk end=3907029167)
BAD_RS LBA=5350664250 57787
check_FAT: can't read FAT boot sector
check_part_i386 failed for partition type 01
FAT12 84931178 0 37 150159371 0 8 4109376131
This partition ends after the disk limits. (start=5350664250, size=4109376131, end=9460040380, disk end=3907029167)
BAD_RS LBA=4072018291 49631
check_FAT: can't read FAT boot sector
check_part_i386 failed for partition type 0B
FAT32 64635210 0 62 118417268 0 52 3388269645
This partition ends after the disk limits. (start=4072018291, size=3388269645, end=7460287935, disk end=3907029167)
BAD_RS LBA=6477827640 22907
check_FAT: can't read FAT boot sector
check_part_i386 failed for partition type 04
FAT16 <32M 102822660 0 61 110882235 0 45 507753210
This partition ends after the disk limits. (start=6477827640, size=507753210, end=6985580849, disk end=3907029167)
NTFS at 62016255/0/63
heads/cylinder 255 (NTFS) != 1 (HD)
filesystem size 3907024065
sectors_per_cluster 8
mft_lcn 786432
mftmirr_lcn 244189004
clusters_per_mft_record -10
clusters_per_index_record 1
HPFS - NTFS 1 0 1 62016255 0 63 3907024065
NTFS found using backup sector, blocksize=4096, 2000 GB / 1863 GiB
Disk /dev/sdb - 2000 GB / 1863 GiB - CHS 62016335 1 63
Check the harddisk size: HD jumpers settings, BIOS detection...
The harddisk (2000 GB / 1863 GiB) seems too small! (< 4843 GB / 4510 GiB)
The following partitions can't be recovered:
HPFS - NTFS 27876624 0 59 94453147 0 12 4194320903
FAT16 <32M 33921809 0 34 101997321 0 55 4288757278
FAT32 LBA 43839051 0 53 68303526 0 47 1541261920
HPFS - NTFS 52468558 0 6 116817302 0 45 4053970912
FAT16 <32M 55135059 0 15 79359492 0 60 1526139325
FAT16 LBA 57518915 0 11 98152942 0 41 2559943732
FAT32 LBA 61425850 0 41 106776923 0 25 2857117584
FAT12 62234291 0 47 73953843 0 10 738331740
FAT32 64635210 0 62 118417268 0 52 3388269645
FAT16 <32M 64783516 0 18 76332589 0 47 727591629
FAT16 >32M 66319145 0 6 133706624 0 18 4245411190
FAT12 66983463 0 3 122472769 0 5 3495826281
HPFS - NTFS 68462536 0 20 136636488 0 51 4294959008
FAT16 >32M 71153630 0 6 134068740 0 61 3963651986
FAT32 72422960 0 56 108166168 0 62 2251822111
FAT12 72902610 0 63 113368966 0 56 2549380422
FAT16 <32M 75346687 0 55 103742355 0 46 1788927076
FAT16 >32M 80483177 0 13 108877749 0 59 1788858083
FAT12 84931178 0 37 150159371 0 8 4109376131
FAT16 >32M 88539078 0 62 133171557 0 60 2811846176
FAT32 92186248 0 13 114644307 0 4 1414857709
FAT16 <32M 102822660 0 61 110882235 0 45 507753210
FAT16 LBA 115118374 0 32 130190502 0 5 949544038
get_geometry_from_list_part_aux head=1 nbr=4
get_geometry_from_list_part_aux head=8 nbr=3
get_geometry_from_list_part_aux head=16 nbr=3
get_geometry_from_list_part_aux head=32 nbr=3
get_geometry_from_list_part_aux head=64 nbr=3
get_geometry_from_list_part_aux head=128 nbr=2
get_geometry_from_list_part_aux head=240 nbr=1
get_geometry_from_list_part_aux head=255 nbr=1
Results
HPFS - NTFS 1 0 1 62016255 0 63 3907024065
NTFS, blocksize=4096, 2000 GB / 1863 GiB
Linux 12156353 0 1 12791241 0 63 39998007
ext4 blocksize=4096 Large_file Sparse_SB Recover, 20 GB / 19 GiB
FAT16 <32M 16370242 0 34 61819040 0 36 2863274277
FAT16 >32M 17136447 0 14 35899043 0 62 1182043597
FAT16 <32M 20059631 0 7 51166304 0 26 1959720419
Linux 24604289 0 49 25270052 0 19 41943040
ext4 blocksize=4096 Large_file Sparse_SB Backup_SB, 21 GB / 20 GiB
Linux 25007510 0 62 25642399 0 6 39997952
ext4 blocksize=4096 Large_file Sparse_SB Backup_SB, 20 GB / 19 GiB
Linux 25024102 0 14 25689864 0 47 41943040
ext4 blocksize=4096 Large_file Sparse_SB Backup_SB, 21 GB / 20 GiB
FAT16 <32M 31880259 0 60 39448208 0 16 476780744
FAT32 47144903 0 44 50248592 0 26 195532390
Hint for advanced users. dmsetup may be used if you prefer to avoid to rewrite the partition table for the moment:
echo "0 3907024065 linear /dev/sdb 63" | dmsetup create test0
echo "0 39998007 linear /dev/sdb 765850239" | dmsetup create test1
echo "0 2863274277 linear /dev/sdb 1031325279" | dmsetup create test2
echo "0 1182043597 linear /dev/sdb 1079596174" | dmsetup create test3
echo "0 1959720419 linear /dev/sdb 1263756759" | dmsetup create test4
echo "0 41943040 linear /dev/sdb 1550070255" | dmsetup create test5
echo "0 39997952 linear /dev/sdb 1575473191" | dmsetup create test6
echo "0 41943040 linear /dev/sdb 1576518439" | dmsetup create test7
echo "0 476780744 linear /dev/sdb 2008456376" | dmsetup create test8
echo "0 195532390 linear /dev/sdb 2970128932" | dmsetup create test9
interface_write()
No partition found or selected for recovery
simulate write!
write_mbr_i386: starting...
write_all_log_i386: starting...
No extended partition
Interface Advanced
Geometry from i386 MBR: head=1 sector=63
NTFS at 1/0/1
heads/cylinder 255 (NTFS) != 1 (HD)
get_geometry_from_list_part_aux head=1 nbr=2
get_geometry_from_list_part_aux head=8 nbr=2
get_geometry_from_list_part_aux head=16 nbr=2
get_geometry_from_list_part_aux head=32 nbr=2
get_geometry_from_list_part_aux head=64 nbr=2
get_geometry_from_list_part_aux head=128 nbr=2
get_geometry_from_list_part_aux head=240 nbr=1
get_geometry_from_list_part_aux head=255 nbr=1
1 * HPFS - NTFS 1 0 1 62016255 0 63 3907024065
NTFS, blocksize=4096, 2000 GB / 1863 GiB
ntfs_boot_sector
1 * HPFS - NTFS 1 0 1 62016255 0 63 3907024065
NTFS, blocksize=4096, 2000 GB / 1863 GiB
NTFS at 1/0/1
heads/cylinder 255 (NTFS) != 1 (HD)
NTFS at 1/0/1
heads/cylinder 255 (NTFS) != 1 (HD)
filesystem size 3907024065
sectors_per_cluster 8
mft_lcn 786432
mftmirr_lcn 244189004
clusters_per_mft_record -10
clusters_per_index_record 1
Boot sector
Warning: number of heads/cylinder mismatches 255 (NTFS) != 1 (HD)
Status: OK
Backup boot sector
Warning: number of heads/cylinder mismatches 255 (NTFS) != 1 (HD)
Status: OK
Sectors are identical.
A valid NTFS Boot sector must be present in order to access
any data; even if the partition is not bootable.
ntfs_mapping_pairs_decompress() failed: Input/output error
Failed to load $MFT: Input/output error
ntfs_mapping_pairs_decompress() failed: Input/output error
Failed to load $MFT: Input/output error
ntfs_mapping_pairs_decompress() failed: Input/output error
Failed to load $MFT: Input/output error
ntfs_mapping_pairs_decompress() failed: Input/output error
Failed to load $MFT: Input/output error
repair_MFT
NTFS at 1/0/1
heads/cylinder 255 (NTFS) != 1 (HD)
ntfs_device_testdisk_io_ioctl() unimplemented
ntfs_device_testdisk_io_ioctl() unimplemented
ntfs_device_testdisk_io_ioctl() unimplemented
ntfs_device_testdisk_io_ioctl() unimplemented
MFT and MFT mirror are bad. Failed to repair them.
MFT and MFT mirror are bad. Failed to repair them.
ntfs_boot_sector
1 * HPFS - NTFS 1 0 1 62016255 0 63 3907024065
NTFS, blocksize=4096, 2000 GB / 1863 GiB
NTFS at 1/0/1
heads/cylinder 255 (NTFS) != 1 (HD)
NTFS at 1/0/1
heads/cylinder 255 (NTFS) != 1 (HD)
filesystem size 3907024065
sectors_per_cluster 8
mft_lcn 786432
mftmirr_lcn 244189004
clusters_per_mft_record -10
clusters_per_index_record 1
Boot sector
Warning: number of heads/cylinder mismatches 255 (NTFS) != 1 (HD)
Status: OK
Backup boot sector
Warning: number of heads/cylinder mismatches 255 (NTFS) != 1 (HD)
Status: OK
Sectors are identical.
A valid NTFS Boot sector must be present in order to access
any data; even if the partition is not bootable.
New options :
Dump : No
Align partition: Yes
Expert mode : No
TestDisk exited normally.
I read somewhere to use testdisk but I am clueless on how to actually resolve things using it. :( As I have never used it so I can't really make sense of what all this information means. :(
I would really be forever grateful if someone could help me resolve this issue!
Thank You!
Gnome-disk-Utility says that the Disk is OK but has 4880 Bad Sectors, so I believe if we could figure out how to fix those Bad Sectors then this issue can be resolved.