How can I install Ubuntu 16.04 LTS Server on an HP ProLiant ML10 v2 Server
Solution 1:
There are several posts about this problem over the past several years, but none that comprehensively describe the process for the ML10 v2, so I thought I would document my findings for those who want to use one of these inexpensive and capable servers with Ubuntu.
How to install Ubuntu Server on HP ProLiant MicroServer Gen8?, from 2014, describes the process of changing the SATA Conroller support with a ProLiant Microserver Gen8
https://www.linuxserver.io/index.php/2015/03/24/hp-proliant-microserver-gen8-g1610t-setting-up-a-linux-home-server/, from 2015, describes the process in more detail, also using a Microserver Gen8, and includes screenshots, but I found they did not match exactly my BIOS screens.
It may be that the Ubuntu installation is able to adjust the controller so that the installation can write to the HDD, but that the boot BIOS does not make that adjustment.
In any case, what worked for me was to let the first stage POST complete, and then the second stage Processor Initialization will show an "F9" button at the bottom of the screen. Pressing the F9 key on the keyboard will "light up" the "F9" button, and after this Processor Initialization, the "ROM-Based Setup Utility" will start. As per the screenshots in the second of the two references above, first select "System Options" and press Enter, then select "SATA Controller Options" and press Enter.
Here, the new system is a little different than the screenshots shown for the Microserver Gen8 -- I had to select "Embedded SATA Configuration," and when I did, I got a scary Yellow-on-Red warning that this would destroy my system (which would undoubtedly be true if I had a system installed).
Press Enter to get by this warning, then change from "Enable Dynamic HP Smart Array B120i RAID Support" to "Enable SATA AHCI Support", and press Enter. Note at the bottom that " Saves Selection" - there is no explicit "save" in this setup utility.
Then, back out of the menus with Esc, and then " to Exit Utility" and then " to Confirm Exit Utility." Again, no explicit "Save" with this utility. Press F10, and the system will again go through the ProLiant System BIOS - Early Processor Initialization. After that completes to 100%, you will go to the next stage "Processor Initialization.
If you have made the change correctly, during this second stage you will see a message "HP AHCI SATA Controller Initializing" and then "HP AHCI SATA Controller" and then "Broadcom NetXtreme Ethernet Boot Agent"
You can then install Ubuntu 16.04 LTS Server from the DVD (using your external DVD drive connected to a USB port). A message flashes during the installation about some BIOS corruption, but that does not seem to be a problem for the installation.
I selected the LVM with Encryption option, so when the system boots, I get a message "Please unlock disk sda5_crypt:" at which point I enter the password I used to encrypt the disk, and the system boots.
I would also mention that these servers come in a few standard configurations, and that there is also a configurator on the HP site, but selecting a custom configuration is very expensive -- just find a system configured the way you want, and you can have a very capable server for a very low price.
The manual for the HP ProLiant ML10 v2 Server is here: http://h20565.www2.hpe.com/hpsc/doc/public/display?sp4ts.oid=7796450&docId=emr_na-c04622279&docLocale=en_US
Hopefully, this post will encourage those who want an inexpensive Ubuntu Server to use this server.
Solution 2:
And if you get the black screen after boot, you can add "nomodeset" to the linux line.
Remote login to the machine
vim /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="nomodeset"
And then:
sudo update-grub
sudo init 6