Ubuntu – HP Microserver boot issues

biosboothp-proliantmbrUbuntu

I recently installed Ubuntu onto an SSD in a Gen8 HP Microserver. It worked perfectly fine for a few weeks, but now it won't boot.

Randomly one day it started refusing to boot, giving an error along the lines of 'no system disk or disk error'.

I managed to boot off a Ubuntu LiveUSB and from there could access the drive and all of its contents, so the disk appeared healthy.

I tried running Boot Repair but it made no difference.

I attempted to wipe the drive and reinstall Ubuntu – the first time it failed citing 'unable to install the bootloader at the desired location'. The second time, it appeared to install fine, but I still can't boot into it – the BIOS doesn't seem to find any bootable drives and then starts trying to boot from NIC.

Any suggestions as to what I could try, or is it likely a faulty drive?

Best Answer

Your GRUB isn't being installed to the disk properly. This is usually due to buggy firmware or something related to that. OR you could have a faulty disk.

Are you indeed using BIOS? I ask because the CSM modules (a BIOS compatibility layer) on a lot of board are rather limited and buggy. You would be better served in most cases to boot using EFI, with an ESP partition on your boot disk formatted as VFAT. GRUB still gets installed, but it is called upon by a standard firmware extension that's provided by the OS drive itself. It's actually a form of chain-loading, but it's very reliable (and more reliable to make changes to).

If you have to use a BIOS, a stubborn firmware will usually accept a "manual" GRUB install. The reasons we have to install manually vary, but usually have to do with invalid values coming back during automatic disk detection. For this, you'll need to boot using a live distribution (Ubuntu will do fine) and create a chroot environment. This guide will help if you're lost on that: http://www.cyberciti.biz/faq/unix-linux-chroot-command-examples-usage-syntax/

Once in the chroot, you will have to know a thing or two about your disk. You should be able to successfully write a GRUB out to an MBR with the following command: grub-install /dev/sda (or something similar based on your needs for this system). If you get errors we can deal with those, but this way you get more output.

Alternatively, check your disk for defects. You can do this with the manufacturer tools for integrity checks, or you can use smartmontools. Smartmontools will give you detailed report of the life of the drive, including if it has any unrecoverable sectors or pending sectors. These are sure signs of failing disk, and you should replace it if you see these things.

apt-get install smartmontools will get the utility installed, if it isn't already. smartctl -a /dev/sda will print a full report of your disk, which you can peruse through for failures. smartctl -t long /dev/sda will run a test that you can see the results of after a period of time (won't take long on an SSD).

And lastly, if you still have problems installing in BIOS mode, boot the installer in EFI mode and use that instead. The installer must be booted in EFI mode in order to install an EFI system. The Ubuntu installer does this fine.

Hopefully one of these suggestions helped, as GRUB boot issues can be caused by a whole world of different problems. These are the most typical.