How to install Subsonic free music server on Ubuntu 20.04 linux

Do you want your own personal music server on Ubuntu 20.04 Linux just like Soundcloud? Then try our Subsonic, a free open source music server to stream music using the internet or local network.

Subsonic is a friendly solution to create a streaming media content server on Windows, Linux, or macOS systems. The installation is easy and its support for various media types is also vast. Not only audio files, but they can also be used to stream videos or movies (premium). Just like Google Music and Spotify, Subsonic provides built-in support for your Sonos player to access a personal music library. However, you can use the Subsonic app on your PC or smartphone to stream media content as well. Furthermore, one can also use its web interface to set up the music server according to needs and define, among other things, the desired music folder, the appearance of the web interface, and individual playlists.

The premium features can also be tried out in the first 30 days after the installation of this media server.

Steps to install Subsonic music server on Ubuntu 20.04 Linux

The process of installing and configuring Subsonic will also be the same for other versions of Debian or Ubuntu such as Ubuntu 19.4/18.04/16.04 including Linux Mint, Elementary OS, Zorin OS, and other similar kinds of  Linux distros.

Update your system

Before moving forwards let’s make sure all the installed packages on Ubuntu 20.04 or in the previous version you are using are up to date.

sudo apt update

Install Java JRE-8

Subsonic needs Java & its based Jetty web server to run, thus first we install that on our Ubuntu Linux. Thus, to install Java run the following command:

sudo apt-get install openjdk-8-jre

Download Subsonic

There are various kinds of executable files available for different platforms such as Windows, Mac OS X, Debian / Ubuntu, Red Hat / Fedora, Stand-alone version (all platforms), WAR version (all platforms), and Synology NAS. However, here we are using the Debina one. The best thing we don’t need to set up any additional web server such as apache to run the SubSonic. So, let’s first download the deb package of it.

Go to the official website download page of this open-source music server and click on the package you want to install. If you are on Ubuntu or Debian then get the available corresponding to that.

Those are on the command line server, they can use the wget utility to download the file. However, while writing this tutorial the latest version of Subsonic was 6.1.6. In case you are performing, if the Subsonic music server got some update, then simply first confirm the version number and then change the same in the below-given command.


Downlaod Subsonic for Ubuntu 20.04


Install Subsonic Music server on Ubuntu 20.04 LTS

Finally, the Java and Debian packages of Subsonic both are your system, now it’s time to install the Subsonic. Again go to your Command terminal and type the following commands:

If you have downloaded the Subsonic package using the browser then by default it will go to the Downloads folder. Therefore, first switch to that;

cd Downloads

Now, use the dpkg  to install the Debian package:

sudo dpkg -i subsonic-6.1.6.deb

Note: In case you have a different version of this music server then change the file name “subsonic-6.1.6.deb” with the version you have downloaded.

Add non-root user for Subsonic

by default the media server will run under the root user, therefore to improve the security, we will create a user that would not have the root access to run Subsonic.

Note: You can change the user name “subsonic” in the below command as per your choice.

Create a system user:

sudo useradd --system subsonic

sudo gpasswd --a subsonic subsonic

Specify the user in the config file

Open the configuration file using the text editor:

cd etc/default/
sudo nano subsonic

In the file change the SUBSONIC_USER=root to SUBSONIC_USER=subsonic

You can also change the port number, increase Subsonic Memory, and enable SSL support here. However, right now we are just changing the user name.

Save the file by pressing Ctl+X , type Y and hitting the Enter button.

Create Subsonic music server user

Restart eh Subsonic server

After committing the changes, restart the server to make the change into effect.

sudo service subsonic restart

To enable the subsonic automatically start with system boot:

sudo systemctl enable subsonic

Create a Music folder

Now, create a Music folder using the given command and after that give its access permission to the Subsonic user we have created above:

sudo mkdir /var/music

#For those want to steam videos as well...

sudo mkdir /var/movie

#Give Subsonic, the permission of these folder

sudo chown subsonic:subsonic /var/music
sudo chown subsonic:subsonic /var/movie

Note: You can change the Music folder path as per your requirement. It could be in a NAS box or an external drive.

After this, add all your music files to the folder you created above.

Open Subsonic in a web browser

If you are using the local system browser then to access the Subsonic Admin web page, type: localhost:4040 in the browser. However, on other systems in the same network use the system or server IP address where this music server has been installed. The port number is 4040.

By default, the password and username of Subsonic is admin

Login Subsonic

Change Administrator Password

The first thing you will see after login is the suggestion to change the Administrator password. Click on the link given there and change it to ensure better security from preparators.

Change Admin password

 Setup Music folder

Click on the Settings and then the Music folder to set the folders for music and movies you have created.

Setup Subsonic Music Folder

That’s it, start enjoying your music streaming on PC, laptop, Android, and other devices. However, those who want to enable SSL support can follow the official guides.

Play Music remotely on Subsonic


2 thoughts on “How to install Subsonic free music server on Ubuntu 20.04 linux”

  1. The guide helped me, but I gotta admit it had several issues. One of them is creating the new user subsonic which I believe is unnecessary, it only created new problems, there are also a few syntax problems with the commands but no big issue. Even tho thanks for the guide.

  2. It installs without complaint for me on Ubuntu 20.04.4 LTS but the web interface does not work. It returns ERROR 503 “Service Unavailable”. The subsonic log shows an error parsing some kind of XML resource for sonos. Does anybody know how to fix this?

    836 [main] ERROR org.springframework.web.context.ContextLoader – Context initialization failed
    org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from ServletContext resource [/WEB-INF/applicationContext-sonos.xml];


Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.