Installing Netatalk 3 on Fedora Linux


This installation guide was originally written for Netatalk 3.2.0-devel on Fedora 39

Required Packages

Install the following packages by dnf.


Get the tarball from Netatalk Web Site and extract it, or clone the git repo from GitHub.

If cloned from git repo, run bootstrap to generate the build files.

$ ./bootstrap

You should read the configure help message, in order to know configure options.

If the applicable libraries are installed, many options will be detected automatically.

$ ./configure --help

Do configure! The following options are not auto-detected.

$ ./configure \
   --with-init-style=redhat-systemd \
   --with-cracklib \
   --enable-krbV-uam \
   --with-pam-confdir=/etc/pam.d \
   --with-dbus-sysconf-dir=/etc/dbus-1/system.d \

The version 3.0 --with-tracker-pkgconfig-version=3.0 must match the pkg-config version of the installed Tracker libraries. Use the following commands for finding the version info:

$ pkg-config --list-all | grep tracker

On successful completion, you will see a report similar to the following:

Compilation summary:

   CPPFLAGS       = -I$(top_srcdir)/include -I$(top_builddir)/include -I$(top_srcdir)
   CFLAGS         = -D_U_="__attribute__((unused))" -g -O2
   LIBS           =  -lcrack
       LIBS   = -lpthread
       CFLAGS = -pthread
       LIBS   = -ltracker-sparql-3.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0
       CFLAGS = -I/usr/include/tracker-3.0 -I/usr/include/tracker-3.0/libtracker-sparql -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/json-glib-1.0 -I/usr/include/libxml2 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/sysprof-6 -pthread
       LIBS   =  -L/usr/lib64 -lcrypto
       CFLAGS =  -I/usr/include/openssl
       LIBS   = -lgcrypt -lgpg-error
       CFLAGS =
       LIBS   =  -lpam
       CFLAGS =
       LIBS   =
       CFLAGS =
       LIBS   =  -L/usr/lib64 -ldb-5.3
       CFLAGS =
       LIBS   = -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err
       CFLAGS =
       LIBS   =  -lavahi-common -lavahi-client
       LIBS   =  -lldap
       CFLAGS =
       LIBS   = -levent
       CFLAGS =
       LIBS   =
       CFLAGS =

Configure summary:

        Extended Attributes: ad | sys
        ACL support: yes
        Spotlight: yes
        backends:  dbd last
        DHX     (PAM SHADOW)
        DHX2    (PAM SHADOW)
        RANDNUM (afppasswd)
        Kerberos V
        clrtxt  (PAM SHADOW)
        Zeroconf support:        yes
        tcp wrapper support:     no
        valid shell check:       yes
        cracklib support:        yes
        ACL support:             auto
        Kerberos support:        yes
        LDAP support:            yes
        AFP stats via dbus:      yes
        dtrace probes:           yes
        Netatalk lockfile:       /var/lock/netatalk
        init directory:          /usr/lib/systemd/system
        dbus system directory:   /etc/dbus-1/system.d
        dbus daemon path:        /bin/dbus-daemon
        tracker prefix:          /usr
        tracker install prefix:  /usr
        tracker manager:         /usr/bin/tracker3 daemon
        pam config directory:    /etc/pam.d
        Docbook:                 no

Docbook is not needed because it is for developers only, when regenerating documentation.

Make and install.

$ make
# make install


Check features and paths, using netatalk -V and afpd -V.


Edit /usr/local/etc/afp.conf.




   basedir regex = /home

[Test Volume]

   path = /export/test1

[My Time Machine Volume]

   path = /export/timemachine
   time machine = yes

You should check the firewall. AFP’s port number is 548. Zeroconf’s port number is 5353.

Enabling and Starting

# systemctl enable netatalk
# systemctl start netatalk

This is a mirror of the Netatalk GitHub Wiki. Please visit the original page if you want to correct an error or contribute new contents.

Last updated 2024-05-13