How to Set Up a Home Media Server with Plex or Jellyfin on elementary OS
Running your own media server has quietly become one of the most rewarding weekend projects for Linux users in Australia. With NBN fibre now reaching the majority of homes and patchy 4K streaming frustrating users during evening peak hours, a self-hosted Plex or Jellyfin box lets you stream your own ripped DVDs, holiday videos, and growing music library without depending on a third-party subscription. You keep full control over metadata, transcoding, and remote access. elementary OS, despite its reputation as a polished desktop distribution, handles this role surprisingly well once it's configured for always-on service.
This guide walks through the realistic decisions an Australian hobbyist will face. That means weighing Plex against Jellyfin for value and features, factoring in retail hardware availability from JB Hi-Fi and Centrecom, and accounting for the heat of a Brisbane summer or the salt air on the Mornington Peninsula. The aim is a media stack that boots, streams, and stays quiet without dragging you into a part-time sysadmin job.
Choosing between Plex and Jellyfin
The first decision is the engine itself. Plex Media Server has the larger mindshare, polished client apps on Apple TV, smart TVs, Android, and iOS, and slick hardware transcoding that takes pressure off modest CPUs. The catch is a free tier that locks the most useful features behind a Plex Pass subscription, plus a closed-source license that some users find uncomfortable.
Jellyfin is the fully open-source alternative. There is no account requirement, no premium tier, and the entire codebase is auditable. The trade-off is a less mature client app ecosystem and a slightly steeper learning curve for first-time configuration. For households that want to avoid ongoing fees and keep the entire stack under their own control, Jellyfin is the obvious pick.
If you regularly share your library with relatives in New Zealand or the UK, Plex's granular remote access controls are genuinely valuable. If your server sits in a cupboard in Melbourne and only your household connects to it, Jellyfin's lack of licensing shenanigans is more appealing than the smoother Apple TV app.
Hardware choices for Australian homes
Bandwidth shapes every other decision. Most Australian homes now have access to NBN fibre-to-the-premises or hybrid fibre-coaxial connections delivering 50 Mbps down and 20 Mbps up in the typical case. That is adequate for streaming a single 4K transcode, but heavy multi-user households in outer suburbs where the FTTC copper still tops out around 50/20 will want to keep raw 4K transcoding off the menu.
Hardware is genuinely easy to source locally. JB Hi-Fi stocks current-generation mini PCs and Intel NUCs in most capital city stores. Centrecom, Umart, and MSY in Melbourne and Brisbane remain favourite destinations for hobbyists chasing older-generation server-grade gear. A refurbished Dell OptiPlex with an eighth-generation Intel chip, 16 GB of RAM, and a borrowed SSD makes a perfectly capable Plex box, often for under AUD 300. If you want a wider read before choosing components, comparison pieces on sites like community tech sites give a useful second opinion on candidate parts.
Cooling deserves thought. Australian living rooms get warm during December and January, and a poorly ventilated cupboard near a rear wall can push ambient temperatures into the mid-40s. Cases with front mesh panels, a couple of low-RPM Noctua fans, or even a simple 120 mm USB desk fan pointed at the intake dramatically extends drive lifespan and keeps NAS-rated hard disks inside their warranty temperature window.
Preparing elementary OS for service duty
elementary OS 8 is based on Ubuntu 24.04 LTS, which means a decade of security updates and a familiar apt repository. For most users, installing the Pantheon desktop then enabling headless operation after configuration is the simplest path. If your server hardware is a repurposed laptop — a common move for users who want something battery-backed during a blackout — paying attention to power behaviour matters. Resources like a guide to elementary os's power management for laptop users walk through tuning tlp and related services so the lid can stay closed without the system sleeping mid-stream.
Configure SSH before you tuck the box away. Run sudo apt install openssh-server, then enable the service. Set a static IP through your router's DHCP reservation so future reboots do not break your library bookmarks. Open the firewall with sudo ufw allow 22, plus port 8096 for Jellyfin or 32400 for Plex. Disabling auto-suspend and screen blanking under Power settings prevents idle interruptions when no one is actively watching content.
Installing Plex Media Server
Plex maintains its own apt repository, which means upgrades arrive promptly alongside your normal system updates. Add the GPG key with curl, fetch the .deb from the Plex downloads page, then run sudo dpkg -i followed by sudo apt install -f to pull in dependencies. Once installed, the server runs as a systemd unit; sudo systemctl enable plexmediaserver ensures it survives reboots.
Open http://your-server-ip:32400/web in any browser to claim the server with a Plex account. Create libraries pointing at /media/movies, /media/tv, /media/music — mount points you control. Plex will scan, fetch metadata, and arrange posters within minutes for a modest collection. Hardware transcoding needs the /dev/dri render device readable by the plex user; adding plex to the video group with sudo usermod -aG video plex handles that on most Intel and AMD systems without further tinkering.
Setting up Jellyfin the open-source way
Jellyfin installs similarly through its own Ubuntu repository. Add the universe sources if not already present, fetch the repository configuration, then sudo apt install jellyfin. The systemd unit is jellyfin, and the configuration wizard opens at http://your-server-ip:8096. There is no account requirement — your admin credentials stay local to the server.
Libraries attach to the same /media layout and Jellyfin matches metadata against TMDB, TVDB, and MusicBrainz. Hardware acceleration on Linux typically goes through VAAPI on Intel and AMD GPUs, configured under the playback dashboard. Jellyfin's biggest practical advantage is that all features are free from day one: live TV through an attached HDHomeRun, LDAP authentication, and plugin support for things like OpenSubtitles are all included at no extra cost.
Building a library that streams smoothly
Folder structure saves hours later. The widely accepted convention is /media/<type>/<title> (<year>)/<filename>. Putting each title in its own folder lets metadata agents detect name and year correctly, and keeps related files such as subtitles and artwork together. Audio libraries benefit from artist/album/disc/track structures so the Jellyfin or Plex music view shows full albums rather than loose files.
Drive choice matters for reliability. NAS-rated drives like the WD Red Plus or Seagate IronWolf tolerate vibration in multi-bay enclosures and carry longer warranties locally. For most Australian households a single 8 TB or 12 TB drive is plenty, with parity computed nightly to an external USB disk during off-peak energy hours to take advantage of cheaper shoulder tariffs in states like Victoria and South Australia.
Permissions trip up many first-time admins. Plex and Jellyfin both run under dedicated system users, and the simplest approach is chown -R plex:plex /media/movies (or jellyfin for the other engine) so the daemon can read your content while your normal user retains write access. SMB or NFS shares from other machines on the home network should mount with the same UID and GID to keep access clean across mixed-Linux households.
Maintenance, updates, and day-to-day use
A media server earns its place by being boring. Enable unattended-upgrades for security patches, and manually run apt full-upgrade every few weeks to catch the bigger kernel and Mesa updates that improve transcoding performance. Back up the metadata database — /var/lib/plex/Library or /var/lib/jellyfin — separately from the media itself, since rebuilding metadata after a disk crash takes days for a large collection.
Smartctl -a /dev/sda run weekly through a cron job catches pending drive failures early. If your router supports WireGuard — most current Telstra, Aussie Broadband, and TPG-supplied gateways do — exposing the server via VPN rather than opening ports to the public internet removes a swathe of attack surface. Watching content away from home then requires only the WireGuard tunnel and your client app, which keeps every media stream inside your own network.
Keep things above board. The Copyright Act 1968 still applies to media streamed in Australia, so what you store on this box is your responsibility. Personal rips of discs you own, family videos, and Creative Commons collections are unambiguously fine. Distributing that material to the wider internet is something else entirely and falls outside anything elementary OS, Plex, or Jellyfin can protect you from.
Pick one platform today — Plex if you want the slicker clients and do not mind an account, Jellyfin if you would rather own the whole stack — and install it on a spare machine you already own. Import a single test folder, play a file from your phone on the same Wi-Fi, and confirm the pipeline works before you slot another drive into the case.