Comment installer Serviio Media Server sur Raspberry Pi

Comment installer Serviio Media Server sur Raspberry Pi

Objectif

Installez Servio Media Service sur Raspberry Pi

Exigences

  • Un Raspberry Pi avec une installation de travail de Raspbian "Stretch"
  • Privilèges racinaires

Difficulté

FACILE

Conventions

  • # - nécessite que les commandes Linux soient exécutées avec des privilèges racine
    directement en tant qu'utilisateur racine ou en utilisant Sudo commande
  • $ - Exige que les commandes Linux soient exécutées en tant qu'utilisateur non privilégié régulier

Introduction

Serviio est un serveur multimédia écrit en java. Il est disponible en deux versions: le gratuit (malheureusement gratuit comme dans la bière), et la version «pro», qui est livrée avec des fonctionnalités supplémentaires comme l'accès à distance. Dans ce tutoriel, nous couvrirons l'installation de Serviio sur un Raspberry Pi exécutant une versions minimales de Raspbian "Stretch".

Installation des dépendances

Serviio est écrit en Java, donc nous devons installer le kit de développement Java pour pouvoir l'utiliser. Il existe deux versions du JDK dans les référentiels Stretch Raspbian: la version open source, publiée sous le Gplv2 Licence, appelée Openjdk, et la version commerciale et propriétaire d'Oracle (le package s'appelle en fait Oracle-Java8-JDK). Les deux devraient fonctionner correctement, mais dans ce tutoriel, nous utiliserons le premier.

# APT-Get Update && apt-get install --no-install-recommande openjdk-8-jdk ffmpeg x264

Saisir et installer Serviio

Maintenant que nous avons installé tous les forfaits nécessaires, nous devons saisir le Serviio Tarball: puisque nous travaillons sur une machine sans tête, nous allons utiliser wget Pour accomplir la tâche. Par conséquent, nous courons:

wget http: // télécharger.servir.org / sorties / Serviio-1.9-linux.le goudron.gz

Une fois le téléchargement terminé, nous pouvons passer à l'installation de Serviio réelle. Nous allons extraire le contenu du tarball à l'intérieur du /opter Répertoire: évidemment, vous pouvez en choisir un autre, mais / Opt est conventionnellement utilisé pour héberger des applications tierces autonomes. Continuons:

# TAR -XVZF Serviio-1.9-linux.le goudron.gz -c / opt

Le -C Option (abréviation pour --annuaire) Demande à Tar de changer le répertoire en un répertoire 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 à l'intérieur du / Opt / Serviio-1.9 / bac annuaire: servir.shot et serviio-console.shot. 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 lorsque le système bottise. 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 Linux Init, désormais adopté par toutes les principales distributions. 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 = serveur de médias Serviio après = syslog.réseau cible.Target [service] utilisateur = Serviio execStart = / opt / Serviio-1.9 / bac / Serviio.sh execstop = / opt / serdiio-1.9 / bac / Serviio.sh -stop [install] wantedBy = multi-utilisateur.cible 

Décrivant la syntaxe d'un fichier de service SystemD, ce n'est pas le but de ce tutoriel, mais veuillez remarquer la ligne contenant la User = Serviio instruction. Ce que nous voulons obtenir avec lui, c'est spécifier que le démon doit fonctionner avec le servir privilèges de l'utilisateur et non comme root, pour des raisons de sécurité. Le servir L'utilisateur n'existe pas encore, alors créons-le et donnons-lui la propriété du / opt / Serviio-1.9 Répertoire et tous les fichiers dedans:

# userAdd -r -u -s / sbin / nologin Serviio && chown -r Serviio: Serviio / Opt / Serviio-1.9

Vous connaissez probablement le userAdd commande, mais pour plus de clarté, spécifions quelles sont les options fournies. Le -r L'option spécifie que nous voulons créer un compte système. Les comptes système n'ont aucune information de vieillissement et un uid avec une valeur < 1000; for such accounts no home directory is created. The -U L'option demandera au programme de créer également un groupe avec le même nom que l'utilisateur, et ajoutera automatiquement l'utilisateur audit groupe. Enfin avec -s, Nous avons spécifié le shell pour l'utilisateur. Dans ce cas, nous avons utilisé / sbin / nologine qui est un fausse coquille. Nous l'avons utilisé pour des raisons de sécurité: de cette façon l'utilisateur, le service s'exécute comme, ne pourra jamais utiliser un shell réel pour exécuter les commandes.

Nous y sommes: nous avons créé l'utilisateur Serviio et écrit notre fichier de service. Maintenant, nous devons le copier dans le / usr / systemd / système annuaire:

# CP Serviio.service / etc / systemd / système

Pour activer le service que nous exécutons maintenant:

# SystemCTL Activer 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 fonctionnant:

$ SystemCTl Status Serviio.service

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

● Serviio.Service - Serveur de médias Serviio Chargé: chargé (/ etc / systemd / système / Serviio.service; activé; Vendor Preset: Activé) Actif: Active (Running) Depuis le jeu 2017-09-28 21:29:18 CEST; Il y a 31S, PID principal: 420 (Java) CGroup: / Système.Tranche / Serviio.Service └─420 java -xmx512m -xms20m -xx: + useg1gc -xx: gctimeratio = 1 -xx: minheapfreeratio = 10 -xx: maxheapfreeratio = 20 -djava.filet.PreferriPv4Stack = true […] 

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

Si vous exécutez un pare-feu sur votre machine, vous devez également ouvrir des ports 8895 / TCP, 1900 / UDP, 23423 / TCP et 23424 / TCP. Les deux derniers ports sont nécessaires respectivement pour contrôler la console et accéder au MediaBrowser

Contrôle Serviio

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 / à partir d'une autre machine dans le même LAN ou utilisez des applications tierces telles que l'application Android «ServiiDroid».

Une liste complète des options possibles est disponible ici: http: // Serviio.org / applications ". Si vous exécutez la version «Pro» de Serviio, vous pourrez également explorer votre catalogue en utilisant le MediaBrowser intégré accessible à http: // yourmachineip: 23424 / mediaBrowser /.

Tutoriels Linux connexes:

  • Choses à installer sur Ubuntu 20.04
  • Installation d'Oracle Java sur Ubuntu 20.04 Focal Fossa Linux
  • Linux: installer Java
  • Comment installer Java sur Manjaro Linux
  • Comment installer Java sur Kali Linux
  • Ubuntu 20.04 Hadoop
  • Exemples de lignes de commande de commande de bash utile - Partie 6
  • Ubuntu 22.04 Installation d'éclipse
  • Comment persister les données à PostgreSQL à Java
  • Choses à faire après l'installation d'Ubuntu 20.04 Focal Fossa Linux