Setting up a MacMini Server (2011) in 2021 – System Install

As one progresses in a career working on computers, there is a tendency to accumulate hardware. Overtime, there would be a likelihood of having multiple computers at your disposal. This becomes more apparent when you age and find that your work start to digress from hardware computing, benchmarking, performance tuning, system setup and start going into more business related stuff.

All the hardware that you have bought in the past then starts to get left around. Instead of throwing them out, perhaps they are still good today?

The thought around this self declared project is to make use of the hardware that i already have and try to see if i am able to get an old system to a level which i am pleased with, with minimal upgrades. Is old hardware really obsolete? or can i still make use of it to get something good for my day to day use? Perhaps something that i can really live with even if i were to stop work one day. πŸ™‚

The next few posts around this topic will act as a way for me to document the process of getting the system up and running, and also act as a way to keep a reference… such that i would know what to do if i ever need to set up a similar system again.

The Goals

To setup a resilient hardware system where the performance and the usability is acceptable to allow for general web surfing, music, iPhone backup, general computing, web programming etc. At the same time it must be able to work with my 3D printer and integrate with the rest of my home infrastructure. It should also be cost efficient such that if any part is to fail, it should not result in a situation where i have to pay extra just to get the system back up by the end of the day. i.e. i should be able to take my time and search the internet for the best deals, not pay more for shipment and still have a working computer while waiting for the part to arrive! Recovery should also be straight forward and easily achievable.

The Hardware

I have an old MacMini server (2011 model A1347 i7) with 8GB of RAM and dual 750GB HDD sitting around. Together with a Mac Keyboard and Trackpad for input.

i had to start off the installation with a wired keyboard as the Mac Keyboard is bluetooth and i couldn’t have paired it yet.

PS: The alternative was a minisforum mini PC which would have cost about USD$600 providing a SATA, NVME etc config. It would also have dual ethernet though. I figured that i would do-up the MacMini, and save the $$.

The Operating System

Given that the system is a MacMini, i had thought that a good idea would be to use MacOS. However upon some testing i have found that this didn’t work out too well. Why?

  1. The hardware is so old that it no longer supports the latest OS. So a fair amount of latest software didn’t work.
  2. In the latest OS that it supports, it no longer supports software RAID1 configuration. This means that even though i have 2 disks in the hardware, i would likely have to have only one of them working as the root drive and the other setup as dedicated time machine drive. While this achieves some level of redundancy, it still has a fair amount of downtime if a drive is to fail. Time Machine recovery isn’t the fastest thing in the world. I would have to wait around and “care” for the system during the recovery. Not something i’d like to do…. (i’d rather be out riding!)

With that in mind, i decided to go for the latest LTS version of Ubuntu which is 20.04 which supports software raid out of the box. That said, the desktop version of of Ubuntu doesn’t support RAID 1 during installation either. However, the server version does. So that’s the configuration i went ahead with. As its Linux, i expected that there would be a fair amount of configuration needed… but i’m fairly well versed in it… it wasn’t a roadblock for me. The possibility of being able to leverage OSS also plays to my decision of things being cheap / free and secure at the same time. The resulting selected OS was therefore selected to be Ubuntu 20.04 LTS.

The Setup

I’m writing this quite a few weeks after setting up entire system so i do not have any screenshots to show step-by-step. However here is what i remember doing. Hopefully it would help point others in the right direction.

  1. I created a installer HDD using the Ubuntu server image and booted up the Mac holding the option key.
  2. Selected the installation of Ubuntu as it came up and went through the wizard with logical selections for my needs. However, during the disk partitioning setup, i made 3 partitions
    • /dev/sda1 – 512MB – for EFI
    • /dev/sda2 – 512MB – as a Linux Filesystem
    • /dev/sda3 – all the remaining free space – as a Linux Filesystem
  3. The /dev/sda partition setup is also done for /dev/sdb (*note at this stage, i have no idea which disk is sda or sdb within the MacMini)
  4. Selected that /dev/sda2 as the /boot partition.
  5. Setup /dev/sda3 and /dev/sdb3 as a software raid setup. The resulting device would be /dev/md0
  6. Defined /dev/md0 as the physical volume in LVM. Which i then defined a SWAP partition of 16GB. Following that, i defined a volume taking up all the remaining space for the / partition. In my scenario, its about 687GB…
  7. Begin the setup. As everything is installing, the drives would also be syncing and rebuilding.
  8. All other options made during the rest of the Ubuntu installation is done as normal.
  9. Upon completion i ran
    $ sudo apt install ubuntu-desktop
    This gets all the desktop components into the OS.
  10. i then used DD to clone /dev/sda2 into /dev/sdb2
    $ dd if=/dev/sda2 of=/dev/sdb2

I cannot recall if i let the raid 1 complete the sync process before performing a reboot, but effectively things went without a hitch and the entire MacMini got installed with a RAID 1 configuration with Ubuntu running as the OS.

Initial Input configuration

Once the OS was setup and user logged in, the first thing that i did was try to pair my Mac Keyboard and Trackpad. Network wasn’t a problem as i was using the wired network on the MacMini.

Getting these paired to Ubuntu 20.04 as a breeze. There should be no major issues in getting these to work. Trackpad and Keyboard over bluetooth works well… for a while. But i will detail the issue in the next write-up.

One thought on “Setting up a MacMini Server (2011) in 2021 – System Install”

Comments are closed.