Install Sonarr Ubuntu command line

Install Sonarr Ubuntu command line tutorial.

Update software.

sudo apt-get update && sudo apt-get upgrade -y

To make sure you get the latest Sonarr.

sudo apt-key adv –keyserver hkp://keyserver.ubuntu.com:80 –recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
echo “deb http://download.mono-project.com/repo/debian wheezy main” | sudo tee /etc/apt/sources.list.d/mono-xamarin.list

Make https possible.

sudo apt-get install apt-transport-https -y

Add Sonarr installation source.

sudo apt-key adv –keyserver keyserver.ubuntu.com –recv-keys FDA5DFFC
echo “deb https://apt.sonarr.tv/ master main” | sudo tee -a /etc/apt/sources.list.d/sonarr.list

Install Sonarr.

sudo apt-get update
sudo apt-get install nzbdrone -y

Map rights.

sudo chown -R jegebruikersnaam /opt/NzbDrone

You are now done with the installation of Sonarr.

Auto start Sonarr Ubuntu

We are going to make a boot script for Sonarr.

Make script file.

sudo nano /etc/init.d/nzbdrone

Copy and paste. Change UserName to your own Username.

APP_PATH=/opt/NzbDrone

# UserName
RUN_AS=UserName

# path to mono bin
DAEMON=$(which mono)

# Locatie om PID file op te slaan.
PID_FILE=/var/run/nzbdrone/nzbdrone.pid
PID_PATH=$(dirname $PID_FILE)

# script name
NAME=nzbdrone

# app name
DESC=NzbDrone

# opstarts args
EXENAME=”NzbDrone.exe”
DAEMON_OPTS=” “$EXENAME

############### einde bewerk mij ##################

NZBDRONE_PID=`ps auxf | grep NzbDrone.exe | grep -v grep | awk ‘{print $2}’`

test -x $DAEMON || exit 0

set -e

#Look for PID and create if doesn’t exist
if [ ! -d $PID_PATH ]; then
mkdir -p $PID_PATH
chown $RUN_AS $PID_PATH
fi

if [ ! -d $DATA_DIR ]; then
mkdir -p $DATA_DIR
chown $RUN_AS $DATA_DIR
fi

if [ -e $PID_FILE ]; then
PID=`cat $PID_FILE`
if ! kill -0 $PID > /dev/null 2>&1; then
echo “Removing stale $PID_FILE”
rm $PID_FILE
fi
fi

echo $NZBDRONE_PID > $PID_FILE

case “$1” in
start)
if [ -z “${NZBDRONE_PID}” ]; then
echo “Starting $DESC”
rm -rf $PID_PATH || return 1
install -d –mode=0755 -o $RUN_AS $PID_PATH || return 1
start-stop-daemon -d $APP_PATH -c $RUN_AS –start –background –pidfile $PID_FILE –exec $DAEMON — $DAEMON_OPTS
else
echo “NzbDrone already running.”
fi
;;
stop)
echo “Stopping $DESC”
echo $NZBDRONE_PID > $PID_FILE
start-stop-daemon –stop –pidfile $PID_FILE –retry 15
;;

restart|force-reload)
echo “Restarting $DESC”
start-stop-daemon –stop –pidfile $PID_FILE –retry 15
start-stop-daemon -d $APP_PATH -c $RUN_AS –start –background –pidfile $PID_FILE –exec $DAEMON — $DAEMON_OPTS
;;
status)
# Use LSB function library if it exists
if [ -f /lib/lsb/init-functions ]; then
. /lib/lsb/init-functions
if [ -e $PID_FILE ]; then
status_of_proc -p $PID_FILE “$DAEMON” “$NAME” && exit 0 || exit $?
else
log_daemon_msg “$NAME is not running”
exit 3
fi

else
# Use basic functions
if [ -e $PID_FILE ]; then
PID=`cat $PID_FILE`
if kill -0 $PID > /dev/null 2>&1; then
echo ” * $NAME is running”
exit 0
fi
else
echo ” * $NAME is not running”
exit 3
fi
fi
;;
*)
N=/etc/init.d/$NAME
echo “Usage: $N {start|stop|restart|force-reload|status}” >&2
exit 1
;;
esac

exit 0

Save file Ctrl+ X and y to confirm.

Set rights for script.

sudo chmod +x /etc/init.d/nzbdrone

Add script to boot.

sudo update-rc.d nzbdrone defaults

You are now done.

You can test it if you do a reboot.

sudo reboot

Share This

Leave a Reply