GNU/Linux >> Linux Esercitazione >  >> Debian

Come installare il media server Serviio su Raspberry Pi

Obiettivo

Installa il servizio multimediale Serviio su Raspberry Pi

Requisiti

  • Un Raspberry Pi con un'installazione funzionante di Raspbian "Stretch"
  • Privilegi di root

Difficoltà

FACILE

Convenzioni

  • # – richiede che i comandi linux dati vengano eseguiti con i privilegi di root sia
    direttamente come utente root o utilizzando sudo comando
  • $ – richiede che i comandi linux dati vengano eseguiti come un normale utente non privilegiato

Introduzione

Serviio è un server multimediale scritto in java. È disponibile in due versioni:quella gratuita (purtroppo gratuita come nella birra) e la versione "pro", che include alcune funzionalità aggiuntive come l'accesso remoto. In questo tutorial tratteremo l'installazione di Serviio su un Raspberry Pi che esegue una versione minima di Raspbian "Stretch".

Installazione delle dipendenze

Serviio è scritto in java, quindi dobbiamo installare il kit di sviluppo java per poterlo utilizzare. Ci sono due versioni di JDK nei repository Raspbian Stretch:la versione open source, rilasciata sotto GPLv2 licenza, denominata OpenJDK e la versione commerciale, proprietaria di Oracle (il pacchetto è in realtà chiamato oracle-java8-jdk). Entrambi dovrebbero funzionare correttamente, ma in questo tutorial useremo il primo.

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

Prendi e installa Serviio

Ora che abbiamo installato tutti i pacchetti necessari, dobbiamo prendere il tarball di Serviio:poiché stiamo lavorando su una macchina headless, useremo wget per portare a termine il compito. Pertanto, eseguiamo:

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

Al termine del download, possiamo procedere all'effettiva installazione di Serviio. Estrarremo il contenuto del tarball all'interno di /opt directory:ovviamente puoi sceglierne un'altra, ma /opt è convenzionalmente utilizzato per ospitare applicazioni di terze parti autonome. Procediamo:

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

Il -C opzione (abbreviazione di --directory ) indica a tar di cambiare directory in quella data, prima di eseguire le operazioni.

Crea il servizio systemd per Serviio

Ora che Serviio è installato, puoi osservare che esistono due script all'interno di /opt/serviio-1.9/bin directory:serviio.sh e serviio-console.sh. Il primo avvia il server mentre il secondo l'interfaccia per controllarlo.

A questo punto, abbiamo tutto ciò di cui abbiamo bisogno per creare il servizio systemd per avviare serviio all'avvio del sistema. Per eseguire questo compito, dobbiamo scrivere un piccolo file di servizio. Come sicuramente saprai, systemd è il nuovo sistema di init di linux, ormai adottato da tutte le maggiori distribuzioni. È stato fonte di molte discussioni nella comunità open source, ma è senza dubbio diventato lo standard. Per creare il servizio, avvia il tuo editor preferito e crea un file chiamato serviio.service contenente il testo seguente:

[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

Descrivere la sintassi di un file di servizio systemd non è lo scopo di questo tutorial, ma si prega di notare la riga contenente il User=serviio istruzione. Quello che vogliamo ottenere con esso, è specificare che il demone deve essere eseguito con il serviio privilegi utente e non come root, per motivi di sicurezza. Il serviio l'utente non esiste ancora, quindi creiamolo e diamogli la proprietà della directory /opt/serviio-1.9 e di tutti i file in essa contenuti:

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

Probabilmente hai familiarità con useradd comando, ma per motivi di chiarezza, specifichiamo a cosa servono le opzioni fornite. Il -r l'opzione specifica che vogliamo creare un system account . Gli account di sistema non hanno informazioni sull'invecchiamento e un uid con un valore <1000; per tali account non viene creata alcuna home directory. Il -U opzione indicherà al programma di creare anche un gruppo con lo stesso nome dell'utente e di aggiungere automaticamente l'utente a detto gruppo. Infine con -s , abbiamo specificato la shell per l'utente. In questo caso abbiamo usato /sbin/nologin che è una fake shell . L'abbiamo usato per motivi di sicurezza:in questo modo l'utente, come è in esecuzione il servizio, non sarà mai in grado di utilizzare una vera shell per eseguire comandi.

Ci siamo:abbiamo creato l'utente serviio e scritto il nostro file di servizio. Ora dobbiamo copiarlo in /usr/systemd/system directory:

# cp serviio.service /etc/systemd/system

Per abilitare il servizio che ora eseguiamo:

# systemctl enable serviio.service

Ora riavvia il sistema:se tutto va bene, il servizio serviio sarà già attivo al termine del processo di avvio. Puoi verificarne lo stato eseguendo:

$ systemctl status serviio.service

Systemd ti informerà sullo stato del demone, ad esempio:

● 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
[...]

Come puoi vedere il servizio è attivo e funzionante, quindi tutto è andato come previsto. Se qualcosa va storto e si verificano problemi durante l'avvio del servizio, puoi utilizzare i log forniti dallo stesso comando per risolvere i problemi.

Se stai eseguendo un firewall sulla tua macchina devi anche aprire le porte 8895/tcp , 1900/udp , 23423/tcp e 23424/tcp . Le ultime due porte sono necessarie rispettivamente per controllare la console e per accedere al mediabrowser

Servizio di controllo

Per controllare il serviio, abbiamo poche opzioni. Poiché stiamo girando su una macchina headless, non possiamo accedere alla console grafica, ma possiamo accedere all'interfaccia web, navigando su http://yourmachineip:23423/console/ da un altro computer nella stessa lan o utilizzare applicazioni di terze parti come l'app Android "ServiiDroid".

Un elenco completo delle possibili opzioni è disponibile qui:http://serviio.org/apps" . Se utilizzi la versione “pro” di serviio potrai anche esplorare il tuo catalogo utilizzando il mediabrowser integrato accessibile da http://yourmachineip:23424/mediabrowser/ .


Debian
  1. Come installare Plex Media Server su Ubuntu 20.04

  2. Come installare Plex Media Server su Ubuntu 18.04

  3. Come installare Plex Media Server su CentOS 7

  4. Come installare Plex Media Server su Debian 9

  5. Come installare Plex Media Server su CentOS 7

Come installare Ubuntu Server su un Raspberry Pi

Come installare Jellyfin Media Server su Ubuntu 20.04 LTS

Come installare Plex Media Server su Debian 9 Stretch

Come installare Jellyfin Media Server su Debian 11

Come installare Plex Media Server su Debian 11

Come installare Plex Media Server su Debian 10