I have a laptop which contains a disk that has some bad blocks according to SMART parameters. I bought a new disk but that is not recognized. Why ?
The old disk is a WDC 160GB one model WD1600BEVT-00ZCT0
The new disk is a Hitachi 160GB model Z7K320-160 HTS723216A7A364 off eBay
I used Acronis to take a backup and restore to the new HDD (Cloning failed with too many errors) both with and without the disk signature being copied. I can mount and read files off the new disk on another PC without any error and the SMART parameters indicate that it is an unused disk with no recorded faults.
Every time I put the new disk into the laptop it fails to boot, normally claiming that there is no disk. The boot device menu normally shows blank (no disk) but occasionally shows the first part of the disk's ID.
The old disk boots into Windows Vista 64bit just fine. I can boot off a Linux live CD but that shows no disk present.
A Backup and Restore may not have made the new unit into a BOOTABLE disk. To be bootable, the HDD must have certain files in certain specific locations, PLUS it must have a couple of data flags set in the Partition Table.
You really do need to do a cloning operation, making sure that the new HDD is set to create and format a Primary Partition that is bootable (that is the default mode, anyway).
I did a cloning job recently with a custom version of Acronis, and it did keep giving me error messages about unreadable sectors on the faulty old HDD. Eventually I just told it to ignore such problems and keep on working until it finished the job. I realized that this meant I was hoping that none of the unreadable sectors were in use with important files, because at best those files would be corrupted. But there's not much else one can do in this situation. And it worked! When I checked the cloned new disk two different ways it came up with no errors, and the machine with that unit in place is working perfectly. So, heeding the SMART warnings as you are doing worked well for me.
Try Cloning again, and look for the option to continue working all the way through the old HDD despite read errors.
Unlike a backup operation, I get no warning about errors and the option to ignore them - it just won't play.
The restore I am doing has worked many times in the past. Moreover, it (BIOS) is not even seeing that there is a disk there most of the time. It must be something in the physical geometry of the disk I suppose, but I'm lost as to what it could possible be.
I have another laptop and am now trying to put it's disk in the failing laptop & vice versa to see if the problem moves with the disk.
I have now removed the HDD from a second laptop and restored the first laptop's image to it and the first laptop boots just fine. Also, the second laptop boots fine with the HDD from the first laptop.
It seems that that laptop HDD combo just won't work together. I have proved that the disk, laptop and recovery method are are functioning. It's like the old days where there was a maximum cylinder size that had to be jumpered before the BIOS would recognise the disk - but this is SATA2 with no pins available for jumpering.
Please someone, explain how this can be happening.
When the BIOS cannot "see" the HDD, there is a hardware problem. However, I'm intrigued that "it (BIOS) is not even seeing that there is a disk there most of the time". Most of the time? So sometimes the BIOS DOES "See" this HDD? An intermittent hardware problem is more difficult to find sometimes. But one thing to look for is a poor connector pin or socket on either a HDD or the connector it plugs into. SOMETIMES, it seems, a unit with a loose connector will still work OK in a different machine, which seems to be what is happening here.
Now, IF the BIOS can always detect the HDD properly but it still won't boot from it, claiming there is no disk to boot from, that MAY not be a hardware issue. Since you are using a SATA HDD, there's another possibility. IF you are booting into Win XP, there is a problem that XP usually does not know how to use a SATA (or AHCI) device unless a driver has been installed at the time the OS was first installed. This applies to ALL version of XP - undated SP's do not solve the problem. This is NOT an issue for Vista or Win 7, though. The symptom is that the machine starts to boot and detects the HDD properly, but then says there is no disk to boot from. That error message actually comes from the Windows boot sequence, not from the BIOS.
So, IF you are trying to boot into Win XP on that HDD, go into BIOS Setup and make sure that the SATA Port Mode is set to something like "IDE Emulation" or PATA mode, and not to SATA or AHCI or RAID. That lets the BIOS itself intervene and make the actual SATA HDD appear to Win XP to be a plain older IDE drive it DOES understand fully, and it can boot from it. Just maybe the two laptops you have been trying have their BIOS's set differently on this point, which might explain why a SATA HDD can serve as a boot device in one, but not in the other.
Thanks for the comments. I think this must be a compatibility problem as the 'suspect' disk works fine in another laptop and the 'suspect' laptop work fine with other disks. What I can't figure out is what in the BIOS is incompatible with the disk.
I am sure it is the BIOS as it seems to see a variable amount of the disk's ID. So if I go into the BIOS or the boot menu I can sometimes see nothing, once I saw the whole string, but most often I see Hit]s dff f or some similar abbreviated or corrupted string that starts with some of the word 'Hitachi'.
SATA drivers are indeed the sort of thing that can cause problems, and this is XP (MCE) but the other SATA disks work fine. Also, it is not even getting to Windows as evidenced by the partial ID string displayed in the BIOS.