After coming back from holiday where I made lots of photos and videos, I needed the possibility to import all those from SD cards to my fileserver running Debian unstable. To import the photos I used Digikam on Linux, that was no problem. But for the videos I needed iMovie and/or FinalCut Express on my Mac. I've looked into Kino and Cinelerra, but those Linux apps are awful.
The problem was that iMovie is able to directly import from our Panasonic HD camcorder to the network storage. I was always forced to first import the fotoage to the drive in my MacBook Pro and copy it then to the Linux box onto a Samba share. The solution for that problem is to use netatalk/AFP. The Linux box appears as a Mac Xserve then.
However, I quickly found some HowTos for configuring netatalk. One HowTo is from Mike Hughes and the other one can be found on disgruntled-dutch.com. If you follow these two HowTos you're quite close to have a working AFP service to interact with your Mac via Bonjour/Avahi.
There are mainly two problems when you follow them. First, Mike Hughes has some illegal chars in his sample /etc/avahi/services/afpd.servicefile:
<!DOCTYPE service-group SYSTEM “avahi-service.dtd”>
The quotation marks are the problem. Instead of ” you'll need normal " quotation marks. Or you can use the file on disgruntled-dutch.com.
Next problem is the configuration of the shares. On both sites the examples are using cdb as CNID backend:
~/ "Home Directory" cnidscheme:cdb options:usedots,upriv
But this will give the following error:
Aug 3 23:30:29 muaddib afpd: Can't open volume "/home/ij" CNID backend "cdb"
Aug 3 23:31:26 muaddib afpd: Cannot find module named [cdb] in registered module list!
The solution can be found on forum.ubuntuusers.de (German): you'll need to change the cdb to dbd. So, the Home Directory share will look like this then:
~/ "Home Directory" cnidscheme:dbd options:usedots,upriv
Quite simple and easy. Now restart your avahi-daemon and netatalk services and have fun! When you want to use a share on your Linux server for TimeMachine backups, you'll need to add a "tm" to the options of your share.