Using a Linux server for your Mac

Time Machine Server

One great feature introduced in Mac OS X 10.5 (Leopard) is Time Machine.

Time Machine is a backup/restore system. As a lot of backup systems it creates an incremental backup. You can create your backup to an attached hard drive, a Time Capsule or an Xserve.

If, like me, you would like to backup your Mac on a Linux server, there is a solution. It's not perfect yet, but so far (I'm using it for a week now) it's working quite well.

I followed the instruction written on how to create a Time Machine Server on Debian (it's in french), which is mostly a translation of this article on how to create a Time Machine Server on Ubuntu (in english).

It's quite easy, you just have to follow instructions. Some tips:

I said it was not perfect because from time to time Time Machine failed while backuping, so I have to launch a new backup (ok, it's just 2 clicks). The other problem is that my home folder is encrypted with FileVault. In that case Time Machine does not backup my home folder when I'm connected. When I logoff, FileVault do some stuff then my home folder is backuped. But now with a remote backup, the backup part is not done anymore. I have to connect with an other account and launch a backup.

iTunes Server

Like a lot of Mac users, I'm using iTunes to listen to my music. The overall software is quite good but there are several things that are just wrong. By default iTunes is only able to read mp3 and Apple's own audio codecs. I convert all my CDs to FLAC because it's a lossless and open source codec.

The other problem I have is that my MacBook has a small hard drive so I can't keep all my music on it (especially if encoded in FLAC).

The solution is to use Firefly and have it sharing my music on my local network. The music is decoded by Firefly then sent over the network, so iTunes doesn't have to know how to decode the original file.

Installing Firefly on Debian is quite easy:

$ sudo apt-get install mt-daapd

Then edit /etc/mt-daapd.conf in order to configure it a bit. There is also a web interface to configure Firefly, connect on your server on port 3689 with your web browser (the main thing you have to set is the directory where your music is).

Now open iTunes, you should see a Firefly share in the left panel:

Firefly

Some drawbacks with this method. On iTunes you only see remote playlists, so some functionalities are not working anymore (changing songs metadata, genius, sound check, creating your own local playlist from the remote one, copying a song to your iPod/iPhone (retrieving a song in local)).

Comments Add one by sending me an email.