Plex

提供: ArchWiki
2019年3月1日 (金) 00:27時点におけるKusakata (トーク | 投稿記録)による版 (カテゴリ変更)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
ナビゲーションに移動 検索に移動

Plex は多数のプレイヤーアプリケーションで構成されるメディアプレイヤーシステム・ソフトウェアスイートです。2〜3メートル離れても操作することができるテレビ向けのインターフェイス (10フィート UI) を備えており、メディアサーバーでローカルデバイス上のメディアを管理することができます。Plex Channels という機能が統合されていて YouTube, Vimeo, TEDTalks, CNN などのオンラインコンテンツを利用することが可能です。また、Plex は Dropbox, Box, Google Drive, Copy, Bitcasa などのクラウドサービスとの統合も提供します。

Plex for Linux はクローズドソースの Plex Media Server と、オープンソースの Plex Home Theater (XBMC のフォーク) に分かれています。

Plex Media Server (PMS)

インストール

plex-media-serverAUR パッケージをインストールしてください。Plex Pass を持っている場合は plex-media-server-plexpassAUR パッケージをインストールしてください。

設定

plexmediaserver.service起動有効化してください。

PMS の設定を開始するには、http://localhost:32400/web/ を開いてください。

PMS をリモートで設定する場合、先に SSH トンネルを作成する必要があります (セットアップは localhost からしかできません):

$ ssh ip.address.of.server -L 8888:localhost:32400

上記を実行してから http://localhost:8888/web/ を開いてください。

プラグイン

PMS はプラグインを追加することで拡張ができます。例えば IPTV プラグイン を利用することで PMS を IPTV クライアントとして使うことが可能になります。

プラグインは $PLEX_MEDIA_SERVER_APPLICATION_SUPPORT_DIR/Plex Media Server/Plug-ins の中にインストールします。

セキュリティ

メディアファイルはホームディレクトリの外に保存することを推奨します。PMS からアクセスできるようにするとセキュリティが落ちるからです。PMS を使うときは /media/mnt/media パーティションを作成するのが良いでしょう。

/etc/systemd/system/plexmediaserver.service.d/restrict.conf ファイルを作成して以下を記述することでセキュリティはさらに高められます:

[Service]
ReadOnlyDirectories=/
ReadWriteDirectories=/var/lib/plex /tmp
ノート: 上記の設定は限定的です。DeveloperWiki:Security#ReadOnly/ReadWrite を参照。例えば、ReadOnlyDirectories はサブマウントには適用されません。

リソース管理

PMS は ulimit を使用してリソースを制限しますが、通常ユーザーで実行する場合は意味がありません。代わりに、systemd を使ってメモリの最大使用量を設定することができます。例えば、4GB に使用量を制限したい場合、上記と同じファイル (/etc/systemd/system/plexmediaserver.service.d/restrict.conf) に以下を追加:

MemoryLimit=4G

ネットワーク

ノート: PMS は IPv4 と IPv6 の両方に対応しています。このセクションでは IPv4 だけを使います。

PMS と DLNA サーバーを使うには複数のポートを開く必要があります:

  • Plex Media Server: TCP 32400
  • Plex DLNA Server: TCP 32469, UDP 1900
  • Network Discovery: UDP 32410, 32412, 32413, 32414
  • Bonjour/Avahi Network Discovery (legacy): UDP 5353

iptables でポートを開く例:

# iptables -A INPUT -p tcp -m multiport --dports 32400,32469 -j ACCEPT
# iptables -A INPUT -p udp -m multiport --dports 1900,32410,32412,32413,32414 -j ACCEPT

vpn によるリモートアクセス

要件

ライブラリを友達と共有して、vpn 接続を通してデータを送信する場合、以下の2つが必要です:

  • 静的なポートフォワーディングができる vpn プロバイダ
  • plex のサーバー設定 で Remote Access を有効化

手順

  1. プロバイダの設定を開いてポートを確認してください (以下、例として 11652 ポートを使います)。
  2. 起動時に次のコマンドを実行するようにします (tun0 は openvpn で使用するインターフェイスに置き換えてください): # iptables -t nat -A PREROUTING -i tun0 -p tcp --dport 11652 -j REDIRECT --to-ports 32400
  3. 最後に、plex のサーバー設定を開いて、高度な設定を有効にしてカスタムポートを 11652 に定義してください。

トラブルシューティング

ログは以下のパスに存在します:

$PLEX_MEDIA_SERVER_APPLICATION_SUPPORT_DIR/Plex Media Server/Logs

ログが残っていない場合、PMS を手動で起動することでターミナルから出力を得ることができます:

sudo -u plex /usr/bin/bash
source /etc/conf.d/plexmediaserver
export LD_LIBRARY_PATH=/opt/plexmediaserver
/opt/plexmediaserver/Plex\ Media\ Server

Plex Home Theater (PHT)

インストール

openphtAUR パッケージをインストールしてください。

Plex Home Theater はターミナルから plexhometheater.sh を実行することで起動できます。

Kodi と PleXBMC

PleXBMC アドオンを使うことで Kodi で PHT を置き換えることができます。

インストール

kodi パッケージをインストールしてから、こちら の指示に従ってください。