Configuring a Mac Mini Server¶
AAltsys Server Introduction¶
Desktop and tower computers are bulky, inefficient, and expensive. These computers are undesirable for office servers, which is why we recommend the Apple Mac mini, which is powerful, unobtrusive, and reliable.
We use Apple Mac mini hardware as a server running the Zentyal office server operating system. (Zentyal is based on the popular Linux OS Ubuntu.) An added SSD storage drive will be used for Zentyal server and data, and the original Apple OS-X installation will be retained on the internal drive. A boot selector program, rEFInd, will be used to permit operating system selection.
Mac mini Configuration¶
The components of the Mac mini, and the available accessories for it, change over time. Older Mac minis include the Mac mini Server, now discontinued, which offered two internal drives and a quad-core i7 hyper-threaded processor. Newer Mac minis have dual-core i5 processors with hyper threading, providing a maximum of four execution threads. This is adequate for an office server.
As of 10-15-2017, Apple’s Mac mini configuration [1] used for this server is:
- 2.6GHz Intel Dual-Core i5 (Turbo Boost up to 3.1GHz)
- 16GB 1600MHz LPDDR3 SDRAM
- 1TB Serial ATA Drive @ 5400 rpm
The following additional components convert the Mac mini to a server:
- Samsung T5 256 GB SSD drive w/ USB 3.1 to 3.0 cable (for server storage),
- Thunderbolt to Gigabit Ethernet adapter (for Internet gateway function),
- Zentyal - windows-compatible office server operating system replaces OS-X,
- rEFInd - multi-boot program for EFI and UEFI systems, particularly Macs,
- Chrome - Google’s browser is installed in OS-X as part of initial setup.
Additional generic hardware components will be used during system configuration or are required for site setup and administration:
- Superdrive - or any USB-connected CD-ROM drive (during installation only),
- USB Keyboard and mouse, HDMI-connected 1080p monitor (for administration),
Installing Google Chrome¶
Follow these step by step instructions to install Google Chrome on OS-X:
- Launch the Safari browser fror the Activity task bar
- Download the Chrome installer
- Launch file
Google Chrome.dmg
from the downloads - In the window that opens, drag the Chrome icon into the Application folder
- When first opening Chrome, the Finder will ask if you want to open the Application downloaded from the Internet. Click open.
- Unmount the Google Chrome disk image on your Desktop by right clicking it and choosing “Eject”.
Download and Install rEFInd¶
Apple replaced BIOS booting with EFI (Extensible Firmware Interface), allowing software to control the computer boot process. Apple offers BootCamp software to boot Windows on Macs, but this only works with Windows.
Roderick Smith has written an excellent boot manager supporting multiple hardware platforms and various operating systems, particularly Linux and Macintosh OS-X. Further, he maintains a reference book on EFI booting using his rEFInd program.
Install rEFInd software¶
Download rEFInd software to your
Downloads
folder. [2]On later Macs with SIP, press
alt/option
to reboot to theRecovery HD
volume and then disable SIP with the command:csrutil disable
Then reboot to the Mac OS-X system on volume
Macintosh HD
. (As an alternative, use Rod’s guide to install rEFInd from the Recovery boot [3] in place of this step and the next step.)Open a terminal session, change directory to the
Downloads
folder, and unzip and install rEFInd with the commands:cd ~/Downloads unzip refind <Tab> <Enter> cd refind <Tab> <Enter> ./refind-install
Read the installation messages to see where REFInd is installed. For message
Installing rEFInd to the partition mounted at /Volumes/ESP
, bless REFInd with the command:sudo bless --mount /Volumes/ESP --setBoot --file /Volumes/ESP/efi/refind/refind_x64.efi --shortform
Otherwise for REFInd installed in folder
EFI
, use:sudo bless --setBoot --folder /efi/refind --file /efi/refind/refind_x64.efi
After installing rEFInd, copy or rename the default configuration file
refind.conf
to preserve it. This file should be in one of the following locations:/Volumes/ESP/efi/refind/ /efi/refind/
To boot Zentyal by default, download the customized rEFInd configuration
refind.conf
to folderrefind
.For Macs with SIP, reboot and press a cursor key to stop rEFInd. Use the mouse or cursor keys to select small icons items:
i – the info icon will say whether SIP is off or on shield – toggles the SIP state off and on circle-arrows – reboot the system after any changes
Reconfiguring rEFInd¶
The rEFInd configuration which defaults to booting Linux, as used in this guide, is shown below:
timeout 5 enable_mouse use_graphics_for osx, linux # skip recovery and backup drives; ubuntu options; shimx64.efi and mmx64.efi dont_scan_volumes “Recovery HD”,”Backup” dont_scan_dirs EFI/ubuntu dont_scan_files shim.efi,MokManager.efi,mmx64.efi,legacy # report linux installations, one kernel per install scan_all_linux_kernels fold_linux_kernels # show first 3 options as primary choices, default to Zentyal,or Mac OS-X max_tags 3 default_selection “vmlinuz,macOS” # Allow refind to disable/enable SIP so boot reconfiguration is possible showtools shell,memtest,gdisk,apple_recovery,about,csr_rotate,shutdown,reboot csr_values 10,77
Use the instructions in this section if you wish to change boot configuration options.
Configure rEFInd¶
- After installing rEFInd, copy or rename the default
refind.conf
configuration file to preserve it. - Restart the server, and press
right-arrow
in rEFInd to stop booting. - Write down each main boot option to decide which should be displayed.
- Determine any other configuration options to change. [4]
Edit rEFInd configuration¶
Start a terminal from Launchpad ‣ Other ‣ Terminal.
Edit the rEFInd configuration file with the command:
sudo nano /Volumes/ESP/efi/refind/refind.conf
or for older Macs with an
EFI
folder and noESP
volume,sudo nano /efi/refind/refind.conf
and enter your password when prompted.
Note
The Mac approach of displaying files in the Finder and then editing configuration text in TextEdit will not to work with boot manager files. This section uses a Linux-y approach to editing the rEFInd configuration instead.
Modify the configuration options as desired, then press
control-X
to save changes.Exit all programs and restart the server to test the new configuration.
Repeat these instructions until desired results are achieved.
Tip
Save a copy of the modified refind.conf
in your ~/Documents
folder, as updates to Mac OS X might wipe out the EFI configuration.
After achieving a good rEFInd configuration, turn SIP back on with either:
- Rebooting from a rEFInd CD and selecting SIP Policy from the tools,
- Rebooting from the Apple Recovery partition and executing the command csrutil enable,
- Rebooting and selecting SIP Policy from the rEFInd tools, provided you have enabled tool csr_rotate.
Recovering from a Boot Coup¶
The efi
directory may get rewritten when updating either Mac OS-X or
Linux. Keep program rEFInd in your ~/Downloads
folder, and
keep a copy of refind.conf
in your ~/Documents
folder. Restore
a lost rEFInd installation in Mac OS X as follows:
Start a terminal from Launchpad ‣ Other ‣ Terminal
Reinstall rEFInd with the commands:
cd ~/Downloads/refind <Tab> <Enter> ./install.refind sudo cp ~/Documents/refind.conf /efi/refind/
– or –
cd ~/Downloads/refind <Tab> <Enter> ./install.refind sudo cp ~/Documents/refind.conf Volumes/ESP/efi/refind/
Footnotes
[1] | Mac mini specifications. |
[2] | How to obtain rEFInd. |
[3] | Install rEFInd. |
[4] | Configuring rEFInd. |