Warning – deeply tecchy post! Written partly so any other Lenovo 3000 N100 users who hit the same issues can find it in google and save 5+ hours of pain which could as easily have ended with a bricked laptop!
For most of our computing at home we use Linux – and find it pretty much indestructable vs. Windows. But, the kids understandably want to play games and use some other Windows only programs, so their laptops are on Windows (as well as Linux). We decided to do some shuffling this weekend, with Sa moving from her high-power (and rarely used apart from itunes) laptop to a small and light netbook that suits her much better. It meant rejigging Sa’s current laptop to have much more space for Windows and less for Linux. It was also a good chance to clear the laptop down to factory original, and should have been easy. Huh. It’s Windows, it’s never easy, I must have been having brain fade or something.
Of course the laptop didn’t come with windows install disks thanks to the brilliant Microsoft/OEM model. Instead it comes with a whizzy ‘rescue and recovery’ program on a hidden drive that can restore the factory original spec and loads of other things as well. Well, it took me an hour to suss out how to validate that I was allowed to use the rescue and recovery program at all. When that was done, I thought it would be easy to run it from the linux botloader (the thing that appears when you first boot linux). And so it was. However, at this point that I hit snag 1. The recovery program told me to wait a few miuntes, then announced that ‘Recovery has failed’. I thought I’d try again, and see if there were more options I hadn’t spotted.
Snag 1 – no MBR check/reload
The very first thing a computer loads after it starts is the bootloader (so called because it’s about pulling itself up by it’s bootstraps). This sits in a few bytes right at the start of a harddrive, in a file called the Master Boot Record or MBR. When you run Linux it replaces the MBR with it’s own one (called GRUB) that can in turn start Windows and other programs. So, returning to factory spec means replacing the MBR with a stock one. I assumed that any sane recovery program would start by checking the MBR to ensure that it was right, so it could restart if anything went wrong. You would only be recovering under odd situations anyway, so something being wrong can’t be unusual. It’s what Windows stock install disks do for example (or at least they can do – there is a utility for it). Not this one though.
When I restarted, the Linux bootloader GRUB was still in place, but now wouldn’t run since the installer had got far enough to wipe all other information from the disk. This is a real catch-22 since I now couldn’t run the repair program to find out if it had a master boot record fixing routine since I couldn’t boot it! Ironically it gets called error 22 in GRUB – not sure if this is humour or accident.
Snag 2 – use of a non-standard windows MBR
After a fair bit of web searching (I’m far from a Windows expert) I found out that any Windows machine from the dawn of time has used the same MBR, and any Windows install disk at all, even back to DOS, could recover it (‘fdisk /mbr’ is the incantation). So, I found an old XP recovery CD, and booted from that. It wouldn’t boot properly, but did allow me to run FDISK, so I put the stock MBR back on the laptop, and rebooted. This clearly worked at one level since GRUB was no longer on place. now I had an error saying ‘no operating system found’. Initally thought this meant that the rescue partition had gone as well, which would have been terminal. But, rebooting with a Linux boot CD allowed me to look at what was one the disk and see that all the files were still there. (10 cheers for Linux – I know it’s probably familiarity, but I find it SO much easier to sort out issues). So, now I was even more confused – the MBR was the standard Windows one, and the recover stuff was all in pace, but the two wouldn’t work together.
Lots more web searching turned up that Lenovo/IBM chose to use their own MBR instead of the standard one – so making you dependant on their utilities – all the more reason that the utilities should have checked the MBR. I reckon that many folks would have given up at this stage (and maybe earlier) – it was only bloody minded persistance, and concern that the fdisk I used was pretty old that made me carry on and almost accidentally find out that lenovo was different.
Snag 3 – anyone still use diskette’s?
So, armed with the knowledge that what I needed was a Lenovo utility to restore their MBR, I went fishing and found that they have such an animal here. All you have to do is download and run the program and it creates an executable diskette that will restore the right MBR. Right, a diskette. remember them? You don’t get them on desktop machines nowdays, never mind laptops. I presumed that they must have some hints on how to run tis from a CD, but no, apparently not! Really, how hard is it to think about how things will get used? More digging showed that you can create a bootable CD image from a bootable diskette, but 5 hours in, I thought it was time for bed!
This morning I resolved to have a last crack, and started by looking to see if anyone else had hit the same issue – and found the most useful site of all here. Sadly it has no useful words like MBR that would have helped it to show up before – you had to know what the name of the lenovo file was already! But, it did have the right file, as a CD image, together with instructions on how to use it (involves a lot of failure messages since the programme thiinks it is running from a diskette). I tried that, and bob’s you uncle it replaced the MBR, and the rescue and recovery would start again. And better yet, finish! So, whilst I write this it’s been whirring away rebuilding the factory image. Hopefully it’s all clean now, so I can put Linux back and move on. Only 6 hours work and a load of bizarre hoops. A linux load would have taken 30 mins absolute tops on any machine at all, with very little risk of hitting impossible hurdles. Sigh.