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:
On my Debian installation there's a problem with
cracklib2-dev
package, I just had to installlibcrack2-dev
instead.Don't copy/paste the XML file from the tutorial's french version (the blog's style sheet messed up the quotes).
If you have to manually create a sparse bundle disk image, it seems that the size is the size of your "virtual" backup drive. For instance, I have 300 GB available on my server, I selected 200 GB as image size, so Time Machine should not use all the space available on my server but restrict itself to 200 GB (I hope so, it's not clear as Time Machine is still telling me that my hard drive is about 1.3 TB with 300 GB available, but the sparse bundle disk image is telling me that there is 200 GB with 100 GB available (I already have 100 GB of backup)).
On Debian, doing an update will erase your home made
netatalk
package. In order to prevent that you can use the following command (see Preventing Debian package upgrades):# echo "netatalk hold" | dpkg --set-selections
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:
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.