Setting Up SABnzbd, SickBeard, and CouchPotato

From unRAID
Jump to: navigation, search

Background

Probably the most common use of unRAID servers is managing a home media collection. These 3 pieces of software automate the downloading and organizing of media on your server... yes it is awesome. Combine these with a media player like Plex or XBMC and you will have an media system that is the envy of all your friends. I have written this guide based on a long string of emails helping someone else get them set up, so I hope it's useful. This guide is based on using Usenet News Group servers (that you need to pay for), not torrents. From personal experience, I can advice you torrents just don't work as well. Newsgroups will get you more consistent quality and download reliabilty - and in practice, depending on how much you use them, a newgroup set up with a moderate movie and TV show collection is only going to cost you $50 or $60 a year. Torrents are just not worth the hassel in my mind, but if you want to use torrents, you'll need to use Transmission or uTorrent for downloading and that is not covered by this guide. If you don't know what the linux terms are, please see my Introduction to the linux shell page.

Conventions

I'm going to use the following conventions here - so you know what I mean:

  • SB - sickbeard - the TV show management software
  • CP - couchpotatp - the movie management software
  • SAB - sabnzbd - the news group downloading software
  • unRAID GUI or web UI - the unRAID web page located at http://tower or what ever your server is named

You'll Need

  • a few hours of your time
  • an unRAID server with version 5.0rc1 or higher - I'd recommend the newest
  • an account on a news group server (google around and find one you like that has the right data package for you)
  • an account on a new indexing site (again, google around, but these are considerably harder to find now because of DMCA takedown enforcement)
  • some patience
  • a big cup of coffee/case of beer

Overview

Here's what we're going to accomplish:

  • install the plugins for SAB, SB and CP
  • create a folder for your apps to run out of that's not on your array
  • set up SB and CP to pass download requests to your SAB install
  • set up SB and CP to move completed downloads to a media share on your array
  • make your wife/girlfriend/dog happy to watch downloaded TV shows

Guide

1. Creating a place for your applications to live

Applications are installed in to the /usr/local folder on linux, and that folder is on the RAM drive and won't survive a reboot. So unRAID applications are re-installed on each boot, however, we don't want to have to reconfigure them each time the server is booted, so we need a place on a disk for data directories. I would advise you NOT to use your flash drive for this. The increased read and write load will shorten the life of your flash drive (by a lot - just don't do it). It also isn't a good idea to store the app data on an array disk. The applications will keep your array drives spinning all the time, and wear then unnecessarily - again.. just don't do it.

There are 2 common solutions:

  1. put a folder on your cache drive that is dedicated for this purpose
  2. install a dedicated app drive (an old 40 gig HDD is lots) - this can be done using the SNAP plugin

If you have an SSD cache drive, I'd use option 2, but I'm going to continue this tutorial assuming we are using a cache drive folder.

Create a folder on your cache drive that will not be copied to the array

On the web GUI, create a share that is cache only:

  1. Go to Shares and click Add Share
  2. call it "appdata" and set the Use cache disk to "Only"
  3. Click "Add Share"

We have now created /mnt/cache/appdata that will survive reboots and won't be copied to our array.

Creating a User Share for Media

If you already have a user share created with media on it, skip this step. If not, follow these steps to create a user share on your array for Media to be stored on.

  1. in the Web UI, click on Shares.
  2. Click Add Share and enter the following info:
    • Name: Media
    • Comment: Media Library User Share
    • Allocation Method: - read the wiki page on this if you like, I use high-water
    • Split level: 2 - that will keep all of a given tv show on one hard drive.. makes it easier to find things.
    • Include/Excluded Disks: here you can specify which disks unraid will or won't use for a share. If you don't care, leave these blank. If you want to use certain drives for media, and certain drives for other stuff, fill out one of these fields. Just remember, this is going to be a large share after a few months, so make sure you're not limiting to much.
  3. Click Apply.

You now have a user share that will span multiple disks (the ones you listed in "included disks" or all disks if you didn't specify). This folder will be available on your network for your media players to access at \\tower\Media, and on telnet as /mnt/user/Media. You don't need to worry about the actual disks powering it as that's what unRAID does for you.

Now let's test it out from your desktop. Browse to \\tower\Media and create a new folder for "TV Shows" and one for "Movies"

If you have TV Shows already downloaded, you can put them in the TV Shows folder on your share now.. just make sure they are named well.. If not, we can use SickBeard to process them for us later.

  • "The Simpsons/The Simpsons - S04E13 - Selma's Choice.avi" is good - put them on your server
  • "THE_SIMPSONS_SEASON_4/13_Selmas_Choise.avi" is not - hold off until the end

Each file must have the show name, and S##E## in the file name.

Same for movies.. if they are named well, great, if not, we'll let CouchPotato rename them for us.

  • "Quantum of Solace (2008)/Quantum_of_Solace.mkv" or "Quantum of Solace (2008).mkv" - both are fine.
  • "James_Bond_007_-_Quantum_Of_Solace_BluRay_1080p_DTS_x264.mkv" is not.

Each movie must be in a folder with the Movie name and year or the file name must have the movie name and year in it.

2. Installing plugins

For information on each of the plugins, check the [UnRAID_Plugins plugin directory]. Each plugin is written and maintained by community members, so there is usually a thread on the forum for supporting them. There have been several plugins written for our applications, but I am going to install the influencer versions. Influencer is a member of the unRAID community who has take a great deal of his time to bring other peoples plugins up to a stable, common standard. You'll see both the original and influencer versions are listed in the plugin directory.

Influencer's plugins are all stored on github, and we need the direct link so we can download them with wget. To get this we go to his github page, select the plugin we want (sabnzbd_unplugged.plg for example), and then copy the "Raw" link in the upper right. You would get the following.

You'll notice that github uses https, which wget doesn't like, so we need to add the --no-check-certificate flag to our wget commands. So let's install these into the /boot/config/plugins folder.

  1. Telnet into your server.
  2. Create a plugins folder on your flash drive - this will be used to store the plg files. "mkdir /boot/config/plugins"
  3. change to the new directory "cd /boot/config/plugins"
  4. "wget --no-check-certificate https://github.com/Influencer/UNplugged/raw/master/sabnzbd_unplugged.plg"
  5. "wget --no-check-certificate https://github.com/Influencer/UNplugged/raw/master/sickbeard_unplugged.plg"
  6. "wget --no-check-certificate https://github.com/Influencer/UNplugged/raw/master/couchpotato_v2_unplugged.plg"

Each of the wget commands will download the plugin. They are now ready to go next time you reboot your server, however, we want to run them now so we can configure them. For this we use the installplg command:

  1. "installplg sabnzbd_unplugged.plg"
  2. "installplg sickbeard_unplugged.plg"
  3. "installplg couchpotato_v2_unplugged.plg"

Now let's go to the web GUI and set up our newly installed plugins. Go to the "Settings" tab, and you'll see we have a new "UnPlugged" section down at the bottom. For each of the applications we need to set them to Enabled and set the Data Directory so they know to use our special folder.

I'll let you figure out the web pages, but the important thing here is to check the Data directory box and the each corresponding directory.

  • SAB - /mnt/cache/appdata/sabnzbd
  • SB - /mnt/cache/appdata/sickbeard
  • CP - /mnt/cache/appdata/couchpotato

Click apply on each.

3. Testing applications

Now we are going to make sure each application is going to start automatically and maintain it's configuration we just set. To do that we'll reboot your server: Go to "Main", and stop your array, then you'll get the option to reboot.

After the system comes back up (it make take a fair bit longer to boot as each app checks for a new version and installs itself), go to the Settings tab and click on SABnzbd. It should say it's RUNNING. Click on RUNNING and you'll get the SAB interface in a new browser tab - the set up and configure wizard. If you do, close it out and do the same for SB and CP.

Congratulations, you have just installed your first plugins. Go grab a fresh beer/cup of coffee and we'll configure them all now.

4. Configuring

I was starting to do this with lots of screenshots to make it nice and easy, but I realized that each of these 3 applications are under constant development and their options change titles, and move around enough that out-of-date screenshots might be worse then none at all. I'll point you in the right direction, but you may need to click around the settings screens of each of these apps to find the exact thing I'm talking about. You'll find it.. don't worry :)

SABnzbd

This program is going to actually fetch the files that SB and CP find and download them to your server. We are going to set it up to keep each type of download (Movie or TV show) separate so SB can manage TV Shows and CP can manage Movies, and neither trample on the other.

  1. Open the SABnzbd webpage by going to the SAB settings page on your unRAID gui and clicking on RUNNING.
  2. Choose your language and click Start Wizard.
  3. Fill out your usenet server information, test the connection and click Next.
  4. Set up the SABnzbd access as you wish.. mine is open to my network (no changes). Next.
  5. FIll out your index site account info. Done.

SABnzbd will restart and you'll be brought to the main web page. Now you have the basics set up, we need to go set up some categories. We're also going to need to save a few things for setting up the other applications, so I'd suggesting opening a new Notepad or Text Edit document that you can paste a few things in, no need to save it, but just to hold some information for later. I'm going to call it your "NoteBook"

Click on Config and follow along:

  1. Under General, copt the API Key to your NoteBook.
  2. Under Folders, copy the "Completed Download Folder" path to your NoteBook, and set the Permissions for Completed Downloads to 777. Click Save Changes.
  3. Under Categories, we're going to add 2 categories for movies and tv shows. Put the following information into the bank row, and click Add.
    • movies, Default, Default, movies, -blank-
    • tv, High Default, tv, -blank- This will set your tv shows to go to the top of the queue when they are added.
  4. Under sorting, enable Movie sorting. Select the movies category to be affected. Check the "Keep loose downloads..." and click the "In folders" button to make SAB keep the movie downloads tidy. Click "Save Changes".

SABnzbd is now ready to go. It will now download TV Shows in one folder and movies to another. Copy both of these to your NoteBook as well.

  • TV Shows: /mnt/cache/appdata/sabnzbd/Downloads/complete/tv
  • Movies: /mnt/cahce/appdata/sabnzbd/Downloads/complete/movies

SickBeard

SB needs to be set up to mange your existing TV Shows, search for new ones and pass its download needs to SABnzbd.

  1. Open the SickBeard webpage by going to the SB settings page on your unRAID gui and clicking on RUNNING.
  2. Under Config choose Search Settings.
  3. Check "Search NZBs" and choose the Method: SABnzbd and Enter the following info:
    • SABnzbd URL: http://localhost:8080 - if you have changed the SABnzbd port, use that number at the end.
    • SABnzbd Username and Password: leave both blank
    • SABnzbd API Key: paste in the API key from your NoteBook.
    • SABnzbd Category: tv
  4. Click Test, and Save Changes.
  5. Under Search Providers at the top, check your index site.
  6. Below, choose your index provider under "Configure Provider" and enter your account information. Click Save Changes
  7. Under Post Processing at the top, enter the following info:
    • TV Download Dir: - your TV download directory from your NoteBook - most likely: /mnt/cache/apps/sabnzbd/Downloads/complete/tv
    • Keep Origional Files - UNCHECK - this will make SB delete the raw downloads after it moved the TV shows to your array.
    • Scan and Process - CHECK - this will cause SB to move the shows to your array.
    • (many people will advise you to use the "SABtoSickBeard" script, but I have found this works very well)
  8. Click Save Changes.

Now you need to add your shows to Sickbeard so it knows what to download, and where the files are/should go. See the #Using the Applications.

Couch Potato

The set up is largely the same for CP as it is for SB, but the options are changing quite regularly with the CPv2 development. This will be filled in at a later date.

5. Using the applications

SickBeard

Now we're going to add a show to the system. Go to the SickBeard Web page and click "Add Show":

I have a TV show already on my array in a Media share (or some other name)

  1. Choose "Add Existing Show"
  2. Choose to add a New Directory and browse to: /mnt/user/Media/TV Shows
  3. It will display all your properly named shows at the bottom, so uncheck anything you don't want added and click Submit.

I don't have any TV shows on my array yet

  1. Choose "Add New Show" and search for the show you want. Ensure you pick the correct one from the search results and click Next.
  2. Add a new Parent Folder and browse to: /mnt/user/Media/TV Shows
  3. Click Add Show.

Sickbeard will process all your TV shows and start watching for new episodes. If you want to download old episodes, see the sick beard documentation for details. We have set up the following process:

  • SickBeard watches the index site for new episodes of your shows
  • When it finds one, it passes the NZB file to SABnzbd which downloads it to /mnt/cache/apps/sabnzbd/Downloads/complete/tv
  • SickBeard watches that folder, and when it finds new shows, it copies them to /mnt/user/Media/TV Shows and deletes the old copy

Processing existing TV shows

If you have poorly named media, you can get SickBeard to work it's magic to rename and file them on your Media share automatically.

  1. Add your show as if you don't have it on your array yet.
  2. Browse to \\tower\cache\apps\sabnzbd\Downloads\complete\tv
  3. Copy your TV shows from your desktop to that folder

Now remember from above, that SickBeard is watching this folder, so it will now process these files as if they are fresh downloads. :)

CouchPotato

- in progress -

Plex

- in progress -

--Whiteatom 14:36, 23 October 2012 (UTC)