Category: OSX

  • Build a Netatalk Time Capsule for OSX Lion 10.7 using Debian 6.0 Squeeze

    Time Capsule
    After going to the Apple Store with a friend and seeing the $300+ Apple Time Capsule I decided to see if I could do the same thing with Netatalk. Turns out I could but if you’re using Debian stable like me you need to get at netatalk 2.2.x before it’ll work with OSX Lion 10.7.x. After seeing a variety of other examples out there on the net and getting a little confused as to why they were doing certain things I decided to just post how I did it. Also, rather than install things from source I like to use debian packages to keep servers clean. But there was a small problem due to a netatalk make bug that debian’s package didn’t account for. So I will post those packages I backported to stable for this.

    Packages


    Debian 6.0 (Squeeze) AMD64

    Debian 6.0 (Squeeze) i386

    Netatalk Time Capsule Server Setup


    After you’ve installed the packages create a service group by creating /etc/avahi/services/afpd.service and adding the contents below: (this might not be necessary with netatalk 2.2)

    <?xml version="1.0" standalone='no'?><!--*-nxml-*-->
    <!DOCTYPE service-group SYSTEM "avahi-service.dtd">
    <service-group>
      <name replace-wildcards="yes">%h</name>
      <service>
        <type>_afpovertcp._tcp</type>
        <port>548</port>
      </service>
      <service>
        <type>_device-info._tcp</type>
        <port>0</port>
        <txt-record>model=Xserve</txt-record>
      </service>
    </service-group>
    

    Make a directory to store your time machine data:

    mkdir /var/timemachine

    Now mark the volume saying it is a supported time machine share:

    touch /var/timemachine/.com.apple.timemachine.supported

    Define a volume in /etc/netatalk/AppleVolumes.default with the allowed user, usedots to support hidden files, uprivs for afp3 privileges that osx lion needs, and tm to enable time machine support. (highlighted below)

    # By default all users have access to their home directories.
    ~/                      "Home Directory"
    /var/timemachine         TimeMachine allow:joe cnidscheme:dbd options:usedots,upriv,tm
    

    Now that things are configured we need to restart avahi.

    /etc/init.d/avahi-daemon restart

    And restart netatalk

    /etc/init.d/netatalk restart

    Apple OSX 10.7.x Lion Setup


    Now set your OSX installation so it sees unsigned time machine volumes.

    defaults write com.apple.systempreferences TMShowUnsupportedNetworkVolumes 1

    You should now see your volume in Time Machine Preferences under “Select Disk…”.