iTunes DAAP server setup on Ubuntu/Debian Linux

DAAP server is an Apple Inc. proprietary protocol to share media files over the network. DAAP server allows share media files among network connected devices where the central media share repository resides on main server. In this simple tutorial we will be installing and configuring DAAP server share using forked-daapd media server with support for RSP, DAAP, DACP and AirTunes on Ubuntu Linux or any other Debian Linux based system.

In this tutorial you will learn:

  • How to install forked-daapd on Ubuntu/Debian
  • How to configure forked-daapd
  • How to create a media directory for music
  • How to start, enable, and restart the DAAP service
iTunes DAAP server setup on Ubuntu/Debian Linux
iTunes DAAP server setup on Ubuntu/Debian Linux
Software Requirements and Linux Command Line Conventions
Category Requirements, Conventions or Software Version Used
System Ubuntu Linux or Debian Linux
Software forked-daapd
Other Privileged access to your Linux system as root or via the sudo command.
Conventions # – requires given linux commands to be executed with root privileges either directly as a root user or by use of sudo command
$ – requires given linux commands to be executed as a regular non-privileged user

iTunes DAAP server setup on Ubuntu/Debian Linux step by step instructions



  1. In the first step, create a media share directory and upload all your media files to this directory. In our example we are going to use /opt/media directory:
    $ sudo mkdir /opt/media
    # COPY YOUR MEDIA FILES TO /opt/media
    
  2. Next, install the forked-daapd daemon via the apt package manager:
    $ sudo apt update
    $ sudo apt install forked-daapd
    
  3. Once the installation is finished you can use the following systemctl command to start the forked-daapd service, enable it to start automatically at system boot (optional) and finally check the current status of the service:
    $ sudo systemctl start forked-daapd
    $ sudo systemctl enable forked-daapd
    $ sudo systemctl status forked-daapd
    
    Confirming that the forked-daapd service is running on our system
    Confirming that the forked-daapd service is running on our system
  4. You may also want to check on what port is forked-daapd listening. The default socket is 0.0.0.0:3689.
    $ ss -nlt
    

    Check to make sure that forked-daapd is listening on the intended port
    Check to make sure that forked-daapd is listening on the intended port



  5. At this stage we need to point our new DAAP server to media share location. To do this we open forked-daapd configuration file located at /etc/forked-daapd.conf and update your the following settings:
            name = "My DAAP share"
    ...
            directories = { "/opt/media" }
    
    Configuring the settings of our DAAP server
    Configuring the settings of our DAAP server

    The above is a minimal configuration you want to perform before you start using your DAAP media server.

  6. Once the above configuration setting are in place all that remains is to restart forked-daapd for the changes to take effect.
    $ sudo systemctl restart forked-daapd
    
  7. Your DAAP server is now up and running. All that remains is to use DAAP client and connect to DAAP media server. The way to accomplish this task depends on each particular media client. Below as a screen shot of a Rhytmbox connected to forked-daapd share.
    Using our media client to stream music from the DAAP server
    Using our media client to stream music from the DAAP server


Closing Thoughts

In this tutorial, you saw how to intall and configure an iTunes DAAP server on Ubuntu Linux and other Debian based systems. You can load all kinds of music media formats into your DAAP server, and these will be converted on the fly when streamed to other devices. Now you can enjoy your entire music library without filling up the storage on all of your listening devices.