GNU/Linux >> Linux の 問題 >  >> Debian

RaspberryPiにServiioメディアサーバーをインストールする方法

目的

RaspberryPiにServiioメディアサービスをインストールする

要件

  • Raspbian「Stretch」が機能するインストールを備えたRaspberryPi
  • root権限

難易度

簡単

規約

  • –指定されたLinuxコマンドをroot権限で
    rootユーザーとして直接実行するか、sudoを使用して実行する必要があります コマンド
  • $ –特定のLinuxコマンドを通常の非特権ユーザーとして実行する必要があります

はじめに

Serviioは、Javaで記述されたメディアサーバーです。無料版(残念ながらビールのように無料)と、リモートアクセスなどの追加機能を備えた「プロ」版の2つのバージョンがあります。このチュートリアルでは、最小バージョンのRaspbian「Stretch」を実行しているRaspberryPiへのServiioのインストールについて説明します。

依存関係のインストール

ServiioはJavaで記述されているため、使用するにはJava開発キットをインストールする必要があります。 RaspbianStretchリポジトリには2つのバージョンのJDKがあります。GPLv2でリリースされたオープンソースバージョンです。 OpenJDKと呼ばれるライセンス 、およびOracleの商用のプロプライエタリバージョン(パッケージは実際にはoracle-java8-jdkと呼ばれます)。どちらも正しく機能するはずですが、このチュートリアルでは前者を使用します。

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

Serviioを入手してインストールする

必要なパッケージをすべてインストールしたので、Serviio tarballを取得する必要があります。ヘッドレスマシンで作業しているため、wgetを使用します。 タスクを達成するために。したがって、次のように実行します:

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

ダウンロードが完了したら、実際のServiioのインストールに進むことができます。 /opt内のtarballのコンテンツを抽出します ディレクトリ:明らかに別のディレクトリを選択できますが、/ optは通常、自己完結型のサードパーティアプリケーションをホストするために使用されます。先に進みましょう:

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

-C オプション(--directoryの略) )操作を実行する前に、ディレクトリを指定されたディレクトリに変更するようにtarに指示します。

Serviioのsystemdサービスを作成する

Serviioがインストールされたので、/opt/serviio-1.9/bin内に2つのスクリプトが存在することを確認できます。 ディレクトリ:serviio.sh およびserviio-console.sh。 1つ目はサーバーを起動し、2つ目はサーバーを制御するためのインターフェースを起動します。

この時点で、システムの起動時にserviioを起動するためにsystemdサービスを作成するために必要なものがすべて揃っています。このタスクを実行するには、小さなサービスファイルを作成する必要があります。ご存知のとおり、systemdは新しいlinux initシステムであり、現在すべての主要なディストリビューションで採用されています。これはオープンソースコミュニティで多くの議論の源となっていますが、間違いなく標準になっています。サービスを作成するには、お気に入りのエディターを起動して、以下のテキストを含むserviio.serviceというファイルを作成します。

[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

systemdサービスファイルの構文を説明することはこのチュートリアルの目的ではありませんが、User=serviioを含む行に注意してください。 命令。これを使用して取得したいのは、デーモンがserviioで実行される必要があることを指定することです。 セキュリティ上の理由から、rootとしてではなくユーザー権限。 serviio ユーザーはまだ存在しないので、作成して/opt/serviio-1.9ディレクトリとその中のすべてのファイルの所有権を与えましょう:

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

あなたはおそらくuseraddに精通しているでしょう コマンドですが、わかりやすくするために、提供されているオプションの目的を指定しましょう。 -r オプションは、system accountを作成することを指定します 。システムアカウントにはエージング情報がなく、uid 値が1000未満の場合。このようなアカウントの場合、ホームディレクトリは作成されません。 -U オプションは、ユーザーと同じ名前のグループも作成し、ユーザーをそのグループに自動的に追加するようにプログラムに指示します。最後に-sを使用します 、ユーザーのシェルを指定しました。この場合、/sbin/nologinを使用しました これはfake shellです 。セキュリティ上の理由から使用しました。このように、サービスを実行しているユーザーは、実際のシェルを使用してコマンドを実行することはできません。

これで、serviioユーザーを作成し、サービスファイルを作成しました。次に、それを/usr/systemd/systemにコピーする必要があります ディレクトリ:

# cp serviio.service /etc/systemd/system

現在実行しているサービスを有効にするには:

# systemctl enable serviio.service

ここで、システムを再起動します。すべてがうまくいけば、起動プロセスが完了したときに、serviioサービスはすでにアクティブになっています。次のコマンドを実行して、ステータスを確認できます:

$ systemctl status serviio.service

Systemdは、デーモンのステータスについて通知します。例:

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

ご覧のとおり、サービスはアクティブで実行されているため、すべてが期待どおりに実行されました。何か問題が発生し、サービスの起動に問題がある場合は、同じコマンドで提供されるログを使用して問題を解決できます。

マシンでファイアウォールを実行している場合は、ポート8895/tcpも開く必要があります 、1900/udp23423/tcp および23424/tcp 。最後の2つのポートは、コンソールを制御し、メディアブラウザにアクセスするためにそれぞれ必要です

制御サービス

サービスを制御するために、いくつかのオプションがあります。ヘッドレスマシンで実行しているため、グラフィカルコンソールにはアクセスできませんが、http://yourmachineip:23423/console/に移動してWebインターフェースにアクセスできます。 同じLAN内の別のマシンから、またはAndroidアプリ「ServiiDroid」などのサードパーティアプリケーションを使用します。

可能なオプションの完全なリストは、ここで入手できます:http://serviio.org/apps" 。 「プロ」バージョンのserviioを実行している場合は、http://yourmachineip:23424/mediabrowser/からアクセスできる統合メディアブラウザーを使用してカタログを探索することもできます。 。


Debian
  1. Ubuntu20.04にPlexMediaServerをインストールする方法

  2. Ubuntu18.04にPlexMediaServerをインストールする方法

  3. CentOS7にPlexMediaServerをインストールする方法

  1. Debian9にPlexMediaServerをインストールする方法

  2. CentOS7にPlexMediaServerをインストールする方法

  3. CentOS8にAirSonicMediaServerをインストールする方法

  1. CentOS8にPlexMediaServerをインストールする方法

  2. Debian10にJellyfinMediaServerをインストールする方法

  3. Debian10バスターにJellyfinメディアサーバーをインストールする方法