48 lines
1.7 KiB
Bash
48 lines
1.7 KiB
Bash
#!/bin/sh
|
|
|
|
# Default values
|
|
export PLEX_MEDIA_SERVER_MAX_PLUGIN_PROCS="${PLEX_MEDIA_SERVER_MAX_PLUGIN_PROCS:-6}"
|
|
export PLEX_MEDIA_SERVER_HOME="${PLEX_MEDIA_SERVER_HOME:-/usr/lib/plexmediaserver}"
|
|
export PLEX_MEDIA_SERVER_MAX_STACK_SIZE="${PLEX_MEDIA_SERVER_MAX_STACK_SIZE:-3000}"
|
|
export PLEX_MEDIA_SERVER_TMPDIR="${PLEX_MEDIA_SERVER_TMPDIR:-/tmp}"
|
|
export PLEX_MEDIA_SERVER_APPLICATION_SUPPORT_DIR="${PLEX_MEDIA_SERVER_APPLICATION_SUPPORT_DIR:-/config}"
|
|
export PLEX_MEDIA_SERVER_CONFIG_DIR="${PLEX_MEDIA_SERVER_APPLICATION_SUPPORT_DIR}/Plex Media Server"
|
|
|
|
if [ ! -d "$PLEX_MEDIA_SERVER_CONFIG_DIR" ]
|
|
then
|
|
mkdir -p "$PLEX_MEDIA_SERVER_CONFIG_DIR" && \
|
|
chown $SUID:$SGID "$PLEX_MEDIA_SERVER_CONFIG_DIR"
|
|
if [ ! $? -eq 0 ]
|
|
then
|
|
echo "WARNING COULDN'T CREATE $PLEX_MEDIA_SERVER_CONFIG_DIR, MAKE SURE I HAVE PERMISSON TO DO THAT!"
|
|
exit 1
|
|
fi
|
|
fi
|
|
if su-exec -e [ ! -w "$PLEX_MEDIA_SERVER_CONFIG_DIR" ]
|
|
then
|
|
echo "ERROR: CANNOT WRITE IN $PLEX_MEDIA_SERVER_CONFIG_DIR, MAKE SURE I HAVE PERMISSION TO DO THAT!"
|
|
exit 2
|
|
fi
|
|
if [ ! -e "$PLEX_MEDIA_SERVER_CONFIG_DIR/Preferences.xml" ];
|
|
then
|
|
# Create a default config file allowing external access
|
|
echo -e '<?xml version="1.0" encoding="utf-8"?>\n<Preferences disableRemoteSecurity="1" />' \
|
|
>> "$PLEX_MEDIA_SERVER_CONFIG_DIR/Preferences.xml"
|
|
fi
|
|
|
|
export LD_LIBRARY_PATH="${PLEX_MEDIA_SERVER_HOME}:$LD_LIBRARY_PATH"
|
|
export TMPDIR="${PLEX_MEDIA_SERVER_TMPDIR}"
|
|
|
|
# Allow Plex group to write to tmpdir
|
|
chgrp $SGID "$TMPDIR"
|
|
chmod g+rwx "$TMPDIR"
|
|
|
|
PIDFILE="${PLEX_MEDIA_SERVER_CONFIG_DIR}/plexmediaserver.pid"
|
|
if [ -f "$PIDFILE" ]; then
|
|
rm -f "$PIDFILE"
|
|
fi
|
|
|
|
tail -F "$PLEX_MEDIA_SERVER_CONFIG_DIR/Logs/Plex Media Server.log" >/proc/1/fd/1 2>/dev/null &
|
|
|
|
exec su-exec -e "$PLEX_MEDIA_SERVER_HOME/Plex Media Server"
|