RaspberryPi – rPiDownloader Part 3 – Configuring SABnzbd, Sick Beard and Couch Potato to work together

This is part three of a series showing how to get a Raspberry Pi working as a great little unified downloader-appliance. The aim is to get a system that will provide an easy way of monitoring a collection of TV series for new or old episodes using Sick Beard, grab new movies using Couch Potato, and download them all seamlessly using SABnzbd. The end-result will be a completely web-based easy-to-use appliance!

In this third part, we’ll be configuring SABnzbd, Sick Beard and Couch Potato to work together…

Storage

We need somewhere to save all the downloaded stuff. At the moment each of the apps will store it’s data in it’s own folder under /var/appname, but we’re going to change that. The main reason for changing it is to make it easier to redirect that storage to either an external hard-drive, or a network location, or whatever.

I’m using a USB thumb-drive for now, although a sizable external HDD might be more suitable, but then you’ll have to use a separate power supply for it too…

We’ll mount the drive to /var/multimedia, then create some folders for the various types of data.

sudo mkdir -p /var/multimedia/
sudo mount -t vfat -o uid=pi,gid=pi /dev/sda1 /var/multimedia/

Then add the following line to /etc/fstab using `sudo nano /etc/fstab`:

/dev/sda1 /var/multimedia vfat users,umask=1000,rw,auto 0 0

Now create the extra directories we’ll need:

sudo mkdir -p /var/multimedia/films
sudo mkdir -p /var/multimedia/tv
sudo mkdir -p /var/multimedia/incoming/sabnzbd/incomplete
sudo mkdir -p /var/multimedia/incoming/sabnzbd/complete
sudo mkdir -p /var/multimedia/incoming/sabnzbd/complete_tv 
sudo mkdir -p /var/multimedia/incoming/sabnzbd/complete_films
sudo mkdir -p /var/multimedia/incoming/sickbeard
sudo mkdir -p /var/multimedia/incoming/couchpotato

Configure SABnzbd

Connect to your SABnzbd (http://172.29.14.110:8080) and set the following options:

  • General/Host = 0.0.0.0
  • Folders/Temporary Download Folder = /var/multimedia/incoming/sabnzbd/incomplete

Configure Sick Beard

Connect to your Sick Beard (http://172.29.14.110:8081) and set the following options:

  • General/Misc/Launch Browser = off
  • Search Settings/NZB Search/Method = SABnzbd
  • Search Settings/NZB Search/Host = http://localhost:8080
  • Search Settings/NZB Search/API Key = Your SABnzbd api key, from the general config page
  • Search Settings/NZB Search/Category = tv
  • Search Providers = add your index server(s)
  • Post Processing/Keep Original Files = off
The first time we add a series to Sick Beard, we should set the following default options:
  • Parent Folder = /var/multimedia/t

Configure Couch Potato

Connect to your Couch Potato (http://172.29.14.110:5050) and set the following options:

  • SABnzbd = enabled
  • SABnzbd/api key = Your SABnzbd api key, from the general config page
  • SABnzbd/category = films
  • Add your index server(s)
  • Rename = yes
  • Rename/From = /var/multimedia/incoming/sabnzbd/complete_films/
  • Rename/To = /var/multimedia/films
  • Rename/Cleanup = yes
That should be it. The apps should all be integrated now.
Leave a comment ?

54 Comments.

  1. Hey Mark i’ve been using this tutorial and it is awesome, thanks :) I have a problem with using SickBeard though. Whenever I try to add a show it comes back with an error message Unable to create the folder /var/multimedia/tv/Futurama, can't add the show. The permissions on the folders are as follows:
    drwxrwxr-x 5 root nzb 4096 Aug 16 21:32 multimedia
    drwxrwxr-x 2 root nzb 4096 Aug 16 21:31 films
    drwxrwxr-x 5 root nzb 4096 Aug 16 21:32 incoming
    drwxrwxr-x 2 root nzb 4096 Aug 16 21:32 tv

    any ideas what might be wrong? cheers.

    • If I’m understanding the tutorial correctly (it looks like this section is incomplete), it looks as though the individual program users weren’t added to the ‘nzb’ group. This can be remedied as follows:

      sudo usermod -a -G nzb sickbeard

      I suspect you’d have to do the same thing for couchpotato as well, but I haven’t gotten that far.

      • Great work Mark nice how to, now if anyone needs a great indexer to locate those NZB’s head over to OZnzb.com awesome amount of content and some great custom features like our user based release rating system, helps to weed out and crap and passworded releases

    • im having the same issue with sickbeard. couchpotato is working correctly.

      Did you manage to solve this?

    • sudo usermod -a -G nzb sickbeard

      and reboot did not help, any further advise?

      • Same problem guys, any fix. “Unable to create the folder /var/multimedia/t/The Walking Dead, can’t add the show”?

        Help.

  2. What about instead of using vfat for your external storage, use ext4. That was you will be able to get files larger than 4GB.

    • Martijn Harmenzon

      How to do this?

      • Hi Martijn,
        I use Gparted to set up partitions, formatting etc.
        It should be possible to install Gparted onto your Pi and use that if it is running a desktop or install it on another Linux machine.

        Alternatively:
        I don’t know what OS you have available – I only know about Linux. However, you can download a Linux distribution called ‘Parted Magic’. It has Gparted on it.Download the iso file and burn it to a disk AS AN IMAGE (don’t just copy the file to a disk).Then you should be able to run the disk as a live disk without installing it to anything. You can read about the distro here:
        http://tinyurl.com/3dvkea
        or go to download at their web site:
        http://partedmagic.com/doku.php?id=downloads

        Alternatively you can do an image of just Gparted – never tried it:
        http://gparted.sourceforge.net/download.php

  3. I also get this error – looks like you need to rename the file as part of the setup:

    Loading config from /usr/local/sickbeard/autoProcessTV/autoProcessTV.cfg

    ERROR: You need an autoProcessTV.cfg file – did you rename and edit the .sample?

  4. i cant seem to get it to allow me to save the folder paths in sabnzbd. Any ideas ?

    • Try tailing your sabnzbd log while trying to save the folder path, e.g., sudo tail -f /var/sabnzbd/logs/sabnzbd.log

      I noticed that when there’s a problem accessing the “Temporary Download Folder”, sabnzbd just resets it to “Downloads/incomplete”.

      Also, if you’re mounting a samba share for your download directories, make sure you mount them as cifs and with r+w permissions in /etc/fstab:
      //192.168.1.134/RaspberryPiShare /var/multimedia cifs credentials=/home/pi/smbpw/ryan-pc,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0

      In addition, I had to do this to get my samba share to work: http://jlcoady.net/windows/how-to-resolve-mount-error12-cannot-allocate-memory-windows-share

      • Hi Ryan,

        Thanks for the help. It seems to be a problem with the temporary folder i think the permissions might be set wrong
        however each time i try to change the folder permissions it comes up with operation not permitted.

        As the drive mounted is vfat i dont think you can change the permissions anyway.

        Any ideas ?

        • Hmm, you should be able to set the permissions with sudo chmod. If for some reason you still can’t set the permissions, you might try setting the root password with “sudo passwd root”, then do su, login as root, and change your folder permissions. Maybe this is a little obvious, but it worked for me (and took me a little while to discover, myself). =D

          • :( tried this, still the same problem if i try to change the user it says operation not permitted.

            If i try to change the permissions it allows it but doesnt fix anything

          • :( tried this, still the same problem if i try to change the user it says operation not permitted.

            If i try to change the permissions it allows it but doesnt fix anything

            I dont understand the problem as i have followed the tut word for word and this is the only problem im having.

          • Brad, is anything logged to your sabnzbd.log when you try saving the folder path?

          • I seem to be having the same issue as Brad. Here is what the logged spits out every time I try to save the settings “2012-10-19 15:34:39,919::ERROR::[misc:370] download_dir directory: /var/multimedia/incoming/sabnzbd/incomplete error accessing”

          • I had thje same problem which I solved by using sudo chown -R sabnzbd:nzb /var/multimedia/

  5. Little confused by the SABnzbd config, but perhaps I’m misreading.

    You say, “add three as follows”, but your list only contains the two – “films” and “tv”, right?

    Also, I see 5 columns on the SABnzbd category config page (in order): Category, Priority, Processing, Folder/Path, and Indexer/Tags.

    So, presumably for the “tv” category, I should set:

    Category = “tv”
    Priority = “Default”
    Processing = “Default”
    Folder/Path = “/var/multimedia/incoming/sabnzbd/complete_tv”

    and where do I reference the python script, “sabToSickBeard.py”?

    • Nevermind the above – the “script” column just appeared after I fixed a few issues with the mounting of my network share.

  6. Anybody else have bad performance issues with this ? RPI keeps crashing and usually i have to wipe the SD card and start from scratch. :( Maybe need to find a more powerful solution, anybody got any ideas ?

  7. For me it worked to change the owner of the folder /var/multimedia/tv to sickbeard:nzb

    Should make sense for the films folder and couchpotato as well

    • Martijn Harmenzon

      I am also failing to add a tv show to sickbeard.

      “Unable to create the folder /var/multimedia/tv/tv_show_name, can’t add the show.”

      Can anyone please tell me how to resolve this?
      For example, what is the command to change the owner of a folder?

      • I resolved this error like this:

        sudo chown -R sickbeard:nzb /var/multimedia/

        Not sure if this is the right way to do it, but it seems to be working; I can add TV-shows now.

  8. Hi,
    will it work with raspbmc instead of raspbian?!

    thanks

  9. Great guide! I’ve got both SAB and Sickbeard working perfectly. Couchpotato however can’t access my shared drive.

    It’s a SMB share, mounted using CIFS (fstab: //192.168.1.125/Media /var/multimedia cifs 0 0). Like I said, no problem with SAB/Sickbeard/CLI reading/writing to this location, but when I browse to ‘/var/multimedia’ using the Couchpotato UI it just tells me it’s an empty folder. A quick Google brings up nothing…is my fstab line ok? No authentication needed on the drive.

  10. Martijn Harmenzon

    anyone solved this problem?

    download_dir directory: /var/multimedia/incoming/sabnzbd/incomplete error accessing

  11. Would be great to see a new blog post with your thoughts after using for a couple of months. Is it still working ok? I’ve been thinking of setting up an unraid server for my files but then have a pi on the network doing the downloading.

  12. The downloads all work fine except when it comes time to move the files to the final directories it doesn’t work. Has anyone got this fully working with both SB and CP?

    • I’m also having a similar problem. This used to work fine but I’ve recently upgraded my NAS drive and now sickbeard keeps giving me errors about not being able to MOVE the file. The final video file does actually get copied into the destination folder, but the original (in sabnzbd/complete_tv) doesn’t get deleted. I also can’t delete these files manually (for some reason I only have read access – why would sabnzbd create folders that are read only?)

      • Right, I SSH’d into my Pi and changed the permissions for the contents of the ‘complete_tv’ folder (sudo chmod -R 0777 var/multimedia/incoming) which allowed me to remove the temporary downloads.

        Then, load up the sabnzbd web UI and go to Config -> Folders. Here, set the ‘Permissions for completed downloads’ to 777.

        Give this a go JMC. It might be that the files are copying but not being moved. Have you checked the destination folder just to check if the files are there (ie, var/multimedia/tv/family guy/season 11 for example)?

  13. I’m not sure if it’s up here but I couldn’t find it.

    To mount a nas share with proper credentials you need to assign the mount to your sabnzbd user.

    In fstab.
    //192.168.44.100/share /path_to/mount cifs username=server_user,password=secret,_netdev,uid=sabnzbd 0 0

    Additionaly you can assign a user group to the mount as well.

    Source: http://opensuse.swerdna.org/susesambacifs.html

    • Thank you for this!

      • Actually figured out a way to give to filesystem access to the share instead of assigning users.

        //nas/share /var/multimedia cifs username=username,password=password,rw,nounix,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0

        This way it works with sabnzbd sickbeard and couchpotato straight away!

  14. Loving this!! And nearly got it working too :-)

    Has anyone got xbmc to update it’s library (tv or movies) after a successful download?
    Cheers (& Happy Christmas!)

  15. can’t seem to mount my usb-drive

    • @raspberrypi ~ $ sudo mount -t vfat -o uid=pi,gid=pi /dev/sda1 /var/multimedia/
      mount: wrong fs type, bad option, bad superblock on /dev/sda1,
      missing codepage or helper program, or other error
      In some cases useful info is found in syslog – try
      dmesg | tail or so

  16. i’ve got the same problem

  17. The ‘-o uid=pi,gid=pi’ part of the mount does not work. I mounted the drive first and set the permissions later.

  18. Hi at all,

    i have run through the tutorial and i have additionally added all created users to nzb group.

    when i mount my SAMBA Share via

    //ip/share /var/multimedia auto,user=uname,passwd,=pass,iocharset=utf8,uid

    files all belong to pi:pi

    this issues that sabnzbd cant change the permissions on files in /var/multimedia

    i have tried adding sabnzbd to group pi but that does not change the things a bit.

    i wonder why? do you (whos reading this at the moment) have an idea?

    i have also tried to su and then chown -R :nzb /var/multimedia

    but a call to ls -al shows there has been no change…

    im outta ideas..

  19. Wow, great work. Someone should make an image of this and share it! A torrent mayby.

  20. Awesome tutorial! This is just what I was looking for! Thank you so much. I will be ordering my Pi soon and i can’t wait to get started!

  21. I get some errors in SABnzbd and SickBeard :sad:


    SABnzbd:
    Failed to start web-interface : Port 6060 not bound on ’192.168.2.30′


    SickBeard:
    Unable to start web server, is something else running on port 8081?

  22. Hi,

    I followed all the steps (except creating new maps on my external hdd, as I already had these) and installed sab and sickbeard properly. However, when I want to add a show on sickbeard and want to select my external hdd as directory it won’t stop ‘loading’. i.e.: I can’t seem to enter my external hard disk. Sickbeard won’t give some kind of error message. I’m running raspbmc, in case this might be of any relevance.
    I hope one of you guys can help me out!

    Jasper

  23. Solved it, by mounting the drive again and changing its permission!

    Now I encountered a new problem again. I changed General/Host to 0.0.0.0 as described in the manual, but now I can’t enter sabnzbd from another computer in my network anymore. This is kind of essential, since I am running raspbmc and thus have no desktop or browser installed. Is there any way of changing the host address again in terminal?

  24. Hey there I am so thrilled I found your web site, I really found you by error, while I was looking on Google for something else,
    Nonetheless I am here now and would just like to say kudos for a fantastic post and a all round
    enjoyable blog (I also love the theme/design), I don’t have time to
    go through it all at the minute but I have bookmarked it
    and also included your RSS feeds, so when I have time I will be back to read more, Please do keep up the great jo.

    Here is my webpage; 100 Percent Pure Coupon Codes; Daisy,

  25. I read 4 times
    Parent Folder = /var/multimedia/t
    and didn’t see wath was wrong, but I know there was.
    it need to be
    Parent Folder = /var/multimedia/tv is beter

  26. I managed to get sabnzbd working by using the mount command, instead of fstab.
    mount -t cifs -o user=user,password=pass,rw,file_mode=0777,dir_mode=0777 “//192.168.1.X/sharename)” /mnt/sharename

  27. And then adding them in /etc/rc.local using sudo nano /etc/rc.local

Leave a Comment


NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>