Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
acd_cli-plex [Le 20/12/2016, 15:10] ethanfel [Pré-requis] |
acd_cli-plex [Le 11/09/2022, 11:27] (Version actuelle) moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>16.04 tutoriel acd_cli plexmediaserver amazon plex infini encfs fuse unionfs }} | + | {{tag>Xenial tutoriel fuse}} |
---- | ---- | ||
====== Comment creer un serveur plex media server avec un stockage infini (amazon) ====== | ====== Comment creer un serveur plex media server avec un stockage infini (amazon) ====== | ||
- | Ce tutoriel décrit les étapes nécessaires pour creer un server distant (ou local) Plex, accompagné d'un stockage Amazon cloud storage illimité (jusqu’à 100to en réalité) tout en cryptant l'intégrabilité des fichiers. | + | Ce tutoriel décrit les étapes nécessaires pour créer un server distant (ou local) Plex, accompagné d'un stockage Amazon cloud storage illimité (jusqu’à 100to en réalité) tout en chiffrant l'intégralité des fichiers. |
Ligne 11: | Ligne 11: | ||
* Disposer des [[:sudo|droits d'administration]]. | * Disposer des [[:sudo|droits d'administration]]. | ||
* Disposer d'une connexion à Internet configurée et activée. | * Disposer d'une connexion à Internet configurée et activée. | ||
- | * un serveur/vps disposant de FUSE (j'utilise hetnzer online et ovh kimsufi), attention a OpenVZ pour les vps, vérifié bien la disponibilité de fuse. | + | * un serveur/vps disposant de FUSE (j'utilise hetnzer online et ovh kimsufi), attention a OpenVZ pour les vps, vérifié bien la disponibilité de fuse. |
* un accès SSH | * un accès SSH | ||
* un compte [[https://www.amazon.com/clouddrive/home|amazon cloud storage]] | * un compte [[https://www.amazon.com/clouddrive/home|amazon cloud storage]] | ||
Ligne 19: | Ligne 19: | ||
Tout d'abord, il vous faudra installer Plex, rendez vous sur la [[https://www.plex.tv/downloads//|page de téléchargement]], copié le lien pour Ubuntu et wget. Dans mon exemple, c'est la version 1.3.3 de plex. | Tout d'abord, il vous faudra installer Plex, rendez vous sur la [[https://www.plex.tv/downloads//|page de téléchargement]], copié le lien pour Ubuntu et wget. Dans mon exemple, c'est la version 1.3.3 de plex. | ||
+ | ==== Plex ==== | ||
<code>cd ~ | <code>cd ~ | ||
Ligne 42: | Ligne 43: | ||
<code>service ssh restart</code> | <code>service ssh restart</code> | ||
+ | |||
+ | ==== Les dossiers ==== | ||
Une fois reconnecté avec l'utilisateur plex (su plex), on va créer les dossiers nécessaires, une documentation détaille est disponible [[http://makeshift.ninja/unlimited-plex-media-server-using-amazons-unlimited-storage-backend-pt1.html|ici]]. | Une fois reconnecté avec l'utilisateur plex (su plex), on va créer les dossiers nécessaires, une documentation détaille est disponible [[http://makeshift.ninja/unlimited-plex-media-server-using-amazons-unlimited-storage-backend-pt1.html|ici]]. | ||
Ligne 55: | Ligne 58: | ||
mkdir /home/plex/logs/ | mkdir /home/plex/logs/ | ||
</code> | </code> | ||
+ | |||
+ | ==== Les paquets ==== | ||
ensuite on install l'ensemble des paquets necessaires : | ensuite on install l'ensemble des paquets necessaires : | ||
Ligne 62: | Ligne 67: | ||
sudo easy_install3 -U pip | sudo easy_install3 -U pip | ||
</code> | </code> | ||
+ | |||
+ | ==== Acd_cli ==== | ||
Une fois tout ceci terminé, on réalise l'installation d'[[https://github.com/yadayada/acd_cli|ACD_CLI]] qui est une interface en ligne de commande qui permet de monter des disques cloud comme des dossiers locaux. | Une fois tout ceci terminé, on réalise l'installation d'[[https://github.com/yadayada/acd_cli|ACD_CLI]] qui est une interface en ligne de commande qui permet de monter des disques cloud comme des dossiers locaux. | ||
Ligne 85: | Ligne 92: | ||
===== Le vif du sujet ===== | ===== Le vif du sujet ===== | ||
- | **Le principe est simple :** | + | **Le principe est simple :** |
* **/local-sorted**, qui est le fichier local non crypté ou vous déposerez vos médias. | * **/local-sorted**, qui est le fichier local non crypté ou vous déposerez vos médias. | ||
Ligne 93: | Ligne 100: | ||
* **/sorted**, le dossier qui via unionfs, permet de "fusionner" local-sorted et acd-sorted, ce sera le dossier utilisé par Plex. | * **/sorted**, le dossier qui via unionfs, permet de "fusionner" local-sorted et acd-sorted, ce sera le dossier utilisé par Plex. | ||
- | Nous allons maintenant generer la clée de cryptage avec encfs, il est *imperatif* qu'une fois ces étapes terminées, que vous conserviez une __sauvegarde__ de la clée de cryptage. | + | Nous allons maintenant générer la clé de cryptage avec encfs, il est *impératif* qu'une fois ces étapes terminées, que vous conserviez une __sauvegarde__ de la clé de cryptage. |
Pour monter encfs, on lance simplement | Pour monter encfs, on lance simplement | ||
Ligne 101: | Ligne 108: | ||
Encfs va vous demander les réglages de cryptages, ceux par défauts sont correctes et une mot de passe, qu'il faudra lui aussi conserver précieusement. | Encfs va vous demander les réglages de cryptages, ceux par défauts sont correctes et une mot de passe, qu'il faudra lui aussi conserver précieusement. | ||
- | Une fois terminé, tout fichier placé dans */local-sorted*, apparaitra crypté dans */.local-sorted*. | + | Une fois terminé, tout fichier placé dans */local-sorted*, apparaîtra crypté dans */.local-sorted*. |
Nous allons ensuite déplacer la clé de cryptage : | Nous allons ensuite déplacer la clé de cryptage : | ||
Ligne 107: | Ligne 114: | ||
mv /home/plex/.local-sorted/.encfs6.xml /home/plex/encfs.xml</code> | mv /home/plex/.local-sorted/.encfs6.xml /home/plex/encfs.xml</code> | ||
- | Dorénavant, pour monter un système de fichier encfs, il sera nécessaire de stipuler la présence d'un fichier de configuration. | + | Dorénavant, pour monter un système de fichier encfs, il sera nécessaire de stipuler la présence d'un fichier de configuration. |
<code>ENCFS6_CONFIG='/home/plex/encfs.xml' encfs /home/plex/.local-sorted /home/plex/local-sorted</code> | <code>ENCFS6_CONFIG='/home/plex/encfs.xml' encfs /home/plex/.local-sorted /home/plex/local-sorted</code> | ||
Ligne 159: | Ligne 166: | ||
done</code> | done</code> | ||
- | ensuite on rend le scripte exécutable : | + | ensuite on rend le scripte exécutable : |
<code> chdmod +x /home/plex/.looprclone.sh</code> | <code> chdmod +x /home/plex/.looprclone.sh</code> | ||
Ligne 177: | Ligne 184: | ||
Cela fusionne les deux dossiers non crypté en 1 seul dossier **/sorted**. qu'on utilisera pour plex. | Cela fusionne les deux dossiers non crypté en 1 seul dossier **/sorted**. qu'on utilisera pour plex. | ||
- | Cela a pour avantage de permettre a plex d'ajouter un fichier rapidement lorsqu'il est ajouté sur le server dans **/local-sorted** et lorsque celui si est upload sur amazon, décrypté et remonté localement dans */acd-sorted, de ne pas y voir de différence puisqu'il sera monté de manière identique dans **/sorted**. | + | Cela a pour avantage de permettre a plex d'ajouter un fichier rapidement lorsqu'il est ajouté sur le server dans **/local-sorted** et lorsque celui si est upload sur amazon, décrypté et remonté localement dans */acd-sorted, de ne pas y voir de différence puisqu'il sera monté de manière identique dans **/sorted**. |
Ligne 184: | Ligne 191: | ||
Voila, vous avez l'essentiel pour réaliser votre propre Plex infini. C'est évidemment a utiliser avec des médias dont vous avez légalement acquis la propriété ou vos films perso. | Voila, vous avez l'essentiel pour réaliser votre propre Plex infini. C'est évidemment a utiliser avec des médias dont vous avez légalement acquis la propriété ou vos films perso. | ||
- | Je vous invite a terminer le tuto par la lecture des problèmes connus, il y en a quelque un, notamment celui causé par acd_cli sync, qui fait planté le point de montage et qui devient inaccessible. | + | Je vous invite a terminer le tuto par la lecture des problèmes connus, il y en a quelque un, notamment celui causé par acd_cli sync, qui fait planté le point de montage et qui devient inaccessible. |
===== Problèmes connus et leurs solutions===== | ===== Problèmes connus et leurs solutions===== | ||
Ligne 236: | Ligne 243: | ||
On va ensuite exécuter ce scripte tout les 6 minutes via [[https://doc.ubuntu-fr.org/cron|cron]], un délais entre chaque sync est au minimum de 5 minutes. | On va ensuite exécuter ce scripte tout les 6 minutes via [[https://doc.ubuntu-fr.org/cron|cron]], un délais entre chaque sync est au minimum de 5 minutes. | ||
| | ||
- | <note>*/6 * * * * sh /home/plex/sync.sh >> /home/plex/logs/cron.log 2>&1</note> | + | <note>*/6 * * * * sh /home/plex/sync.sh >> /home/plex/logs/cron.log 2>&1</note> |
| | ||
| | ||
==== Remontage apres un reboot ==== | ==== Remontage apres un reboot ==== | ||
+ | |||
+ | on va créer un script qui permet de remonter tout ceci via cron apres un reboot. | ||
+ | |||
+ | On crée d'abord un fichier .encfspass qui ne contiendra que le mot de pass de encfs. | ||
| | ||
- | on va créer un script qui permet de remonter tout ceci via cron apres un reboot. | + | <code>nano /home/plex/.encfspass</code> |
- | + | ||
- | On crée d'abord un fichier .encfspass qui ne contiendra que le mot de pass de encfs. | + | ensuite un script **.mount.sh** contenant le code suivant qu'on rendre exécutable via **chmod +x** |
- | + | ||
- | <code>nano /home/plex/.encfspass</code> | + | |
- | + | ||
- | ensuite un script **.mount.sh** contenant le code suivant qu'on rendre exécutable via **chmod +x** | + | |
<code> !/bin/sh | <code> !/bin/sh | ||
/bin/fusermount -uz /home/plex/acd-sorted | /bin/fusermount -uz /home/plex/acd-sorted | ||
Ligne 271: | Ligne 278: | ||
[[https://amc.ovh/|Automated Media centre]] | [[https://amc.ovh/|Automated Media centre]] | ||
[[http://http://makeshift.ninja/|makeshitf.ninja]] | [[http://http://makeshift.ninja/|makeshitf.ninja]] | ||
+ | [[https://github.com/yadayada/acd_cli|https://github.com/yadayada/acd_cli]] | ||
---- | ---- | ||
//Contributeurs principaux : [[:utilisateurs:Ethanfel]].// | //Contributeurs principaux : [[:utilisateurs:Ethanfel]].// |