| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
| acd_cli-plex [Le 20/12/2016, 15:08] – Ethanfel | acd_cli-plex [Le 11/09/2022, 11:27] (Version actuelle) – 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) moths-art |
|---|
| {{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. |
| |
| |
| * 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]] |
| |
| [...] | |
| ===== La Préparation ===== | ===== La Préparation ===== |
| |
| 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 ~ |
| |
| <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]]. |
| 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 : |
| 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. |
| ===== 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. |
| * **/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 |
| 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 : |
| 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> |
| 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> |
| |
| |
| 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**. |
| | |
| |
| 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===== |
| 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 |
| [[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]].// |