当前位置: 首页 > news >正文

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 …...

人工智能导论-知识图谱

知识图谱 概述 本章首先介绍“知识与知识表示”的概念,然后介绍“谓词逻辑、产生式、框架、语义网络”等当前人工智能中应用广泛的知识表示方法。然后,简要介绍知识图谱,为后面介绍推理方法、专家系统等奠定基础。 概述 - 起源&#xff08…...

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.获得当前设备屏幕尺⼨&#xff0c;需要impor…...

uniapp转小程序,小程序转uniapp方法

&#x1f935; 作者&#xff1a;coderYYY &#x1f9d1; 个人简介&#xff1a;前端程序媛&#xff0c;目前主攻web前端&#xff0c;后端辅助&#xff0c;其他技术知识也会偶尔分享&#x1f340;欢迎和我一起交流&#xff01;&#x1f680;&#xff08;评论和私信一般会回&#…...

WPF中Frame

在Windows Presentation Foundation (WPF) 中&#xff0c;Frame 控件是一个非常重要的元素&#xff0c;主要用于实现页面导航和内容的动态加载。Frame 类似于网页开发中的iframe&#xff0c;但它是WPF应用程序中的一个容器&#xff0c;能够显示不同的页面或控件内容。 以下是F…...

大数据基础:Doris重点架构原理

文章目录 Doris重点架构原理 一、Apache Doris介绍 二、Apache Doris使用场景 三、Apache Doris架构原理 四、Apache Doris 特点 Doris重点架构原理 一、Apache Doris介绍 基于 MPP 架构的高性能、实时的分析型数据库&#xff0c;以极速易用的特点被人们所熟知&#xff…...

.NET Framework、.NET Core 、 .NET 5、.NET 6和.NET 7 和.NET8 简介及区别

简述 在软件开发的宇宙中&#xff0c;.NET是一个不断扩展的星系&#xff0c;每个版本都像是一颗独特的星球&#xff0c;拥有自己的特性和环境。作为技术经理&#xff0c;站在选择的十字路口&#xff0c;您需要一张详尽的星图来导航。本文将作为您的向导&#xff0c;带您穿越从.…...

k8s核心操作_存储抽象_K8S中使用ConfigMap抽取配置_实现配置热更新---分布式云原生部署架构搭建032

现在有个问题,是上面我们利用pv和pvc 就是持久卷 以及 持久卷申请,实现了对存储的,pod删除以后,对其使用的存储空间也进行了删除,那么还有个问题,对于redis这种我们希望,他的配置也管理起来. 比如这个redis的配置文件. 以后其他的配置文件也是这样. 使用配置文件的存储在k8s中…...

【前端】SpringBootWeb 篇-入门了解 Spring Cache、Spring Task与WebSocket 框架

在SpringBootWeb开发中&#xff0c;Spring Cache、Spring Task与WebSocket框架是三个非常重要的组件&#xff0c;它们分别用于缓存管理、任务调度和实时通信。以下是对这三个框架的入门了解&#xff1a; 一、Spring Cache 1. 简介 Spring Cache是Spring框架提供的缓存抽象&a…...

应用最优化方法及MATLAB实现——第4章代码实现

一、概述 之前对这本书的第三章进行了代码实现&#xff0c;这篇博客是对这本书第4章相关代码进行实现&#xff0c;部分内容安装书中代码无法实现相应功能&#xff0c;MATLAB会报错&#xff0c;对其进行一定程度的更改后&#xff0c;可以正常运行&#xff0c;与书中所给示例运行…...

搜维尔科技:Riablo提供一种创新的康复解决方案,通过激活本体感觉,并通过视听反馈促进神经肌肉的训练。

Riablo提供一种创新的康复解决方案&#xff0c;通过激活本体感觉&#xff0c;并通过视听反馈促进神经肌肉的训练。 搜维尔科技&#xff1a;Riablo提供一种创新的康复解决方案&#xff0c;通过激活本体感觉&#xff0c;并通过视听反馈促进神经肌肉的训练。...

NodeJS技巧:在循环中管理异步函数的执行次数

背景介绍 在现代Web开发中&#xff0c;NodeJS因其高效的异步处理能力而备受青睐。尤其在数据抓取、网络爬虫等应用场景中&#xff0c;NodeJS的非阻塞I/O特性使其成为不二之选。然而&#xff0c;在实际编程过程中&#xff0c;我们经常会遇到一个棘手的问题——如何在循环中控制…...

Spark 之 入门讲解详细版(1)

1、简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室&#xff08;Algorithms, Machines, and People Lab&#xff09;开发通用内存并行计算框架。Spark在2013年6月进入Apache成为孵化项目&#xff0c;8个月后成为Apache顶级项目&#xff0c;速度之快足见过人之处&…...

Linux相关概念和易错知识点(42)(TCP的连接管理、可靠性、面临复杂网络的处理)

目录 1.TCP的连接管理机制&#xff08;1&#xff09;三次握手①握手过程②对握手过程的理解 &#xff08;2&#xff09;四次挥手&#xff08;3&#xff09;握手和挥手的触发&#xff08;4&#xff09;状态切换①挥手过程中状态的切换②握手过程中状态的切换 2.TCP的可靠性&…...

分布式增量爬虫实现方案

之前我们在讨论的是分布式爬虫如何实现增量爬取。增量爬虫的目标是只爬取新产生或发生变化的页面&#xff0c;避免重复抓取&#xff0c;以节省资源和时间。 在分布式环境下&#xff0c;增量爬虫的实现需要考虑多个爬虫节点之间的协调和去重。 另一种思路&#xff1a;将增量判…...

dify打造数据可视化图表

一、概述 在日常工作和学习中&#xff0c;我们经常需要和数据打交道。无论是分析报告、项目展示&#xff0c;还是简单的数据洞察&#xff0c;一个清晰直观的图表&#xff0c;往往能胜过千言万语。 一款能让数据可视化变得超级简单的 MCP Server&#xff0c;由蚂蚁集团 AntV 团队…...

Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?

Redis 的发布订阅&#xff08;Pub/Sub&#xff09;模式与专业的 MQ&#xff08;Message Queue&#xff09;如 Kafka、RabbitMQ 进行比较&#xff0c;核心的权衡点在于&#xff1a;简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...

嵌入式学习笔记DAY33(网络编程——TCP)

一、网络架构 C/S &#xff08;client/server 客户端/服务器&#xff09;&#xff1a;由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序&#xff0c;负责提供用户界面和交互逻辑 &#xff0c;接收用户输入&#xff0c;向服务器发送请求&#xff0c;并展示服务…...

解决:Android studio 编译后报错\app\src\main\cpp\CMakeLists.txt‘ to exist

现象&#xff1a; android studio报错&#xff1a; [CXX1409] D:\GitLab\xxxxx\app.cxx\Debug\3f3w4y1i\arm64-v8a\android_gradle_build.json : expected buildFiles file ‘D:\GitLab\xxxxx\app\src\main\cpp\CMakeLists.txt’ to exist 解决&#xff1a; 不要动CMakeLists.…...

AI语音助手的Python实现

引言 语音助手(如小爱同学、Siri)通过语音识别、自然语言处理(NLP)和语音合成技术,为用户提供直观、高效的交互体验。随着人工智能的普及,Python开发者可以利用开源库和AI模型,快速构建自定义语音助手。本文由浅入深,详细介绍如何使用Python开发AI语音助手,涵盖基础功…...

绕过 Xcode?使用 Appuploader和主流工具实现 iOS 上架自动化

iOS 应用的发布流程一直是开发链路中最“苹果味”的环节&#xff1a;强依赖 Xcode、必须使用 macOS、各种证书和描述文件配置……对很多跨平台开发者来说&#xff0c;这一套流程并不友好。 特别是当你的项目主要在 Windows 或 Linux 下开发&#xff08;例如 Flutter、React Na…...

ui框架-文件列表展示

ui框架-文件列表展示 介绍 UI框架的文件列表展示组件&#xff0c;可以展示文件夹&#xff0c;支持列表展示和图标展示模式。组件提供了丰富的功能和可配置选项&#xff0c;适用于文件管理、文件上传等场景。 功能特性 支持列表模式和网格模式的切换展示支持文件和文件夹的层…...