Here's what you'll need
- Pi connected on the same network as you
- SSH client software (Putty, or through the linux command line)
- Usenet (newsgroup) provider (I use and recommend NewsDemon)
- Raspbian (or similar image running on your Pi)
- External USB Harddrive, thumbdrive, or Network Storage
Raspbian running on your Pi
You'll first need to have the Raspbian image running on your Raspberry Pi. You can follow my tutorials on setting up the SD Card (Windows) or (Linux) and then proceed to the initial setup to get your Pi running on your network in this guide: Raspberry Pi setup without a Monitor.
Download and Install Sabnzbd
Once your pi is up and running on your network, we'll do some basic setup, download the required applications, and install Sabnzbd.
SSH into your pi using putty or the linux command line
- Change the hostname on your pi (Optional)
I like to change the default hostname from raspberrypi to something a bit more desciptive, especially when I have multiple units connected onto my network.
sudo nano /etc/hostname
edit this file to change the hostname from raspberrypi to something else. (I chose tvpi as my hostname for my example). Ctrl+x
and y
to save the new file.
- Download and install Sabnzbd
If you're running Raspbian, Sabnzbd is located in the debian repository, makes things simple...
sudo apt-get update && sudo apt-get install sabnzbdplus
Once this is downloaded and installed you can check to make sure it is running
sudo service sabnzbdplus status
● sabnzbdplus.service - LSB: SABnzbd+ binary newsgrabber
Loaded: loaded (/etc/init.d/sabnzbdplus)
Active: active (exited) since Mon 2016-01-25 13:46:06 CST; 38s ago
Jan 25 13:46:06 tvpi sabnzbdplus[1686]: SABnzbd+ binary newsgrabber: service....
Jan 25 13:46:06 tvpi systemd[1]: Started LSB: SABnzbd+ binary newsgrabber.
Hint: Some lines were ellipsized, use -l to show in full.
We'll now need to edit the default configuration file to allow web access
First we'll make a copy of the orginal file (in case of any mistakes down the road)
sudo cp /etc/default/sabnzbdplus /etc/default/sabnzbdplus.old
Now we edit /etc/default/sabnzbdplus to our needs (Ctrl+x
and y
to save the new file after your edits.)
sudo nano /etc/default/sabnzbdplus
Here is the default /etc/default/sabnzbdplus file, with my changes highlighted
# This file is sourced by /etc/init.d/sabnzbdplus
#
# When SABnzbd+ is started using the init script, the
# --daemon option is always used, and the program is
# started under the account of $USER, as set below.
#
# Each setting is marked either "required" or "optional";
# leaving any required setting unconfigured will cause
# the service to not start.
# [required] user or uid of account to run the program as:
USER=pi
# [optional] full path to the configuration file of your choice;
# otherwise, the default location (in $USER's home
# directory) is used:
CONFIG=
# [optional] hostname/ip and port number to listen on:
HOST=0.0.0.0
PORT=9090
# [optional] extra command line options, if any:
EXTRAOPTS=
- USER= set this to your raspberry pi user name
- HOST= set this to 0.0.0.0 to allow access from anywhere on your network, set this to localhost if you only want local access (in our case we are running a headless pi setup so we require access from remote PC's on our network).
- PORT= set this to a network port above 1024 (I use 9090 as it's easy to remember)
Restart Sabnzbd to reload the config file that we edited
sudo service sabnzbdplus restart
We should now be able to access the Sabnzbd front end using your web browser and going to http://<your-pi-ip>:<port-you-selected>, in my example it's http://192.168.1.81:9090
Setup Wizard for Sabnzbd
Select your default language and select Start Wizard. On Step One in the setup wizard, you'll need to have your usenet provider information on hand (Host, Port, Username, Password, Allowable Connections). NewsDemon is the provider I recommend.
Step Two in the setup wizard allows you to password protect the Sabnzbd webgui. Being this is only accessible on my internal network, I leave this with the defaults as shown here.
Step Three I also leave as default, this is if you would like to integrate it with the external NZB site oznzb
Once you click Next, Sabnzbd will restart and load a page showing you the web addresses you can now access the Sabnzbd web front end (ie; http://<your-pi-ip>:<port>/, in my example it's http://tvpi:9090/)
Configure Sabnzbd
You should now see this screen once have completed the setup wizard and you navigate to your ip and port of the installation (In my example it's http://tvpi:9090/)
- Install Unrar
You'll need an unrar utility and currently there is not a good one in the Raspbian repository. You can compile it or install it from a source I found.
wget http://sourceforge.net/projects/bananapi/files/unrar_5.2.6-1.arm6_armhf.deb
and install it
sudo dpkg -i unrar_5.2.6-1.arm6_armhf.deb
- Configure external storage
You will need some sort of external storage. I am using a network public share but you can easily use a USB external drive. The instructions below is what I did to use my network drive. If you plan on using a USB external drive, you will have to set that up a little dirrent than what is shown in this section.
Create a mount point for the external drive
sudo mkdir /mnt/Video2
Some older Raspbian images may not include cifs, to install it
sudo apt-get install cifs-utils
Edit /etc/fstab to mount the drive on boot (Ctrl+x
and y
to save the file)
sudo nano /etc/fstab
and include this line after the last line currently in your fstab file
//sambapi/Video2 /mnt/Video2 cifs guest,uid=1000,gid=1000,iocharset=utf8 0 0
- //sambapi/Video2: is your network share (change accordingly to match your specifics)
- /mnt/Video2: is the mount point on the local system (change accordingly)
- cifs: tells how to mount
- guest: states it is a public share (no username/password is required)
- uid=1000,gid=1000: indicates to mount using this user's permisions (in our case our username pi = 1000)
- iocharset=utf8: allows non-English characters in filenames
Test that the drive mounts
sudo mount -a
and check the permissions of the mounted drive
ls -la /mnt/Video2/
* If mounting a network drive, I found the need to use the wait for network boot option in raspi-config setup.
- Configure Sabnzb to use external drive for the downloads
Click on Config (upper left hand corner of the Sabnzbd web interface)
Click on Folders and edit the following fields:
Temporary Download Folder
Completed Download Folder
Then click Save Changes and Restart Sabnzbd. After reboot, Sabnzbd should have made the new directories in the locations you provided.
- Speedup Sabnzb on your Raspberry Pi
I'm using the orignal Raspberry Pi B+ (single core processor, 512M) and downloads can be slow. These are a few tweaks I did to improve my download speeds and some other general settings to improve the usage. These settings are ones different than from the default configuration.
In Sabnzbd Config:
- Set Config > General > Article Cache Limit to 128M
- Add Config > General > Tuning > Cleanup List: .nfo, .sfv, .srr
- Config > Switches > Queue: Check Pause Downloading During Post-Processing
- Config > Switches > Queue: Check Check before download
- Config > Switches > Queue: Check Only Get Articles for Top of Queue
- Config > Servers: Limit your Server Connections to 10
On Raspberry Pi:
- raspi-config > Advanced Options > Memory Split: set to 16
Part 1 | Part 2 - Installing SickRage