Raspberry Piに自作メディアホームサーバーJellyfinをインストールする方法

記事の方法を試す前や質問をするまえに必ず下記リンクを見てからにしてください!
このブログについて



こちらではRaspberry Pi 5に自作メディアホームサーバーJellyfinをインストールする方法を紹介します
動画は参考程度に
そのまま動画の方法に従うとエラーが出たり、再起動したら正常に起動しなくなったりします!

Jellyfinを使用することによりネットフリックスやアマゾンプライムビデオのようにネットワーク経由で動画や写真、音楽、電子書籍などが見れるように、自分でメディアサーバーを構築できます
パソコンやスマホやタブレットなど様々な機器で視聴可能
保存していた好きな動画や音楽を大量に所持している場合にとても便利です

こちらの方法は、ラズパイ本体をネットワーク経由でパソコンから設定するため、ラズパイ本体にHDMIやキーボードやマウスなど接続しなくても簡単に行えます


必要なもの
この記事を投稿した時点で一番性能の良いRaspberry Pi 5を推奨
Raspberry Pi 5本体


外付け用のフラッシュメモリ又はHDD又はSSD

microSDカード
自分はゲオの安価なものを購入しました
そこまで沢山ゲームを入れるわけではないのであれば64GBくらいでよい
 
Raspberry Pi 5(ラズベリーパイ5)専用電源アダプタ
Smraza Raspberry Pi 5 電源 27W PDアダプター USB-C (Type C)5.1V 5A ラズベリーパイ5用ACアダプター Raspberry Pi 5に適用(ブラック)
 
microHDMIケーブル(又は変換アダプタ)
これはJellyfinを導入して、再起動したら起動しなくなった場合に、エラーを確認できるので、あった方がよいです
通販は質的に少し心配なので、家電量販店で直接購入した方がいい気がします
画像のようなHDMIを変換するアダプタなら、既に所持しているHDMIケーブルを利用できるので、安上がりですみますが、自分が購入したものは強度がもろく、接続部分からぽっきりと折れました
少し高くてもケーブルそのものを用意した方がよいと思います 


導入方法
下記リンクを参考にラズパイOSを書き込む
書き込むOSはRaspberry Pi OS (other)を選択し、
Raspberry Pi OS Lite (64-bit)を選択
書き込む前に設定を編集するを選択
ユーザー名とパスワードを適当に設定
ホスト名は適当だが、ここでは分かりやすくraspberrypi5に設定しました
自分は家の中でしか使用しないので、面倒なのでパスワードは0にしました
ロケール設定そするで、タイムゾーンをAsia/Tokyoで、キーボードレイアウトをjpに変更
上側のサービスタブをクリック
SSHを有効化するにチェックを入れ、下側の保存をクリック
はいをクリック
あとは書き込みをするだけ

パソコンでboofsという名前のusbドライブを開き、その中にあるconfig.txtファイルを開く
[all]の下に
arm_freq=2800
gpu_freq=700
over_voltage=3
の三行を追記し、保存

sdカードをRaspberry Pi5本体に挿入し、起動
パソコンの方でデスクトップのタスクバーの検索欄にcmdと打ち込むと、コマンドプロンプトが表示されるので、その上で右クリックから管理者として実行
ここからの説明
コピペはコピー&ペーストの略
コピーは文字をマウスで指定して、右クリックからコピーか、キーボードでコントロールキーとCを同時押し
ペーストはコマンドプロンプト内で右クリックすると自動的に張り付けてくれるので、そのあとエンターを押せばよい
ping -4 raspberrypi5.local
をコピペ
するとipアドレスが表示される
ssh ユーザー名@表示されたipアドレス
ssh a@192.168.1.16
と打ち込む
そのあとyesと打ち込むとパスワードを求められるので入力し、エンター
やり直した際などに、このようなエラーが出てくる
この場合は
ssh-keygen -R ipアドレス
と打ち込む
ssh-keygen -R 192.168.1.16
もう一度ssh ユーザー名@表示されたipアドレス
ssh a@192.168.1.16
と打ち込む
そのあとyesと打ち込むとパスワードを求められるので入力し、エンター

sudo nano /etc/ssh/sshd_config
とコピペしてエンター
下矢印↓キーを押し、下まで行き、
ClientAliveInterval
ClientAliveCountMax
の前にある#をDeleate(デリート)キーを押して消す
ClientAliveIntervalの値を0から1000000に変更し、Ctrl(コントロール)キーとO(オー)キーを同時押しし、そのあとにエンター
Ctrl(コントロール)キーとX(エックス)キーを同時押しし、前の画面に戻る

sudo systemctl reload ssh
をコピペし、エンター

sudo apt update
をコピペし、エンター
すると処理が開始されるので、処理が完了するまで待つ

sudo apt upgrade -y
をコピペし、エンター
すると処理が開始される
75%当たりから、処理が一旦とまる
Nを入力してエンター
処理が完了するまで待つ

curl -fsSL https://get.casaos.io | sudo bash
をコピペし、エンター
すると処理が開始されるので、処理が完了するまで待つ

sudo reboot now
をコピペし、エンター

再び
ssh ユーザー名@表示されたipアドレス
ssh a@192.168.1.16
と打ち込む
そのあとyesと打ち込むとパスワードを求められるので入力し、エンター

sudo -s
をコピペし、エンター


exFatの記録メディアを使用する場合
sudo apt install exfat-fuse


sudo -s
をコピペし、エンター


記録メディアをext4形式にフォーマットする場合
sudo -s
をコピペし、エンター
lsblk
を入力し、エンター
すると、接続されているフラッシュメモリや、HDDなどが表示されるので、容量を確認し、あっていれば、sdaと表記がある(これはssdや外付けHDDなどで表記が違うこともあるので注意)ので、これをフォーマットする
これはlinux用のフォーマット形式のext4にフォーマットされるので、中身が全て消えます
windowsでは読み取れるソフトを追加インストールする又はフォーマットしない限り、アクセスできないようになります
cfdisk /dev/表記があったもの
cfdisk /dev/sda
をコピペし、エンター
下の方にこのように警告が出てくるが、aを押してエンターで次の作業へ
Free spaseを選択したまま下のNewのままエンター
パーティションサイズを決めてエンター
TypeがLinux filesystemになっていたらよい
もしここで上手くいかない場合はMiniTool Partition Wizardを使用してパーティションを削除してから行ってみてください
自分の場合はなぜかこの方法でフォーマットしてからでないと上手くいきませんでした
目的のフラッシュメモリかHDD又はSSDと違うものを誤って選択するとデータが吹き飛びます
自分の場合は、大切なデータを保存していたhddが吹き飛び、自力で復旧しても、破損データばかり
必ずフラッシュメモリのドライブレターを確認してから行ってください!
何が起きても全て自己責任です
業者にhddのデータ復旧頼んでも100%ではないかもしれない上、何万もとられます

下の項目を矢印の右→キーでWriteに合わせ、エンター
yes
と入力し、エンター
下の項目を矢印の右→又は左←キーでQuitに合わせ、エンター

mkfs.ext4 /dev/表記があったもの1
mkfs.ext4 /dev/sda1
をコピペし、エンター
もし、ここでエラーがでるなら
sudo umount /dev/表記があったもの1
sudo umount /dev/sda1
をコピペし、エンターで、再び
mkfs.ext4 /dev/表記があったもの1
mkfs.ext4 /dev/sda1
をコピペし、エンター









mkdir /DATA/Media/USB
をコピペし、エンター

chmod 777 /DATA/Media/USB
をコピペし、エンター

mount /dev/sda1 /DATA/Media/USB
をコピペし、エンター

blkid
をコピペし、エンター
/dev/表記があったもの1
/dev/sda1
の部分の
UUID="数字と文字の羅列"
UUID="48852f08-4c2f-45cc-82d2-baca4b6fc846"
をテキストファイルなどにコピーし、"を削除
UUID="数字と文字の羅列"
UUID=数字と文字の羅列
UUID="48852f08-4c2f-45cc-82d2-baca4b6fc846"
UUID=48852f08-4c2f-45cc-82d2-baca4b6fc846
コピーしたい部分をマウスで選択し、左上のアイコンをクリックして、編集からコピーを選べばコピーできるので、テキストファイルなどに貼り付ければよい

nano /etc/fstab
をコピーして貼り付け
UUID=数字と文字の羅列   /DATA/Media/USB    ext4    defaults,nofail    0       0
UUID=48852f08-4c2f-45cc-82d2-baca4b6fc846   /DATA/Media/USB    ext4    defaults,nofail    0       0
を貼り付け
Ctrl(コントロール)キーとO(オー)キーを同時押しし、そのあとにエンター
Ctrl(コントロール)キーとX(エックス)キーを同時押しし、前の画面に戻る

cd /DATA/Media/USB
をコピーして貼り付け

mkdir -p 作成したいフォルダ名 作成したいフォルダ名二つ目 三つ目…
となるようにフォルダを作成
mkdir -p Movie Music
を入力してエンター
特定のアニメを単体に表示させたい場合は、ナルトならnarutoのように適当なフォルダを作成し、その中に動画ファイルを全て入れることになる

chmod 777  作成したフォルダ名 作成したフォルダ名二つ目 三つ目…
chmod 777 Movie Music
を入力してエンター
これは読み書きの権限をあたえるコマンドなので、新しいフォルダを作成した場合はこの設定を必ず行わなければならない

ブラウザのurlの部分にipsアドレスを打ち込む
Goをクリック
アカウントを作成
Usernameは名前
Passwordはパスワード
Confirm passwordは先ほど打ち込んだパスワードをもう一度打ち込む
Createをクリックすればアカウントが作成される
Cancelをクリック
App Storをクリック
jellと打ち込みかけたら、Jellyfinが出てくるのでその下のinstallをクリック
Jellyfinにマウスのカーソルを合わせると、…が右上に出てくるのでクリック
Settingsをクリック
Hostの二番目を/DATA/Media/USBに変更し、Saveをクリック
Jellyfinを起動
日本語を選択し、次へをクリック
アカウントを作成
ユーザー名とパスワードを設定し、次へをクリック
メディアライブラリーを追加で、動画、又は音楽や電子書籍、画像などを保存しているフォルダを追加する
コンテンツタイプと表示名を決める
フォルダを設定するにはフォルダーの横の+をクリックして/Mediaを選択して、その中のフォルダを追加
設定が終わればOKをクリックして次へをクリック
言語をJapaneseに変更
国/地域をJapanに変更
次へをクリック
もし、ネット回線がipv4でルーターがunpnpに対応していれば、外部からもアクセス可能なので、自動ポートマッピングを有効にチェックを入れる
次へをクリック
完了をクリック
設定したユーザー名とパスワードを入力し、サインインをクリック
追加したものを開けばメディアを再生できる
左上の三の部分をクリック
ダッシュボードをクリック
ライブラリをクリックすれば、既に追加したフォルダを編集又は新たなフォルダを追加可能

電源を落とす場合
Raspberry Pi本体の電源ボタンをオフに

安全に電源を落とす場合
コマンドで
sudo poweroff
をコピペしてエンター

もし、パソコンを一度閉じ、サーバーだけは起動しており、電源を落としたい場合は、コマンドプロンプトを開き
ssh ユーザー名@表示されたipアドレス
ssh a@192.168.1.16
と打ち込み
sudo poweroff
をコピペしてエンター


表示画像の変更
表示を変えたいものをマウスでカーソルを持っていくと、…が表示されるのでクリック
イメージを編集をクリック
+をクリック
枠内に画像ファイルを直接ドラッグ&ドロップ
画像が表示されていたら読み込めている
アップロードをクリック
枠外をクリックして閉じる
もし、画像をまた別に変更したい場合はゴミ箱のアイコンをクリックして削除し、同じように画像を追加
ページを再更新すれば、画像が反映されているはず
下記リンクのものはサンプル画像
画像の大きさは1920x1080でpng形式


並び替えする方法
右上のアイコンをクリック
ホームをクリック
ライブラリの順番で変更
名前の横に↑↓があるか、どちらかクリックすれば順番を変えることが可能


スマホやタブレットなどでサーバーに接続する場合
パソコンで設定し、ログインした後に表示されるURLを見る
IPアドレス:ポート
となっている
192.168.1.26:8097

このIPアドレス:ポートの前に
http://
を入力しないといけないので、
http://IPアドレス:ポート
となる
http://192.168.1.26:8097

そのあとにユーザーネームとパスワードが求められると思います

コメント