Guides 11792 Published by

This guide walks you through installing the Jellyfin media server on Ubuntu 22.04 or 20.04, starting with a clean system update that keeps dependencies current and avoids later headaches. Next it shows how to add the official Jellyfin repository, install the package in one command, enable the service so it boots automatically, and launch the web UI at http://localhost:8096. If you plan to expose your server beyond the LAN, the tutorial covers securing it with Let’s Encrypt, editing the system configuration for HTTPS, and restarting the daemon. Finally, a concise troubleshooting section points out common problems—from missing GStreamer codecs after an upgrade to port conflicts and CPU‑limited transcoding stalls—and suggests quick fixes like installing ubuntu-restricted-extras or moving jobs to a GPU‑enabled machine.



Install Jellyfin Media Server on Ubuntu 22.04 or 20.04

If you’re looking to turn a spare PC into your own media hub, this quick walk‑through shows how to install jellyfin media server on Ubuntu 22.04 and 20.04 without the usual bloat.

Step 1: Update Your System
sudo apt update && sudo apt upgrade -y

Why it matters? Fresh packages mean fewer missing dependencies later, especially for GStreamer plugins that jellyfin relies on for transcoding.

Step 2: Add the Official Jellyfin Repository

Ubuntu’s default repos lag behind. Pulling from the upstream repo keeps you current and avoids version conflicts.

wget -O- https://repo.jellyfin.org/jellyfin_team.gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/jellyfin-archive-keyring.gpg

echo "deb [signed-by=/usr/share/keyrings/jellyfin-archive-keyring.gpg] \
https://repo.jellyfin.org/ubuntu $(lsb_release -cs) main" | \
sudo tee /etc/apt/sources.list.d/jellyfin.list

If you’ve used the Snap version before, removing it first (sudo snap remove jellyfin) prevents a double‑install nightmare.

Step 3: Install Jellyfin
sudo apt update
sudo apt install jellyfin -y

The package pulls in libjellyfin-server and its runtime dependencies. No extra steps, just one command.

Step 4: Enable & Start the Service
sudo systemctl enable --now jellyfin

Enabling the service guarantees it starts on boot, and the --now flag brings it online immediately so you can jump straight to the web UI.

Open a browser at < http://localhost:8096> (or your server’s IP) and complete the wizard. You’ll see a splash screen with a “Welcome to Jellyfin” message—no more corporate jargons here.

Optional: Secure With HTTPS

If you’re exposing jellyfin outside your LAN, set up Let’s Encrypt.

sudo apt install certbot
certbot certonly --standalone -d media.example.com

Edit /etc/jellyfin/system.xml to point httpsPort to 443 and add:

<PublicServerUrls>
  <Url>https://media.example.com</Url>
</PublicServerUrls>

Then restart: sudo systemctl restart jellyfin.

Troubleshooting Common Issues
Symptom Likely Cause Fix
“Error loading media” after a recent kernel upgrade GStreamer codecs missing sudo apt install ubuntu-restricted-extras
Jellyfin won’t start: “Failed to bind port 8096” Another service using the port Check with sudo lsof -i :8096 and kill or reconfigure that process
Transcoding stalls after a few seconds Insufficient CPU resources Move transcoding jobs to a GPU‑enabled server or disable transcoding in Settings

I once had a library freeze halfway through a movie because the system had dropped the libavcodec-extra-56 package during an unattended upgrade. Reinstalling that tiny dependency instantly fixed it—proof that keeping your deps in check saves headaches.

That’s all you need to get jellyfin up and running on Ubuntu 22.04 or 20.04. Grab a coffee, fire up the web UI, and start streaming from wherever you’ve stored your favorite shows.