Ubuntu 24.04安装Jellyfin媒体服务器图解教程
使用 Jellyfin 等开源软件创建媒体服务器肯定能帮助您管理和跨各种设备传输媒体集合。当你有一个封闭社区时,这尤其有用。
什么是 Jellyfin 媒体服务器?
Jellyfin 媒体服务器,顾名思义,是一款开源软件,允许用户使用本地网络或互联网与他人共享其媒体收藏。此外,与其他专有媒体服务器不同,Jellyfin 完全免费且自托管,可完全控制您的媒体库,无需订阅费或隐私问题。因此,对于那些想要建立自己的家庭媒体服务器的人来说,这将是一个值得考虑的选择。
前提条件
- 要按照本教程安装 Jellyfin,我们需要Ubuntu 24.04,但您也可以使用其他版本,例如 Ubuntu 22.04 或 20.04。
- 除此之外,还有一个具有管理权限的用户帐户来安装和配置包。
- 为了下载必要的软件包和更新,我们还需要稳定且活跃的互联网连接。
如果需要测试本项目,没有Ubuntu 24.04服务器的话,可以考虑雨云服务器,1元即可试用,需要绑定微信,支持多种Linux发行版。地址:www.ecscoupon.com/rainyun
步骤 1:更新 Ubuntu 24.04 并安装依赖项
在Ubuntu 24.04 服务器上,首先运行系统更新命令来安装最新的可用安全和其他软件包更新。
sudo apt update && sudo apt upgrade
安装常见依赖项:
sudo apt install -y ffmpeg curl apt-transport-https ca-certificates gnupg2
第 2 步:添加 JellyFin 存储库
虽然 JellyFin 是一个开源软件包,但它并不是我们日常任务中需要的东西,因此无法使用默认的 Ubuntu 系统存储库直接安装。因此,让我们按照给定的命令添加 JellyFin 的官方存储库:
添加 GPG 密钥:
curl -fsSL https://repo.jellyfin.org/ubuntu/jellyfin_team.gpg.key | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/jellyfin.gpg
添加存储库:
echo "deb [arch=$( dpkg --print-architecture )] https://repo.jellyfin.org/$( awk -F'=' '/^ID=/{ print $NF }' /etc/os-release ) $( awk -F'=' '/^VERSION_CODENAME=/{ print $NF }' /etc/os-release ) main" | sudo tee /etc/apt/sources.list.d/jellyfin.list
运行系统更新以刷新 APT 存储库缓存:
sudo apt update
步骤 3:在 Ubuntu 24.04 上安装 Jellyfin
现在,我们可以像任何其他常见包一样,使用 Ubuntu 24.04 上的 APT 包管理器安装 Jellyfin 媒体服务器。执行给定的命令,您将完成安装过程。
sudo apt install jellyfin

步骤 4:启动 JellyFin 服务并将其标记为已启用
安装完成后,让我们在 Ubuntu 24.04 上启动 Jellyfin Media 服务器服务并启用它,以便它可以随系统启动自动启动。
sudo systemctl enable jellyfin
sudo systemctl start jellyfin
你还可以使用以下命令检查一切是否正常运行:
sudo systemctl status jellyfin --no-pager -l
步骤 5:在防火墙中允许媒体服务器端口
Jellyfin 媒体服务器使用的默认端口是 8096,如果您使用某些防火墙(例如 UFW)或使用云托管运行 Ubuntu 24.04,请在其云服务防火墙中打开此端口号。
如果您正在使用活动的 UFW 防火墙,请使用给定的命令:
sudo ufw allow 8096
步骤 6:访问 Jellyfin 媒体服务器 GUI
一切就绪后,我们的开源媒体服务器已启动并运行,因此是时候使用浏览器访问 Jellyfin Web 界面了。如果您使用命令行服务器进行设置,则可以使用其他可用的本地计算机访问安装了 Jellyfin 的远程服务器。
在浏览器中,输入安装了 Jellyfin 的服务器的IP 地址 以及端口号8096。如果您在 GUI 中使用通过浏览器访问的安装了 Jellyfin 的服务器,那么我们可以使用 localhost 或 127.0.0.1。
例子:
127.0.0.1:8096
或者
ip-address:8096
注意:将 IP 地址替换为你自己的服务器地址。
这样将看到欢迎屏幕以进一步设置Jellyfin。
步骤 7:设置用户名和密码
单击下一步按钮开始设置 Jellyfin 媒体服务器。下一个屏幕将出现,用于设置管理员的用户名和密码,并具有添加/删除内容和其他设置的所有权限。

步骤 9:添加库
单击 + 按钮,首先选择类别类型,例如音乐、视频和图像等媒体内容文件,然后输入您要保存要在 Jellyfin 上播放的媒体的文件夹的路径。例如,我选择了音乐类别,然后输入了我保存音乐文件的文件夹的路径。
您可以立即或者随时将多个文件夹添加到您的库中。

如果您想使用智能手机和其他设备通过互联网远程连接 Jellyfin,请启用“Allow remote connections to this Jellyfin Server”选项。但是,要访问位于本地路由器后面并使用本地 IP 地址的服务器,通过互联网访问它,用户必须手动转发其 Jellyfin 端口。

步骤 10:登录 Jellyfin 服务器
输入用户名和密码登录,然后您将在浏览器中看到 Jellyfin 的界面,可以访问音乐、视频和其他媒体文件。

如果您想在 Jellyfin 中添加更多库或媒体文件夹,请转到仪表板,选择库,然后选择“添加媒体库”。

仪表板下还提供了重新启动和关闭服务器的选项。
步骤11.如何更新/升级
由于我们使用官方 JellyFin 存储库来安装它,我们可以使用系统更新和升级命令来获取最新的可用更新。
sudo apt update && sudo apt upgrade
步骤12.卸载Jellyfin Media Server
那些对这个开源媒体服务器不再感兴趣并想将其从他们的 Ubuntu 24.04 服务器中彻底删除的人可以执行给定的命令。
sudo autoremove install jellyfin --purge
同时也删除存储库。
sudo rm /etc/apt/sources.list.d/jellyfin.list
JellyFin 客户端
这个开源媒体服务器支持多个客户端应用程序,可以从服务器流式传输音乐和视频。因此,可以根据我们的设备(如 Firestick、Android TV、iPhone、Kodi、Roku 等)下载 Jellyfin 客户端。
相关文章:
Ubuntu 24.04安装Jellyfin媒体服务器图解教程
使用 Jellyfin 等开源软件创建媒体服务器肯定能帮助您管理和跨各种设备传输媒体集合。当你有一个封闭社区时,这尤其有用。 什么是 Jellyfin 媒体服务器? Jellyfin 媒体服务器,顾名思义,是一款开源软件,允许用户使用本…...
css3 中的伪类和伪元素
什么是伪类,什么是伪元素 伪类是用来添加特殊状态的选择器,它们以冒号(:)开头。伪类可以添加到任何现有的选择器上,用来选择处于特定状态的元素。 伪元素是用来选择元素的特定部分的选择器,它们以双冒号(::)开头。伪元素可以创建出在文档树中不存在的元素。 css3 …...
人工智能导论-知识图谱
知识图谱 概述 本章首先介绍“知识与知识表示”的概念,然后介绍“谓词逻辑、产生式、框架、语义网络”等当前人工智能中应用广泛的知识表示方法。然后,简要介绍知识图谱,为后面介绍推理方法、专家系统等奠定基础。 概述 - 起源(…...
LabVIEW液压数据采集测试系统
液压系统是装载机的重要组成部分,通过液压传动和控制实现各项作业功能,如提升、倾斜、转向等。液压系统的性能直接影响装载机的作业效率和稳定性。为了保证装载机液压系统的正常运行和优化设计,需要对其进行数据采集和测试。本文介绍了一套基…...
工业三防平板助力工厂生产数据实时管理
在当今高度数字化和智能化的工业生产环境中,工业三防平板正逐渐成为工厂实现生产数据实时管理的得力助手。这种创新的技术设备不仅能够在恶劣的工业环境中稳定运行,还为工厂的生产流程优化、效率提升和质量控制带来了前所未有的机遇。 工业生产场景通常充…...
LabVIEW人工模拟肺控制系统开发
开发了一种创新的主被动一体式人工模拟肺模型,通过LabVIEW开发的上位机软件,实现了步进电机驱动系统的精确控制和多种呼吸模式的模拟。该系统不仅能够在主动呼吸模式下精确模拟快速呼吸、平静呼吸和深度呼吸,还能在被动模式下通过PID控制实现…...
达梦 ./disql SYSDBA/SYSDBA报错[-70028]:创建SOCKET连接失败. 解决方法
原因 达梦命令./disql SYSDBA/SYSDBA默认访问端口5236,如果初始化实例的时候修改了端口,需要指定端口访问 解决 ./disql SYSDBA/SYSDBA192.168.10.123:5237...
Autosar RTE配置-Assembly和Delegation的使用-基于ETAS软件
文章目录 前言Assembly和Delegation的含义Delegation的使用Assembly的使用总结 前言 RTE中的Compostion内部的SWC之间的连接使用Assembly Connector进行连接。这样的连接一般都是一个SWC的Pport对应另一个SWC的Rport。而Autosar软件中往往不只一个Composition(一般可以以核的数…...
【网络安全】PostMessage:分析JS实现XSS
未经许可,不得转载。 文章目录 前言示例正文 前言 PostMessage是一个用于在网页间安全地发送消息的浏览器 API。它允许不同的窗口(例如,来自同一域名下的不同页面或者不同域名下的跨域页面)进行通信,而无需通过服务器…...
liosam复现
写在前面: 本机系统ubuntu22.04dockernvidia docker的环境 本机系统已经安装好nvidia驱动和cuda 使用liosam提供的镜像在22.04下实在是无法兼容。 所以在rosnoetic(ubuntu20.04)下进行配置,本教程中rosnoetic:v3.2是在docker hub&…...
Flutter实战小案例
(实战)点不到的按钮 // 主要实现效果类 class _MyHomePageState extends State<MyHomePage> {// 1.定义要使用的变量double btnLeft 0;double btnTop 0;int timeDuration 500;String textButton "点我呀";// 2.获得当前设备屏幕尺⼨,需要impor…...
uniapp转小程序,小程序转uniapp方法
🤵 作者:coderYYY 🧑 个人简介:前端程序媛,目前主攻web前端,后端辅助,其他技术知识也会偶尔分享🍀欢迎和我一起交流!🚀(评论和私信一般会回&#…...
WPF中Frame
在Windows Presentation Foundation (WPF) 中,Frame 控件是一个非常重要的元素,主要用于实现页面导航和内容的动态加载。Frame 类似于网页开发中的iframe,但它是WPF应用程序中的一个容器,能够显示不同的页面或控件内容。 以下是F…...
大数据基础:Doris重点架构原理
文章目录 Doris重点架构原理 一、Apache Doris介绍 二、Apache Doris使用场景 三、Apache Doris架构原理 四、Apache Doris 特点 Doris重点架构原理 一、Apache Doris介绍 基于 MPP 架构的高性能、实时的分析型数据库,以极速易用的特点被人们所熟知ÿ…...
.NET Framework、.NET Core 、 .NET 5、.NET 6和.NET 7 和.NET8 简介及区别
简述 在软件开发的宇宙中,.NET是一个不断扩展的星系,每个版本都像是一颗独特的星球,拥有自己的特性和环境。作为技术经理,站在选择的十字路口,您需要一张详尽的星图来导航。本文将作为您的向导,带您穿越从.…...
k8s核心操作_存储抽象_K8S中使用ConfigMap抽取配置_实现配置热更新---分布式云原生部署架构搭建032
现在有个问题,是上面我们利用pv和pvc 就是持久卷 以及 持久卷申请,实现了对存储的,pod删除以后,对其使用的存储空间也进行了删除,那么还有个问题,对于redis这种我们希望,他的配置也管理起来. 比如这个redis的配置文件. 以后其他的配置文件也是这样. 使用配置文件的存储在k8s中…...
【前端】SpringBootWeb 篇-入门了解 Spring Cache、Spring Task与WebSocket 框架
在SpringBootWeb开发中,Spring Cache、Spring Task与WebSocket框架是三个非常重要的组件,它们分别用于缓存管理、任务调度和实时通信。以下是对这三个框架的入门了解: 一、Spring Cache 1. 简介 Spring Cache是Spring框架提供的缓存抽象&a…...
应用最优化方法及MATLAB实现——第4章代码实现
一、概述 之前对这本书的第三章进行了代码实现,这篇博客是对这本书第4章相关代码进行实现,部分内容安装书中代码无法实现相应功能,MATLAB会报错,对其进行一定程度的更改后,可以正常运行,与书中所给示例运行…...
搜维尔科技:Riablo提供一种创新的康复解决方案,通过激活本体感觉,并通过视听反馈促进神经肌肉的训练。
Riablo提供一种创新的康复解决方案,通过激活本体感觉,并通过视听反馈促进神经肌肉的训练。 搜维尔科技:Riablo提供一种创新的康复解决方案,通过激活本体感觉,并通过视听反馈促进神经肌肉的训练。...
NodeJS技巧:在循环中管理异步函数的执行次数
背景介绍 在现代Web开发中,NodeJS因其高效的异步处理能力而备受青睐。尤其在数据抓取、网络爬虫等应用场景中,NodeJS的非阻塞I/O特性使其成为不二之选。然而,在实际编程过程中,我们经常会遇到一个棘手的问题——如何在循环中控制…...
uniapp 对接腾讯云IM群组成员管理(增删改查)
UniApp 实战:腾讯云IM群组成员管理(增删改查) 一、前言 在社交类App开发中,群组成员管理是核心功能之一。本文将基于UniApp框架,结合腾讯云IM SDK,详细讲解如何实现群组成员的增删改查全流程。 权限校验…...
深度学习在微纳光子学中的应用
深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向: 逆向设计 通过神经网络快速预测微纳结构的光学响应,替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...
DBAPI如何优雅的获取单条数据
API如何优雅的获取单条数据 案例一 对于查询类API,查询的是单条数据,比如根据主键ID查询用户信息,sql如下: select id, name, age from user where id #{id}API默认返回的数据格式是多条的,如下: {&qu…...
NFT模式:数字资产确权与链游经济系统构建
NFT模式:数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新:构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议:基于LayerZero协议实现以太坊、Solana等公链资产互通,通过零知…...
在QWebEngineView上实现鼠标、触摸等事件捕获的解决方案
这个问题我看其他博主也写了,要么要会员、要么写的乱七八糟。这里我整理一下,把问题说清楚并且给出代码,拿去用就行,照着葫芦画瓢。 问题 在继承QWebEngineView后,重写mousePressEvent或event函数无法捕获鼠标按下事…...
Python基于历史模拟方法实现投资组合风险管理的VaR与ES模型项目实战
说明:这是一个机器学习实战项目(附带数据代码文档),如需数据代码文档可以直接到文章最后关注获取。 1.项目背景 在金融市场日益复杂和波动加剧的背景下,风险管理成为金融机构和个人投资者关注的核心议题之一。VaR&…...
CRMEB 中 PHP 短信扩展开发:涵盖一号通、阿里云、腾讯云、创蓝
目前已有一号通短信、阿里云短信、腾讯云短信扩展 扩展入口文件 文件目录 crmeb\services\sms\Sms.php 默认驱动类型为:一号通 namespace crmeb\services\sms;use crmeb\basic\BaseManager; use crmeb\services\AccessTokenServeService; use crmeb\services\sms\…...
提升移动端网页调试效率:WebDebugX 与常见工具组合实践
在日常移动端开发中,网页调试始终是一个高频但又极具挑战的环节。尤其在面对 iOS 与 Android 的混合技术栈、各种设备差异化行为时,开发者迫切需要一套高效、可靠且跨平台的调试方案。过去,我们或多或少使用过 Chrome DevTools、Remote Debug…...
什么是VR全景技术
VR全景技术,全称为虚拟现实全景技术,是通过计算机图像模拟生成三维空间中的虚拟世界,使用户能够在该虚拟世界中进行全方位、无死角的观察和交互的技术。VR全景技术模拟人在真实空间中的视觉体验,结合图文、3D、音视频等多媒体元素…...
【SpringBoot自动化部署】
SpringBoot自动化部署方法 使用Jenkins进行持续集成与部署 Jenkins是最常用的自动化部署工具之一,能够实现代码拉取、构建、测试和部署的全流程自动化。 配置Jenkins任务时,需要添加Git仓库地址和凭证,设置构建触发器(如GitHub…...
