Categories
DIY

Plex on Linux

Ввиду того, что новомодная виртуализация докатилась и до домашней недоинфраструктуры, возникла потребность вируализировать все что можно.

Ввиду того, что новомодная виртуализация докатилась и до домашней недоинфраструктуры, возникла потребность вируализировать все что можно.

 Так как сервисы, которые реально часто используются, это:

  • Почта
  • Plex
  • Радио
  • Бложек

Их виртуализация оказалась необходимой задачей. После перевода бложека на Ubuntu, следующей логичной жертвой оказался Plex. Почему он? Да все просто – с ним было все не так очевидно, как, допустим, со связкой Icecast+Liquidsoap, кои будут следующим этапом.

Ожидаемые сложности – проблемы с монтированием дисков к Ubuntu, настройка сетевого окружения для этого. В реальности все оказалось по-другому

Первое, с чем столкнулся, так это с тем, что новый Plex не хочет работать через Apache proxypass. Это оказалось довольно интересной проблемой, так как аутентификация, как выяснилось, происходит через внешний сервер plex.tv, который героически не пускает вас снаружи до тех пор, пока вы не создадите PlexPass. Так как изначальная концепция не предусматривала создание подобного аккунта, ввиду параноидальности автора, от слова “совсем”, пришлось начать изучать траффик.

Самое вменяемое, что пришло в голову, так это только подмена DNS записей, чтобы приложение ломилось к моему управляемому серверу. Пробовать так и не захотелось, хотя надо бы. Пришлось искать старую версию Plex, ибо все что было до релиза, адекватно работало в моем окружении, и не требовало внешней аутентификации. Reddit настойчиво предлагал купить аккаунт, но технический гений просил хардкора, и, после длительных мук, была найдена старая версия для Linux.

Задача подключения сетевых дисков по cifs вообще никак не затруднила, ибо решилась где-то следующими строчками:

 sudo vi /etc/fstab

В файл добавляем

//ip.server.disk.source/share  /media/movie  cifs  username=USER,password=PASSWORD,domain=DOMAIN,iocharset=utf8,sec=ntlm  0  0

Монтируем шару

sudo mount -a

А вот установка потребовала покраснения глаз. Последовательность действий оказалась где-то такой:

Wget https://web.archive.org/web/20130910125628/http://downloads.plexapp.com/plex-media-server/0.9.8.6.175-88ffbb2/plexmediaserver_0.9.8.6.175-88ffbb2_amd64.deb      sudo apt-get update      sudo dpkg -i plexmediaserver*.deb

Потом, оно, скорее всего не запустится и делаем следующее:

Создаем

sudo nano /etc/systemd/system/plexmediaserver.service

Вносим туда такие строчки:

[Unit]     Description=Plex Media Server for Linux     After=network.target      [Service]     Environment="PLEX_MEDIA_SERVER_APPLICATION_SUPPORT_DIR=/var/lib/plexmediaserver/Library/Application Support"     Environment=PLEX_MEDIA_SERVER_HOME=/usr/lib/plexmediaserver     Environment=PLEX_MEDIA_SERVER_MAX_PLUGIN_PROCS=6     Environment=PLEX_MEDIA_SERVER_TMPDIR=/tmp     Environment=LD_LIBRARY_PATH=/usr/lib/plexmediaserver     Environment=LC_ALL=en_US.UTF-8     Environment=LANG=en_US.UTF-8     ExecStartPre=/bin/sh -c '/usr/bin/test -d "${PLEX_MEDIA_SERVER_APPLICATION_SUPPORT_DIR}" || /bin/mkdir -p "${PLEX_MEDIA_SERVER_APPLICATION_SUPPORT_DIR}"'     ExecStart=/bin/sh -c '/usr/lib/plexmediaserver/Plex\ Media\ Server'     Type=simple     User=plex     Group=plex     Restart=on-failure     RestartSec=5     StartLimitInterval=60s     StartLimitBurst=3      [Install]     WantedBy=multi-user.target

И даем права

sudo chmod 0755 -R /var/lib/plexmediaserver     
sudo chown plex:plex -R /var/lib/plexmediaserver     
sudo service plexmediaserver restart

Ну и в конечном итоге запускаем как демона:

sudo systemctl enable plexmediaserver.service     
sudo systemctl start plexmediaserver.service

Что точно можно сказать. Задача, откровенно, дурацкая. Особенной трагедией для меня было то, что новый встал вообще без проблем, а вот старый – какие-то пляски с бубном. В целом, функционал есть, и он работает. Киношечки на улицу публикуются без проблем, да и проблем с аутентификацией тоже не возникло.

What’s your Reaction?
+1
0
+1
0
+1
0

By root

In Unix-like computer OSes (such as Linux), root is the conventional name of the user who has all rights or permissions (to all files and programs) in all modes (single- or multi-user). Alternative names include baron in BeOS and avatar on some Unix variants. BSD often provides a toor ("root" written backward) account in addition to a root account.
Regardless of the name, the superuser always has a user ID of 0. The root user can do many things an ordinary user cannot, such as changing the ownership of files and binding to network ports numbered below 1024.