Thursday, May 4, 2023

The Endless Uses for an Always-on Mac

Jason Snell:

I’ve had a Mac running as a server in my house for more than 20 years now, and I have zero regrets. As I detailed five years ago, the specific uses for my always-on Mac have changed numerous times over the decades, but the various Macs that have served the purpose have always made themselves useful.


Here’s what that Mac mini currently does: […]

I’m currently running two such Macs. The first is a 2012 MacBook Pro running Mojave, which provides access to my ScanSnap and label printer. I sometimes reboot it in High Sierra or Catalina to test with those versions of the operating system. I also use it when I have lots of stuff to download, e.g. a set of new WWDC videos.

The other is an M1 Mac mini, which runs servers for Git and Time Machine, downloads iCloud photos and Apple passwords from multiple accounts, runs Xcode tests (on macOS n-1), filters some mail accounts with SpamSieve, and does long-running copies and verifications of archives and backup drives. It’s connected to an extra HDMI port on our TV to save space, but I mostly access it via Screen Sharing.


18 Comments RSS · Twitter · Mastodon

Does that mean you go to your always running MacBook whenever you want to scan something?

macOS is viable as a server, certainly, with caveats: no RAID 6, it's no real use as a router, and you'll want a Linux VM on it to do things macOS still can't run well or for which packaging and/or kernel features simply make Linux the clear choice (mail server stack, Docker, etc). I'm moving to an m2 Pro Mini in place of a 2012 and 2018 Mac Minis (the former running Linux) chiefly to take advantage of lower power use for performance gained overall and APFS snapshot backups via TM and Arq. If I could run Linux on it, that'd be a better use of resources, but it's still nice to have Apple's SMB server, bootpd (Darwin's DHCP server), Bonjour, GUI apps useful for unattended operation including Apple Mail rules with SpamSieve and Arq for backups and anything scriptable, plus general graphical use on demand. The price is the necessity of screen sharing which is not accessible without using SonoBus and BlackHole to feed audio over the network in a very fragile way (nothing to a proper CLI over SSH), and I've moved my router to a MikroTik RB5009, until I can get this Linkstar H68K to boot up with Arnbian, if I feel up to it someday (looks like I'll be getting a crash course in Linux embedded development along the way). For storage, use the internal Mini storage, backed up by an OWC Envoy Express (no RAID); it's bus-powered, so it'll start up after power failure (KISS principle at work, RAID just makes it all harder, as I've learned from experience, and 8 TB meets my needs for now). So yes, Mac servers are a thing, a thing that compares favourably to a NAS for general computational uses, but only if you can put up with the limitations (and the simple joys of launchd property lists in XML, of course).

> The other is an M1 Mac mini, which runs servers for Git and Time Machine, downloads iCloud photos and Apple passwords from multiple accounts, runs Xcode tests, and does long-running copies and verifications of archives and backup drives.

I’ve long wondered how to set up a Mac mini to download multiple AppleIDs photo libraries as a backup. Do you have multiple machine accounts configured and then each Apple ID is signed in separately?

My problem with a home Mac server is that the remote access story on the Mac is not good at all. I currently have two always-running servers in my house, that I can also access anywhere in the world via VPN (WireGuard). One is a Supermicro box running TrueNAS SCALE, which I use with a 4-drive RAID for backups and Plex. The other is an Intel NUC that dual-boots Ubuntu and Windows 11 Pro.

Both of these systems have out-of-band remote management capability via IPMI and Intel AMT, respectively. This means I can boot them up from a fully powered-down state, boot between OSes, restart them if the OS is completely locked up, and even configure the BIOS, all from any system with a web browser.

Not only does no Mac have any sort of out-of-band management capability, but no Mac desktop or laptop will even respond to a wake-on-lan magic packet from a fully powered-down (S5) state. This means something as simple as a power outage will take a Mac server out of the game until I physically press the power button (restart after power failure doesn't work since my UPS will gracefully shut down my systems 90 seconds after a power outage.)

@aciniglio Yes, my scanner isn’t networkable, so this lets it work in a shared location, and lets it run the older ScanSnap software.

@Adam Yes, you need multiple Mac accounts logged in via Fast User Switching.

Hey, so I’m curious about the ‘download iCloud photos’ part you mentioned. So, do you just use your Apple ID and run Photos on the server? Then can I have my machine that I use regularly access that same library?

A little about my setup, my ‘server’ is a mid 2009 MacBook without the battery in it. It’s maxed out at 10.11.6 and running Server 5.7.1. So far, loving it as a Time Machine server and looking to squeeze a little more out of it.

@Joe Yes, more info here.

I have two in my house. My server Mac runs the backup system (Retrospect) which backs up the various laptops as well as itself and my desktop. It also backs up my various Digital Ocean servers, assists with the house lighting system (things like auto-turning off lights during the day after a period of time), and runs my ScanSnap (Michael: I have mine set so when it finishes the scan, it auto-transfers the file to my desktop and opens it there in Preview). My ScanSnap is on my server because the software never ran reliably for me on Ventura/Apple Silicon - it would work once or twice and then fail.

I also have my desktop always on, and it does a myriad of tasks, mostly controlled with Lingon X configured servers. It does backups of various NAS devices, does additional backups from my various servers (backing up databases and such), monitors my servers for issues (using for some reporting), posts some bot information to some Mastodon accounts, sends out some emails, etc.

As Jason said, there are endless uses for an always-on Mac.

@Gordon Yes indeed, I think it's actually possible to do LOM for Macs but only using MDM. I have also been looking seriously at both Supermicro and Intel NUC in part because of the remote management, which would be handy in lieu of non-working eyeballs as Macs do rather well at making the recovery environment accessible, but it's rather limiting. How do you bring up the OOB management interfaces? Are they on-by-default or do you need to initially configure the boxes using peripherals and a monitor? Thanks.

Beatrix Willius

Is there a reason to power off a computer?

@Beatrix Willius If it is loud and produces a lot of heat, then yes. Otherwise, no not really.

I am back on a mac for the first time in a couple of years and I am really really liking this base spec M2 mac mini. Works great as a simple browser and text editor machine and it is so quiet compared to my old pc I used to run linux on when not specifically playing games. Works great as an SMB share too compared to having to deal with samba on my nuc server that's stowed away where the fan can't reach me. It keeps working when I put the computer to sleep and wakes up when someone tries to access it. I've noticed on the switch I have on my desk that the lights change from 100mbps to 1gbps when I access the share as if the mac is powering up to properly serve stuff.

@Adam & @Joe H

re: multiple iCloud accounts for full original Photo Library backups being possible using a single always on Mac take a look at these two posts for step by step instructions. You can rinse and repeat what the two posts below detail out for as many unique icloud accounts and get full original photo libraries as well as full original photos stored in a directory structure organized by year month day (or any other parameter you prefer) without having used any signficant additiojal space if your drive is APFS.
Step 2 in particlar in this second link


Enabling Intel's AMT involved going into the BIOS and setting a password and turning on a bunch of other stuff. There is also a Windows-only utility that can configure it if you run it on the AMT-enabled system, but I found it very buggy.

Its been a while since I set up SuperMicro's IPMI, but I seem to remember I just had to do a scan to see what IP/Port IPMI was on, and then I was able to connect with the default username/password (admin/admin, I think) and configure it all from a web browser.

In general, IPMI works much, much better than AMT. AMT requires you to access it from a special program (Meshcommander) to do anything and is very finicky. IPMI you just connect to the dedicated IPMI IP address/port from any browser and everything is right there.

The IPMI web interface works with VoiceOver - it's not a great experience, but you are able to navigate and manipulate controls.

@Gordon Thank you very much for the detailed response and for testing. Much appreciated! A graphical framebuffer interface isn't great news but just getting access is certainly a large part of the journey, so it's good to know that it should be possible (with IPMI, at least) to do this relatively independently. I just wish system firmware engineers wouldn't assume that all use cases for computers start with the use of a monitor. I don't think you have to be blind to see the sense in that.

@sebby — "you'll want a Linux VM on it to do things macOS still can't run well" What do you run your VMs with? I've tried both VirtualBox and VMWare Fusion and neither seem reliable long term, running Ubuntu as a guest. Their virtual network just keeps dropping out every week or so. I got so annoyed I got an old tiny PC and installed Ubuntu on that instead, but it's annoying to have another device powered up 24/7.

@Jeff I seem to have settled on VMCLI, which seems to be unique in supporting the full use of Virtualization.framework's features, including memory ballooning which you really want for long-running VMs. I have also tinkered with Lima. If you need the GUI, have you tried UTM yet? That uses qemu+HVF. These allow you to run (very slowly) Intel-on-ARM, or vice-versa. I can't speak to Parallels, but that's the other commercial option (I use Fusion on desktop myself, but of course I only need server software on my server, so CLI is groovy).

@Sebby, thanks for your reply. I feel a bit stupid... I forgot that Virtualization.framework is not limited to Apple Silicon. Hadn't seen vmcli before — it looks promising! I have used UTM with great success on my M1 Mac but never thought to try it on my old Intel Mac server.

@Jeff Heh, you're not the only one, Howard Oakley made that mistake too. It seems to be that the proximate release of VF and Apple Silicon has conflated the two even though they're independent; perhaps it's people thinking of the limitation that you can't use macOS under VF on Intel, only AS. And anyway, why didn't Apple ship the CLI tool in the box? It's such an awesome capability that's being missed probably for that very reason.

Leave a Comment