Commit 012023

2025-05-13 11:33:44 Mayekkuzu: Initial Release
/dev/null .. self-hosted/jellyfin.md
@@ 0,0 1,76 @@
+ # Jellyfin
+
+ Jellyfin - стриминговый сервер, позволяющий организовать стриминг кинчиков, сериальчиков. Так же имеет фунционал для организации стриминга музыки и даже чтения книжек/комиксов, но удобство использования последних оставляет желать лучшего.
+
+ Поддерживает рендер видео на лету используя ресурсы CPU, что долго и ориентировано на 1 пользователя максимум, или же использование аппаратного рендера средствами QuickSync, VA-API, NVENC. По видеокарточкам - Nvidia GTX 1050 и выше, по QuickSync - Intel CPU 9 поколение+ желательно (Но без индекса F).
+
+ ## Установка с пакета (но через скрипт)
+ В debian/ubuntu - лучших традициях через внешний sh скрипт
+ ```bash
+ curl https://repo.jellyfin.org/install-debuntu.sh | sudo bash
+ sudo bash install-debuntu.sh
+ ```
+
+ ## Установка через бинарник
+ Создадим папку и перейдем
+ ```bash
+ sudo mkdir /opt/jellyfin
+ cd /opt/jellyfin
+ ```
+
+ Находим на странице [репозитория](https://repo.jellyfin.org/?path=/server/linux) ссылку на последнюю версию и копируем tar.gz. Далее скачаем и распакуем. После распаковки создадим символическую ссылку и создадим папки.
+ ```bash
+ sudo wget https://repo.jellyfin.org/files/server/linux/latest-stable/amd64/jellyfin_10.10.7-amd64.tar.gz
+ sudo tar xvzf jellyfin_10.10.7-amd64.tar.gz
+ sudo ln -s jellyfin_10.10.7 jellyfin
+ sudo mkdir data cache config log
+ ```
+
+ Бинарник готов, осталось организовать FFmpeg. В связке с Jellyfin рекомендуется использовать кастомный билд который можно взять так же в [репозитории](https://repo.jellyfin.org/?path=/ffmpeg). В моем случае это Debian, поэтому просто находим deb пакет и ставим.
+ ```bash
+ wget https://repo.jellyfin.org/files/ffmpeg/debian/latest-7.x/amd64/jellyfin-ffmpeg7_7.1.1-2-bookworm_amd64.deb
+ sudo dpkg -i jellyfin-ffmpeg7_7.1.1-2-bookworm_amd64.deb
+ ```
+
+ Создадим скрипт jellyfin.sh который будет запускаться как сервер
+ ```
+ #!/bin/bash
+ JELLYFINDIR="/opt/jellyfin"
+ FFMPEGDIR="/usr/share/jellyfin-ffmpeg"
+
+ $JELLYFINDIR/jellyfin/jellyfin \
+ -d $JELLYFINDIR/data \
+ -C $JELLYFINDIR/cache \
+ -c $JELLYFINDIR/config \
+ -l $JELLYFINDIR/log \
+ --ffmpeg $FFMPEGDIR/ffmpeg
+ ```
+
+ Файлу дадим права на запуск и назначим пользователя:
+ ```bash
+ sudo chown -R user:group *
+ sudo chmod u+x jellyfin.sh
+ ```
+
+ Далее создаем systemd службу которая будет запускаться автоматически при старте системы. Создадим файл `/etc/systemd/system/jellyfin.service`
+ ```
+ [Unit]
+ Description=Jellyfin
+ After=network.target
+
+ [Service]
+ Type=simple
+ User=youruser
+ Restart=always
+ ExecStart=/opt/jellyfin/jellyfin.sh
+
+ [Install]
+ WantedBy=multi-user.target
+ ```
+
+ По классике перезагружаем демон systemd и запускаем. Так же не забываем поставить на автостарт
+ ```bash
+ sudo systemctl daemon-reload
+ sudo systemctl enable jellyfin.service
+ sudo systemctl start jellyfin.service
+ ```
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9