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特性使其成为不二之选。然而,在实际编程过程中,我们经常会遇到一个棘手的问题——如何在循环中控制…...
CSS设置元素的宽度根据其内容自动调整
width: fit-content 是 CSS 中的一个属性值,用于设置元素的宽度根据其内容自动调整,确保宽度刚好容纳内容而不会超出。 效果对比 默认情况(width: auto): 块级元素(如 <div>)会占满父容器…...
人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式
今天是关于AI如何在教学中增强学生的学习体验,我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育,这并非炒作,而是已经发生的巨大变革。教育机构和教育者不能忽视它,试图简单地禁止学生使…...
20个超级好用的 CSS 动画库
分享 20 个最佳 CSS 动画库。 它们中的大多数将生成纯 CSS 代码,而不需要任何外部库。 1.Animate.css 一个开箱即用型的跨浏览器动画库,可供你在项目中使用。 2.Magic Animations CSS3 一组简单的动画,可以包含在你的网页或应用项目中。 3.An…...
Go 并发编程基础:通道(Channel)的使用
在 Go 中,Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式,用于在多个 Goroutine 之间传递数据,从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...
Selenium常用函数介绍
目录 一,元素定位 1.1 cssSeector 1.2 xpath 二,操作测试对象 三,窗口 3.1 案例 3.2 窗口切换 3.3 窗口大小 3.4 屏幕截图 3.5 关闭窗口 四,弹窗 五,等待 六,导航 七,文件上传 …...
08. C#入门系列【类的基本概念】:开启编程世界的奇妙冒险
C#入门系列【类的基本概念】:开启编程世界的奇妙冒险 嘿,各位编程小白探险家!欢迎来到 C# 的奇幻大陆!今天咱们要深入探索这片大陆上至关重要的 “建筑”—— 类!别害怕,跟着我,保准让你轻松搞…...
jmeter聚合报告中参数详解
sample、average、min、max、90%line、95%line,99%line、Error错误率、吞吐量Thoughput、KB/sec每秒传输的数据量 sample(样本数) 表示测试中发送的请求数量,即测试执行了多少次请求。 单位,以个或者次数表示。 示例:…...
MySQL 部分重点知识篇
一、数据库对象 1. 主键 定义 :主键是用于唯一标识表中每一行记录的字段或字段组合。它具有唯一性和非空性特点。 作用 :确保数据的完整性,便于数据的查询和管理。 示例 :在学生信息表中,学号可以作为主键ÿ…...
python爬虫——气象数据爬取
一、导入库与全局配置 python 运行 import json import datetime import time import requests from sqlalchemy import create_engine import csv import pandas as pd作用: 引入数据解析、网络请求、时间处理、数据库操作等所需库。requests:发送 …...
渗透实战PortSwigger Labs指南:自定义标签XSS和SVG XSS利用
阻止除自定义标签之外的所有标签 先输入一些标签测试,说是全部标签都被禁了 除了自定义的 自定义<my-tag onmouseoveralert(xss)> <my-tag idx onfocusalert(document.cookie) tabindex1> onfocus 当元素获得焦点时(如通过点击或键盘导航&…...
