How I put my Mac mini to use as an all-purpose server

About two years ago, when all of my main desktop and laptop machines had long been transitioned to Macs, I was still running a Windows PC to act as my server. I used it mainly for e-mail running Kerio Mailserver, and furthermore it acted as a file server. As my willingness to keep this Windows system in good shape by applying all sorts of patches and updates degraded at almost the same speed as to which my desire to replace the last piece of Windows equipment with an Apple-solution grew, I decided to buy one of Apple’s only affordable “headless” desktop systems: a Mac mini.

Trading up to a Mac to use as my server gave me a lot of other advantages (apart from no longer having to keep a Windows system safe and secure), the most obvious being Apple’s excellent integration. Now, I can far more easily take over the server’s screen from my work-iMac, it is automatically backed up, it contains the same passwords for apps and website as my work machine, and it offers some other advantages all of which will be explained below in this article.

My Windows server was located in an unused room in my house, due to its ugly appearance, but most of all because of the sound generated by its fans. When the Mac mini came, silent as it is, my friend Martijn suggested to put it in the living room next to my entertainment equipment, “because it is too beautiful to hide away”. As always, he was right. We soon realised that by placing the Mac mini next to my TV and amplifier, and due to the “allways on” nature of a server, it could also be used for other purposes more focused on delivering audio and video content.

In this article, I want to give you an overview of all the things that I use my Mac mini for. Partly to inspire others, but mainly because I hope that readers will inspire me by giving me suggestions on how to even better put the machine to work.

Online services

The Mac mini’s main purpose is to act as a server, giving me access to various kinds of data from my working machine iMac, my MacBook, my iPhone, and even from any other computer (at a friend’s, client’s or a public PC) by means of various web access possibilities. Let me show you what online services I have running:

  • Mail
    The Mac mini’s main purpose is to act as a mail server for me, my girlfriend and even some other close friends and relatives. For this, I use Kerio Mailserver, which is an excellent mail and groupware server. It is fully compatible with Microsoft Exchange, meaning that any client that is comptible with Exchange (like the iPhone) can fully benefit from all of its features. And all of this at a fraction of the costs and complexity involved with running an Exchange server (the most important, of course, being that Exchange only runs on a dedicated Microsoft server OS). It also offers an excellent web interface, meaning that I can not only browse trough all of my e-mail on my iMac, MacBook and iPhone, but also on any Internet-connected computer in the world. Running your own mail server offers many advantages, but to me the most important of them are the fact that all of my e-mails (including the all the messages that I sent) are always available whenever I need to look something up, followed by the fact that message status (like read or unread, or the replies I sent) is always in sync no matter what computer or device I use. My advice in case you are unable or unwilling to set up your own server is to at least upgrade to an IMAP e-mail account (like Google’s Gmail). These days we use our home computer, our phone and for example our employer’s PC to access our e-mail, and not having synced these up is a real pain.
  • Group Calendaring
    The same Kerio Mailserver software also holds my calendar, and that of my girlfriend. Being Exchange-compatible, it is always in sync with iCal on my Macs and with my iPhone. My girlfriend and I have access to each other’s calendar, and because of the push-technology built into the iPhone OS, the phone always shows up to date information. The minute I enter an appointment in my phone, she can see it on her’s. This has proven a godgift to us, as it allows us to make appointments where-ever we happen to be and immediately see if the other is busy that time or not (either to plan individual appointments on the date that the other one is also busy, and thus increasing the chance that we can spend other times together, or to plan events that we both like to attend). Let’s call it modern family-management!
  • Contacts Management
    Finally, Kerio Mailserver of course also takes care of our contacts management. Not only does it keep all of my contacts data (like phone numbers and e-mail addresses) in sync between my own devices, it also allows us to share some contacts with each other. When I am somewhere and someone informs me that their phone number has changed, I can edit this information on my iPhone, which immediately syncs it to the server, and hence to my girlfriend’s iPhone. Neat, huh?
  • FTP
    As Mac OS X includes FTP services right out of the box, it is not that hard to imagine that a Mac mini server can also be used to act as a file server to others. I need an FTP server for a client of mine to upload large documents for me to include on one of the web sites that I manage. However, configuring the FTP services of OS X can be limited or confusing. This is where the free PureFTPd Manager comes in. It allows you to configure things like setting up user accounts and accessability rights. Once done, PureFTPd Manager does not need to be running anymore, as it simply configures the built-in FTP deamon of OS X.
  • Webcam
    As I told you before, the Mac mini is located in my living room, which motivated me to connect a webcam to it, pointing at the stairs that lead to my city’s beautifull gothic church, which is right in front of my house. For this I use the Evocam software, as it has many nice options such as superimposing a title or date over the webcam’s image, and best of all: it includes an integrated webserver, hence there’s no need to upload webcam images to a server or something. As the view trough my window is not that spectacular, I have not publicly announced my webcam, it is merely there for myself to have a peek once in a while when abroad. Have a look at the cam at www.stikkehezel.com (Stikke Hezel being the name of my street).
  • Simplify Media
    As the Mac mini also contains my entire music library (covered in more detail later), I might as well make this music accessible to myself when I’m out of the house. This is what Simplify Media does. It allows you to access your library of music on any other computer that has the Simplify Media software installed with my login credentials. It also allows up to 30 friends to be set up as being able to access your music. But best of all, its creators have also created a Simplify iPhone app, which allows me to access all of my music through my iPhone. As my music collection is several times larger than the iPhone’s entire storage capacity, this comes in very handy at times.

Maintenance of the server

There are several “meta” services running on the Mac mini, allowing me to easily access and maintain my server, and allow others to do so.

  • Dynamic DNS
    As I am connected to the internet via my local cable ISP, my IP address might change from time to time. This makes it very difficult to access my server from another device or computer. Luckily, this can be solved by using a “dynamic DNS” client. Such a client contstantly monitors my IP address, links it to an easy to remember domain name, and updates this domain information whenever my IP address changes. The best known company to offer this service is DynDNS.org. Most cable and ADSL routers allow for the DynDNS client to run in the router itself, however as the ones from Apple do not (and I use a Time Capsule as my router), I need to run the free DynDNS Client on the Mac mini.
  • Screen Sharing
    Starting with Mac OS X 10.5 Leopard, Apple has included excellent and easy means of accessing another computer’s screen on your network. All of the local machines show up in the Finder, and it is just a matter of selecting one of them and choosing Share Screen. The Mac mini’s display is shown on my working iMac as if I was sitting just in front of it. This means that no keyboard, mouse or even display needs to be connected to the server.
  • Remote Management
    As my friend Martijn has multitudes more knowledge of maintaining Mac servers and all of their installed services (being the owner of an independent software company who does all of the system maintenance himself), it is very handy that I can let him perform upgrades and troubleshooting directly from his office. He is using Apple’s Remote Desktop software, the receiver’s end (in this case my Mac mini) does not need to have additional software installed as it is all part of Mac OS X.
  • Statistics on iPhone
    I recently installed iStat server on my Mac mini, which enables me to use the iStat iPhone application to remotely inspect my server’s CPU and memory usage, disk space, network activity, internal temperatures and fan speeds. It gives me a clue of the server’s health while on the road. If only the program allowed me to see running OS X processes, or even let me kill or restart them, iStat would become the ideal server management app. (Yes, of course could use a VNC client on the iPhone to take over the mini’s screen, but that’s rill rather cumbersome on the iPhone’s small screen.)

Audio and video media services

As stated above, the initial reason to put the Mac mini in my living room instead of in the unused room in my home that previously housed the Windows server, was an eastetical one. However, as it was sitting there right next to my entertainment equipment, I could just as well connect it to my 37″ HDTV and audiosystem. Let me start by saying that I have never consumed movies from a computer. I do not download pirated movies (in part because of the hassle involved and the dubious quality of the videos, let alone some ethical issues that I have with it). I’m from a generation that still buys DVDs and Blu-ray Discs. That’s not to say that for my music consumption, daily usage has long since migrated to accessing my library from a computer and related peripherals. Let’s take a look at how I use my Mac mini as a home entertainment extension.

  • iTunes synchronization
    My iMac is my main working computer. I also manage my music on this machine, as it allows me to easily connect it to my iPhone and sync music and podcasts over to it. And I have easy access to its CD drive to import new music. When I want to use the Mac mini to play my music independently, my library someway has to be stored on that computer as well. This process gave me some real headaches in the past. Simply assigning the Mac mini as the storage volume for my iMac library does not allow the iTunes on that same Mac mini to access and play this music by itself. Therefore, I needed to sync the iMac and Mac mini music libraries. After having tried various tools and methods, I am currently using SuperSync. It runs on all the computers you want to sync, and can check against more than 2 computers for “missing music”. For now, this allows me to easily port my music to the Mac mini. But if there are readers out there who might have a better solution (I’m still looking to automate this process in the background of both the iMac and the Mac mini), then I am more than willing to learn from them.
  • iPhone Remote and Airport Express
    One of the beauties of having my music on my Mac mini is that I can play it back trough the connected amplifier without the need for turning on a display. This can be done trough Apple’s free Remote application for the iPhone. It shows a complete listing of all the artists, albums and songs on the iPhone’s screen, just as it would with the iPod application, and then allows you to select the music you want to hear. How’s that for convenience: choosing music from the comfort of your couch without a distracting computer display or television. What’s more: the remote app also let’s you select other playback devices that support iTunes’ AirTunes feature, such as an Airport Express. Since I have one of those set up in my kitchen, connected to a powered pair of speakers, I can choose what music to listen to even when I’m doing the dishes or cooking.
  • MediaCentral
    Mac OS X Leopard comes with a very nice media playback utility that can be used with the bundled Apple Remote called FrontRow. However, FrontRow is limited to accessing music and video from iTunes and iPhoto. If you want to do a little more, you need to look out for a replacement. I found one in Equinux’s MediaCentral. Apart from all of the functionality of FrontRow, it can play back video content from the Internet (such as YouTube and a large selection of movie trailers) and offers a lot of other features, most of which I don’t use (such as the recording functionality when you connect a TV-tuner stick, effectively turning your Mac into a Tivo or PVR).
  • Google Earth
    The most effective app for showing off a large high definition TV. ’nuff said.

Not everything is on this server

There are some services and applications that in theory could be handled by the Mac mini as a server setup, however for some reasons I choose not to do so. Mostly because other devices do these things themselves, or in a more effective way. Let me summarize.

  • Backing up using Time Capsule
    I have not set up the Mac mini as a local file server or backup machine. As I use Apple’s Time Capsule as my network router, I use its internal 500GB harddisk drive in conjuction with Mac OS X’s Time Machine functionality. This means that all of my Macs (including the Mac mini) are automatically backed up every hour. In case of a disk failure in either the server or the Time Capsule, there is (hopefully) still one current copy left. I prefer the tight system-wide integration of Time Machine over other backup solutions, and since Time Machine currently does not allow backups being made to anything other than a local disk or a disk connected to an Apple router, I do not use the Mac mini as a backup server.
  • MobileMe for web hosting and syncing
    Although I could use the built-in Apache web server of Mac OS X on the Mac mini to host my personal web sites, I choose not to do so. Instead, I have put my sites (such as Kennis Consultancy and Overstappen naar Mac) on my MobileMe account. For one, as I make them with Apple’s iWeb software, it is literally just a one-click process to put the site updates online. But furthermore, I realize that my ISP’s uplink spead is probably not high enough to serve websites in an expected fashion. Furthermore, I use MobileMe’s excellent synchronization functions that are so well integrated into Mac OS X to keep my system’s keychain (containing all the passwords for applications, networks, websites, and others), as well as my Safari bookmarks in sync between all my Macs and my iPhone. Please note: If you for whatever reason plan not to set up your own server, at least make sure to get MobileMe, as it offers some very neat mail/calendar/contacts functionality as well!
  • Printer has integrated server
    My color laser printer has an integrated print server built-in (as do most decent printers these days), which means that I do not have to connect the printer to the Mac mini server and still being able to print to it from all computers. As a minor detail I’d like to add that the USB printer connectivity on Apple’s router devices is merely a “remote printing” functionality instead of a true spooling print server, which might give unexpected results when printing to it from different computers at once (but, I admit, the chances of this happening in a household are almost absent).

As I hopefully made clear in this article, there are many reasons to add one of those low-cost Mac mini’s to your system as a multi-purpose allways one solution. It can surely benefit your computing experience, especially when you have multiple computers and iPhones, or when you need access to your mail, calendar, contacts, music, FTP or webcam when away from your house. And when you plan on enhancing the computer experience for multiple people instead of just yourself, a dedicated server becomes almost a no-brainer.

Update 1/25: Added a portion about the iStat iPhone app under the heading Maintenance of the server.

Advertisements

5 thoughts on “How I put my Mac mini to use as an all-purpose server

  1. Jake, I used the latest Mac mini (Core2Duo 2.0 GHz with 2GB of RAM), which by now is alreay one and a half years old. As you probably know, new Mac minis are expected somewhere this first quarter of 2009, so if you are planning on obtaining a new one, I would hold out for just a little bit longer.

    That said, I’m fairly sure that every Intel-based Mac mini should be up for the jobs described in my blog posting. It shouldn’t be that hard. I would however advise on maximising the RAM in the machines.

  2. Aelver: Most flat screen TVs have an HDMI connector, which is essentially DVD+copyprotection+audio. You can easily connect the Mac mini using a DVI-to-HDMI cable. You have to connect audio seperately.

    If your TV does not have an HDMI or DVI connector, you may use the appropriate Apple adapter to get a VGA, composite or S-Video signal from the connector on the Mac min.

Comments are closed.