GNU/Linux >> Tutoriels Linux >  >> Debian

Comment installer le serveur multimédia Serviio sur Raspberry Pi

Objectif

Installer le service multimédia Serviio sur Raspberry Pi

Exigences

  • Un Raspberry Pi avec une installation fonctionnelle de Raspbian "Stretch"
  • Privilèges root

Difficulté

FACILE

Congrès

  • # – nécessite que les commandes linux données soient exécutées avec les privilèges root soit
    directement en tant qu'utilisateur root ou en utilisant sudo commande
  • $ - nécessite que les commandes linux données soient exécutées en tant qu'utilisateur régulier non privilégié

Présentation

Serviio est un serveur multimédia écrit en Java. Il est disponible en deux versions :la version gratuite (malheureusement gratuite comme dans la bière), et la version "pro", qui vient avec quelques fonctionnalités supplémentaires comme l'accès à distance. Dans ce tutoriel, nous aborderons l'installation de Serviio sur un Raspberry Pi exécutant une version minimale de Raspbian "Stretch".

Installation des dépendances

Serviio est écrit en java, il faut donc installer le kit de développement java pour pouvoir l'utiliser. Il existe deux versions du JDK dans les référentiels Raspbian Stretch :la version open source, publiée sous la GPLv2 licence, appelée OpenJDK , et la version commerciale propriétaire d'Oracle (le package s'appelle en fait oracle-java8-jdk). Les deux devraient fonctionner correctement, mais dans ce didacticiel, nous utiliserons le premier.

# apt-get update && apt-get install --no-install-recommends openjdk-8-jdk ffmpeg x264

Prenez et installez Serviio

Maintenant que nous avons installé tous les packages nécessaires, nous devons récupérer l'archive Serviio :puisque nous travaillons sur une machine sans tête, nous allons utiliser wget pour accomplir la tâche. Par conséquent, nous exécutons :

wget http://download.serviio.org/releases/serviio-1.9-linux.tar.gz

Une fois le téléchargement terminé, nous pouvons procéder à l'installation proprement dite de Serviio. Nous allons extraire le contenu du tarball à l'intérieur du /opt répertoire :vous pouvez évidemment en choisir un autre, mais /opt est classiquement utilisé pour héberger des applications tierces autonomes. Continuons :

# tar -xvzf serviio-1.9-linux.tar.gz -C /opt

Le -C option (abréviation de --directory ) demande à tar de changer de répertoire pour celui donné, avant d'effectuer les opérations.

Créer le service systemd pour Serviio

Maintenant que Serviio est installé, vous pouvez observer que deux scripts existent dans le /opt/serviio-1.9/bin répertoire :serviio.sh et serviio-console.sh. Le premier lance le serveur tandis que le second l'interface pour le contrôler.

À ce stade, nous avons tout ce dont nous avons besoin pour créer le service systemd pour lancer serviio au démarrage du système. Pour accomplir cette tâche, nous devons écrire un petit fichier de service. Comme vous le savez sûrement, systemd est le nouveau système d'initialisation Linux, désormais adopté par toutes les distributions majeures. Il a été la source de nombreuses discussions dans la communauté open source, mais il est sans aucun doute devenu la norme. Pour créer le service, lancez simplement votre éditeur préféré et créez un fichier appelé serviio.service contenant le texte ci-dessous :

[Unit]
Description=Serviio media Server
After=syslog.target network.target

[Service]
User=serviio
ExecStart=/opt/serviio-1.9/bin/serviio.sh
ExecStop=/opt/serviio-1.9/bin/serviio.sh -stop

[Install]
WantedBy=multi-user.target

Décrire la syntaxe d'un fichier de service systemd ce n'est pas le but de ce tutoriel, mais veuillez noter la ligne contenant le User=serviio instruction. Ce que nous voulons obtenir avec, c'est spécifier que le démon doit s'exécuter avec le serviio privilèges d'utilisateur et non en tant que root, pour des raisons de sécurité. Le serviio user n'existe pas encore, alors créons-le et donnons-lui la propriété du répertoire /opt/serviio-1.9 et de tous les fichiers qu'il contient :

# useradd -r -U -s /sbin/nologin serviio && chown -R serviio:serviio /opt/serviio-1.9

Vous connaissez probablement le useradd commande, mais par souci de clarté, spécifions à quoi servent les options fournies. Le -r l'option spécifie que nous voulons créer un system account . Les comptes système n'ont aucune information de vieillissement et un uid avec une valeur <1000 ; pour ces comptes, aucun répertoire personnel n'est créé. Le -U L'option demandera au programme de créer également un groupe avec le même nom que l'utilisateur et d'ajouter automatiquement l'utilisateur audit groupe. Enfin avec -s , nous avons spécifié le shell pour l'utilisateur. Dans ce cas, nous avons utilisé /sbin/nologin qui est un fake shell . Nous l'avons utilisé pour des raisons de sécurité :de cette façon, l'utilisateur sous lequel le service s'exécute ne pourra jamais utiliser un véritable shell pour exécuter des commandes.

Ça y est :nous avons créé l'utilisateur serviio et écrit notre fichier de service. Maintenant, nous devons le copier dans le /usr/systemd/system répertoire :

# cp serviio.service /etc/systemd/system

Pour activer le service que nous exécutons maintenant :

# systemctl enable serviio.service

Maintenant, redémarrez le système :si tout se passe bien, le service serviio sera déjà actif lorsque le processus de démarrage sera terminé. Vous pouvez vérifier son statut en exécutant :

$ systemctl status serviio.service

Systemd vous informera de l'état du démon, par exemple :

● serviio.service - Serviio media Server
   Loaded: loaded (/etc/systemd/system/serviio.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2017-09-28 21:29:18 CEST; 31s ago
 Main PID: 420 (java)
   CGroup: /system.slice/serviio.service
           └─420 java -Xmx512M -Xms20M -XX:+UseG1GC -XX:GCTimeRatio=1 -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -Djava.net.preferIPv4Stack=true
[...]

Comme vous pouvez le voir, le service est actif et en cours d'exécution, donc tout s'est déroulé comme prévu. Si quelque chose ne va pas et qu'il y a un problème pour lancer le service, vous pouvez utiliser les journaux fournis par la même commande pour résoudre les problèmes.

Si vous utilisez un pare-feu sur votre machine, vous devez également ouvrir les ports 8895/tcp , 1900/udp , 23423/tcp et 23424/tcp . Les deux derniers ports sont nécessaires respectivement pour contrôler la console et pour accéder au mediabrowser

Service de contrôle

Pour contrôler serviio, nous avons peu d'options. Puisque nous fonctionnons sur une machine sans tête, nous ne pouvons pas accéder à la console graphique, mais nous pouvons accéder à l'interface Web, en naviguant vers http://yourmachineip:23423/console/ depuis une autre machine sur le même réseau local ou utilisez des applications tierces telles que l'application Android "ServiiDroid".

Une liste complète des options possibles est disponible ici :http://serviio.org/apps" . Si vous utilisez la version "pro" de serviio, vous pourrez également explorer votre catalogue en utilisant le mediabrowser intégré accessible à http://yourmachineip:23424/mediabrowser/ .


Debian
  1. Comment installer Plex Media Server sur Ubuntu 20.04

  2. Comment installer Plex Media Server sur Ubuntu 18.04

  3. Comment installer Plex Media Server sur CentOS 7

  4. Comment installer Plex Media Server sur Debian 9

  5. Comment installer Plex Media Server sur CentOS 7

Comment installer Ubuntu Server sur un Raspberry Pi

Comment installer Jellyfin Media Server sur Ubuntu 20.04 LTS

Comment installer Plex Media Server sur Debian 9 Stretch

Comment installer Jellyfin Media Server sur Debian 11

Comment installer Plex Media Server sur Debian 11

Comment installer Plex Media Server sur Debian 10