Skip to content

Instantly share code, notes, and snippets.

@Nilpo
Last active October 24, 2022 14:02
Show Gist options
  • Star 7 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save Nilpo/1dfd2c42d9ac61c2b24bc526794b5ef7 to your computer and use it in GitHub Desktop.
Save Nilpo/1dfd2c42d9ac61c2b24bc526794b5ef7 to your computer and use it in GitHub Desktop.
Instal Plex on Asus Tinker Board
  1. In terminal, upgrade TinkerOS.

    sudo apt update && apt upgrade -y
    sudo apt dist-upgrade
  2. Install avahi-daemon

    sudo apt install avahi-daemon -y
  3. Change the default password for the default "linaro" account.

    passwd
  4. Change the hostname to something more memorable like "tinkerplex".

    echo "tinkerplex" > /etc/hostname && sudo hostname tinkerplex
  5. Reboot the Tinker Board. (The reboot is not only for the hostname change, but also because some of the updated packages will request it as well.)

    sudo reboot
  6. You can continue accessing your Pi locally, or connect to it via ssh with ssh pi@tinkerplex.local.

  7. Install from repository.

    # become root
    sudo su
    # add the public key
    wget -O - https://dev2day.de/pms/dev2day-pms.gpg.key | apt-key add -
    # add the PMS repo
    echo "deb [arch=armhf] https://dev2day.de/pms/ stretch main" >> /etc/apt/sources.list.d/pms.list
    # activate https
    apt install apt-transport-https
    # enable armhf support
    dpkg --add-architecture armhf 
    # update the repos
    apt update
    # install PMS
    apt install -t stretch plexmediaserver-installer:armhf
    # exit su
    exit
  8. You can verify that the server is running with the following commands:

    service plexmediaserver status
    sudo netstat -lptu | grep 32400
  9. You can now access your Plex Media Server in your favorite browser.

    http://tinkerplex.local:32400/web

  10. Next, let's attach a network share with a media library. Skip this step if the library will be local to the device.

    sudo su
    apt install cifs-utils -y
    mkdir -p /mnt/shares/media
    # mount a public network share...
    mount.cifs //192.168.1.199/share1/  /mnt/shares/media/
    # or mount a private network share with credentials
    mount.cifs //192.168.1.199/share1/  /mnt/shares/media/ -o user=user1,pass=user1password
    # mount a share at system boot (preferred)
    echo "username=user1" >> ~/.smbcredentials
    echo "password=user1password" >> ~/.smbcredentials
    chmod 600 ~/.smbcredentials
    echo "//192.168.1.199/share1  /mnt/shares/media  cifs  credentials=/root/.smbcredentials,_netdev  0  0" >> /etc/fstab
    exit
  11. Install Tautulli for monitoring. Requires Python 2.7 which is installed by default. Tautulli is not compatible with Python 3. You can check your version with python --version.

    sudo apt install git-core
    cd /opt
    sudo git clone https://github.com/Tautulli/Tautulli.git
  12. Copy the config file, create a data directory, and take ownership of the program directories.

    sudo cp /opt/Tautulli/config.ini /etc/tautulli.conf
    sudo mkdir -p /opt/TautulliData
    sudo chown linaro:linaro /etc/tautulli.conf
    sudo chown -R linaro:linaro /opt/TautulliData
    sudo chown -R linaro:linaro /opt/Tautulli
  13. Set up a launch daemon so that Tautulli runs at startup.

    cat <<EOT >> /lib/systemd/system/tautulli.service
    [Unit]
    Description=Tautulli - Stats for Plex Media Server usage
    
    [Service]
    ExecStart=/opt/Tautulli/Tautulli.py --quiet --daemon --nolaunch --config /etc/tautulli.conf --datadir /opt/TautulliData
    GuessMainPID=no
    Type=forking
    User=linaro
    Group=linaro
    
    [Install]
    WantedBy=graphical.target
    EOT | sudo -s
  14. Reload and start the service.

    sudo systemctl daemon-reload
    sudo systemctl enable tautulli.service
    sudo systemctl start tautulli.service
    exit
  15. Complete the setup wizard in your browser.

    http://tinkerplex.local:8181

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment