Not sure how many times I’ve been through the steps in this video: https://www.youtube.com/watch?v=xuhMQIpCP1A. Most irritating to me is the way in which the bug in GRUB that doesn’t kill a boot process but throws a bunch of misleading errors was skipped over. Went down a bit rabbit hole on that when it turns out my biggest issue has to do with the X/Nouveau video driver. It has only the slightest degree of support for the GeForce 750 TI video card I installed. So the boot would appear to puke up front but allow you to continue only to puke for real after logging that it was adding swap space. What was really happening though, is that the filesystem was successfully mounted and it was switching to graphical mode. Only it couldn’t because of the suck.
Thankfully the NVIDIA driver installs correctly and disables nouveau for me at the same time. The only problem there was getting to a terminal while xserv wasn’t running so that it could perform the install. So, after many attempts, tonight I will finally, successfully, build out my new server with a permanent installation. While doing laundry. Because I’m hyper-threaded like my CPU.
- Install Ubuntu Server so as to set up a RAID5 device with partitions for swap, /, and /home
- Reboot into repair mode
- Mount the root RAID partition
- Drop into a shell
- Set the GRUB quick boot option to false in the grub config
- wget/run the NVIDIA driver
- Reboot into server mode
- apt-get install ubuntu-desktop cinnamon (because Unity is still the suck)
- and then restore /home from backup (again) and install all of the software that makes the machine go (again)
- Set up my Windows 7 VM for seamless mode and install all my Windows-only apps like Evernote, VisualStudio 2013, etc.
All-in-all, though, the new workstation is a beast. I don’t think I’ve seen CPU usage over 60%, RAM usage above 40%, and the CPU temp higher than 80°F. I haven’t done any serious benchmarking but I’ve put it under some load multitasking installs, compilation, and running VMs. It should be a great testbed for evaluating Vagrant, Docker, Jenkins, and Gradle.