Ubuntu Server 22.04

Tomorrow Ubuntu 22.04 should released and so my question. Has already someone upgraded (with do-release-update -d) to the new version and see problems with this version?

If you’re on 20.04 Long-Term Support, then I’d recommend waiting. I’d certainly try the upgrade in a VM first. Also the Release Candidate has only just been published, so I don’t expect the final build for a couple of days.

1 Like

I installed Roon on a freshly installed Ubuntu 22.04 LTS server last night. do-release-upgrade from 20.04 did not work for me, but that was probably user error. After a fresh install of ubuntu server 22.04 from USB, and installing a couple of extra dependencies (lbzip2 and libnss-mdns) Roon server is working without issue.

To complete the install, I ssh’d into the server, then:

sudo apt update
sudo apt install -y lbzip2
sudo apt install -y ffmpeg
sudo apt install -y libasound2
sudo apt install -y cifs-utils
sudo apt install -y libnss-mdns
curl -O http://download.roonlabs.com/builds/roonserver-installer-linuxx64.sh
chmod +x roonserver-installer-linuxx64.sh
sudo ./roonserver-installer-linuxx64.sh
1 Like

Good news.
I have been running Ubuntu server 22.04 also on a RPI installed with Roon bridge.

Works perfect

A current LTS release doesn’t show available upgrades until the point release, e.g., 22.04.1, is out, which is usually around September.

Incidentally, I attempted an upgrade on my MacBook Pro and this failed. However, the hardware and build is uncommon, so I’m not too surprised. A fresh install went smoothly.

I won’t be updating my servers for some months, if not longer.

2 Likes

Yeah I was kicking myself after the do-release-upgrade caused a kernel panic on boot. Definitely agree anybody already running 20.04 will be best to stay put for now.

I just updated my RoonCore (NUC7i3BNK) from Focal Fossa 20.04.4 LTS server to Jammy Jellyfish 22.04 LTS server with do-release-upgrade and it worked like a charm.

I just had to uninstall/reinstall QuteBrowser and update my ~/.config/qutebrowser/config.py (I’m using QuteBrowser as display).

Everything else is running without a glitch. :ok_hand:

2 Likes

Just upgraded to Ubuntu 22.04 using the “do-release-upgrade -d” option and Roon Server is working for me on Intel NUC.

4 Likes

Ubuntu works perfectly.

2 Likes

In the evening I’ve now also updated to server 22.04.
Roon itself had no problems with it, but:

  • Logitech Mediaserver → you’ve to install a nightly build from 8.3, because Ubuntu has updated perl
  • liquidsoap cannot build with the Focal OPAM, because there isn’t a version for Ubuntu 22.04, but I solved it with installing with options from a new installed OPAM.

@Mark_Mitchell I just wanted to say thank you for your post. The roon instructions did not work for me. But your very clear and concise guide helped me with the installatiin and i now have the headless server i wanted. Roon should take your post and include it in their setup guide

1 Like

Here are a couple of tweaks I found for Roon on Ubuntu Server. The first is using the low latency kernel instead of the generic one that is installed by default. The second is installing the Ubuntu Studio tweaks - this seems to just affect swappiness which I was changing anyhow, but it’s all wrapped up in a nice package. I’m running headless on a low power machine, and both these worked for me. Free to try…

Instructions to install the low latency kernel

Instruction to install the Ubuntu Studio tweaks

I’m very keen to know if anyone has other optimisations or tweaks to share for Roon on Ubuntu Server.

4 Likes

As a weekend project I installed RoonServer using Ubuntu Server 22.04.1 LTS as a base OS on my NUC7i3 which is usually running ROCK.
I used an old unused SSD (OCZ Vertex 2) in an USB 2 case so i didn’t need to mess with the ROCK install (disabled the PCI M.2 Slot in BIOS to be safe).

Works fine, thanks to @Mark_Mitchell for the complete list of dependencies.
As a side note: The download location for the install script meanwhile has changed to
https://download.roonlabs.net/builds/roonserver-installer-linuxx64.sh

Also thanks to @AHHYAYA for the performance tweaks. Still available and working.

The above mentioned dual install (ROCK on internal M.2 SSD, Ubuntu on external USB SSD) works fine. Both installations access the music data on the internal 2.5" SSD inside the NUC and it’s a matter of 1 minute to change between ROCK and Ubuntu for comparison purposes by booting either into ROCK or into Ubuntu using the NUC boot menu (F10).

First impressions:
RoonServer on Ubuntu runs even faster than ROCK.
User experience on the Remote is identical (both snappy), but the performance indicator in the Signal Path using upsampling and convolution on 44.1/16 files shows 13x for ROCK and 19x for Ubuntu (no big difference, I know).
Without upsampling, using only convolution, the indicator isn’t even triggered on Ubuntu while ROCK drops to 80x.

That was unexpected since Rock presumably being lightweight and optimized for Room and Ubuntu being possibly throttled by installation on an much slower USB drive - which is holding the Roon database as well.

An additional M.2 SSD is on order, so let’s see what can be accomplished by moving the Ubuntu install to a faster drive inside the NUC…

1 Like

Ubuntu Server has been running really well for me since my post above. I’m now running version 22.10 with the 22.10 versions of the packages I listed above with no problems.

Here are some additional things I’ve tweaked… These are more general guidance rather than specific instructions as what to do will be different for different hardware.

  1. Remove interrupts for unused/irrelevant devices - the command “cat /proc/interrupts” will show interrupts, and any not needed may be able to be disabled through kernel parameters during boot. As an example I’m using older hardware that has PS/2 ports for the mouse and keyboard that I don’t need for music playback, so I disable them by editing /etc/default/grub to have GRUB_CMDLINE_LINUX=“i8042.noaux i8042.nokbd”, then update grub using “sudo update-grub”. Because my server connects to my endpoint via ethernet I also disable USB, and a bunch of other things. The kernel parameters being passed are described here The kernel’s command-line parameters — The Linux Kernel documentation. I always connect to my server using SSH, so don’t need a keyboard, but if I did I’d change that parameter and update grub again.

  2. Disable unused services. You can check what is running on your server with a command like “ps -ef”. Some services may be related to a package that can be removed, e.g. “sudo apt-get remove polkitd”, some can be disabled through the command line, e.g. “sudo systemctl stop rpcbind” then “sudo systemctl disable rpcbind”.

Be careful when doing either of these as disabling the wrong thing could make the OS unresponsive and require a reinstall. I didn’t post this earlier as it’s not strictly required because performance is OK with the default install, but it’s fun for someone like me who likes to tweak things. I used to do UNIX programming back in the day, so know enough to generally keep out of trouble :slight_smile:

1 Like

The additional M.2 SSD has arrived and I did a fresh install on it mounted inside the NUC. Results are consistent with the above mentioned experimental USB-Installation.
Moving the SSD inside the NUC maybe speeds up the boot time a bit, but has no noticeable impact on Roon performance itself (neither user experience, nor processing speed on upsampling etc.).
So I moved the M.2 SSD in an external USB3.2 case to re-establish the dual boot scenario (Rock on internal SSD / Ubuntu on external SSD). With the high-speed USB attachment, there’s hardly any difference to tell from then internal installation.

I did additional processing speed comparisons between ROCK/Ubuntu before and after applying the performance tweaks (real time kernel, Ubuntu Studio Tweaks).

Without the performance tweaks the processing speed indicator shows pretty much the same numbers for ROCK and Ubuntu.
The real time kernel improves performance only a little bit, judging from the processing speed indicator.
The largest effect is achieved through the Ubuntu Studio Tweaks.
In all cases CPU usage as seen in htop is far below 10%, so nothing critical whatsoever.

I think I’ll stick with Ubuntu especially for security reasons (no guest access to the machine) and reconsider once Roon pushes out RoonOS 2.0.