What is SABnzbd?
SABnzbd is a multi-platform binary newsgroup downloader.
The program works in the background and simplifies the downloading verifying and extracting of files from Usenet.
SABnzbd uses NZB files (similar to .torrent files, but for Usenet), instead of browsing Usenet directly. NZBs can be acquired from a variety of usenet indexing services.
SABnzbd's main interface is web-based, this means with a little bit of configuration you can easily check and add files from other PC's around the world or on other devices such as the iPhone.
Why should I use SABnzbd over other programs such as Grabit?
Grabit is great for manually downloading a few moderately sized posts, or for browsing newsgroups. Generally tasks that require a lot of direct interaction.
SABnzbd's goal is to be as automated as possible. Once configured, you should never really have to look directly at SABnzbd ever again, you just send it NZBs and files appear at the other end. Our full-featured API means that browser plugins like nzbdstatus and SABConnect seamlessly handle all the transferring of NZBs from the web to SABnzbd, and provide you with a method to check on your queue's progress.
You can even put SABnzbd on a lowly server and let it work night and day. It can even schedule, so that, for instance, you only download at night. Since it has a web interface, SABnzbd is built from the ground-up to be accessed remotely just as easily as it can be accessed locally, so it works great on little servers.
What do I need to get started with using SABnzbd?
A newsgroup provider and a source for .nzb files. See Getting Started
Which versions of Python are supported?
We currently support Python 2.5.x, Python 2.6.x and Python 2.7.x (recommended). Python 3.x is NOT supported.
Can SABnzbd run on NAS / Android / operating system XYZ / … ?
SABnzbd can run on an operating system that provides / runs:
- Python (2.5, 2.6 or 2.7) and
- the Python library Cheetah and
- optionally the Python library yEnc and
- par2 and unrar
The creators of SABnzbd provide the source code of SABnzbd, plus ready-to-install-and-run packages for Windows and Mac OS X.
Others provide (or don't provide) packages for other operating systems. If you want SABnzbd on another operating system, search for an existing package for that OS, or make it work yourself.
On top of the above, SABnzbd requires some amount of RAM: more is better, especially for high-speed Internet connections and/or big downloads. 256MB of RAM (or less) without swap space will cause problems and crashes.
As Python is not available on Android, SABnzbd cannot run on Android.
Beware of Firewalls and Virus scanners
These are useful but many are too eager to interfere with our software.
Firewalls are suspicious of Internet activity and surprise: SABnzbd does that.
For more info see: How do I survive my firewall and virus scanner?
I just upgraded from 0.4, where did my queue and history go?!!?
0.5 introduces a new queue / history format that is incompatible with 0.4. If you didn't finish your queue before installing 0.5, your queue has not been deleted. Just reinstall 0.4.12, finish your queue, and reinstall 0.5 when you're done. Your 0.5 queue should be compatible with future versions, so we shouldn't run into this again.
SABnzbd won't start!
This typically occurs because for some reason SABnzbd can't open port 8080, or whatever port you've set it to run on. Unfortunately, this could be caused by a wide variety of issues. Here are a few of them:
- Something else is running on the port. Either stop it, or have SABnzbd run on another port.
- Something is preventing SABnzbd from opening any port, like a firewall application, or antivirus, or something else that might be trying to "protect" you. Either whitelist SABnzbd or reconsider your antivirus software choice. (The very good and free Microsoft Security Essentials has no problem with SABnzbd)
- You lack the permissions to open the port you're trying. This tends to crop up on Linux systems, where ports under 1024 (like port 80) require root permissions to open.
A way to discover what's going on, is to open a 'terminal' or 'cmd'-box, go to the directory that contains the SABnzbd executable, and start that. On Windows, you should start "sabnzbd-consolese.exe". You should now see the output in the terminal/cmd-box.
Starting with SABnzbd 0.6.x, on Windows there's a "SABnzbd safe mode" which you should find in your Start menu; it can be useful to try that safe mode.
I'm using Opera! Why doesn't it work?
Opera sometimes has a different interpretation of localhost than SABnzbd has. Try http://[::1]:8080/sabnzbd or http://127.0.0.1:8080/sabnzbd, one of the two should work.
This happens because many operating systems have an ambiguous definition of localhost. They list both 127.0.0.1 and [::1] has IP addresses (IPv4 and IPv6 respectively), while these are in reality two independent addresses.
SABnzbd says "Out of your server's retention?". What does that mean?
This means the post you're trying to download is not available on the newsserver you're using. This might because the post is older than the your newsserver's retention time (number of days the post will stay on the newsserver, somewhere between 10 and 1000 days), or the specific post has been removed by the server's administrator1.
You can see the age of a post in the search engine (like binsearch) you use, and by hovering above the line containing the download while it's being downloaded.
Solution: find a 'younger' post, or find a newsprovider with a longer retention.
If you think it's SABnzbd's fault, you should try to download the same post with another program like Grabit (Windows) or nzbget (Linux) to see if that works.
SABnzbd shows a very slow download speed, with a extremely high ETA, but is progressing quite fast through the post, and then fails.
These are the symptoms of a post that's not available on your newsserver. Easy check: during the download, hover your mouse above the item; it will show a high number of missing articles.
SABnzbd is stuck repairing a file, how do I fix it?
SABnzbd processes files sequentially, so if Par2 stops working the rest of your downloaded files will get hung up. To fix this, open your operating system's task manager and manually kill the par2 process. The item it was working on will be marked as "failed", so you'll have to manually verify and unrar that job.
An NZB just failed post-processing, how do I re-process it?
At the moment there is no method to do this automatically in SABnzbd. However, the only time doing this should actually accomplish anything is if you had to kill a stalled Par2 or Unrar process. In all other cases, having SABnzbd try to re-try a download shouldn't do anything, since if SABnzbd failed it likely failed for a good reason. However, at a future date we may implement re-try post-processing as part of a broader post-processing queue rewrite.
An NZB died halfway through downloading. Do I really have to re-download all 600 gigs?
When you used a partial NZB or did not have enough par2 files, all is not lost.
A failed job will have an entry in History. If it's just a case of a full destination disk, click Retry.
If you now have a larger NZB with either more RAR files or just more PAR2 file, click Retry and enter the new NZB in the dialog.
SABnzbd will skip each files that has already been downloaded and then proceed to download the additional files.
Please note that SABnzbd cannot add missing articles to existing files.
What are CRC errors, and how do I fix them?
This means for some reason the files you downloaded ended up broken in a manner that could not be repaired. See this thread on our forums for more information.
Where are are my files?
|OSX / Linux||~/downloads/complete|
The settings are stored in an ini file away from the location of the main program. This allows for easy upgrading and full vista compatibility.
The default locations for the settings are:
|Windows XP/2003||%userprofile%\local data\application data\sabnzbd\sabnzbd.ini|
|Windows Vista or 7||%userprofile%\AppData\Local\sabnzbd\sabnzbd.ini|
|OSX||~/Library/Application Support/SABnzbd/sabnzbd.ini (Attention: this might be a hidden folder|
Note for windows users, you do not need to replace anything in those paths, just paste them into a folder location bar or the run menu (start>run)
Note for OSX users: Finder won't find the file sabnzbd.ini. Workaround: open a Terminal, and type:
cd ls -al Library/Application\ Support/SABnzbd/sabnzbd.ini
That should show the file sabnzbd.ini
If you are storing your settings in a different place, you can check the location by navigating to the Config page, or the Folders page within the config and the location will be displayed there.
The log files are stored in the same the base folder as the ini, but inside another folder called "logs".
|Windows XP/2003||%userprofile%\local settings\application data\sabnzbd\logs|
|Windows Vista or 7||%userprofile%\AppData\Local\sabnzbd\logs|
If you are storing your logs in a different place, you can check the location by navigating to the Folders page within the config and the location will be displayed there. You can also download your logging from your webbrowser by clicking "Download logging" on the connections page of sabnzbd.
SABnzbd is asking for a password and I didn't set one/forgotten the password, what do I do?
Shut down SABnzbd, find the file sabnzbd.ini and open it with an editor. Look for:
username = user password = pass
and change the lines to:
username = "" password = ""
Save the .ini and restart SABnzbd.
In Windows if you can't access the web-ui then open up the task manager (ctrl+alt+del) go to the processors tab, find sabnzbd.exe select it and click end process. Then launch sabnzbd.exe again.
In OSX / Linux simply kill the process and launch it again.
Error: (10049, "Can't assign requested address")
If you start up SABnzbd, and you get 'error: (10049, "Can't assign requested address")', you very likely entered the IP address of your system in Config -> General -> Host and now your router has assigned another address.
To set the host quickly on a Windows system: Open and CMD.EXE prompt (use Start menu) and type (including quotes):
"c:\program files (x86)\sabnzbd\sabnzbd-console.exe" --server 0.0.0.0:8080
Then press Enter
If you're using a 32-bit Windows system use:
"c:\program files\sabnzbd\sabnzbd-console.exe" --server 0.0.0.0:8080
sabnzbdplus --server 0.0.0.0:8080
or something like
./SABnzbd.py --server 0.0.0.0:8080
Technically the host is the first appearance of "host" in sabnzbd.ini:
$ cat ~/.sabnzbd/sabnzbd.ini | grep -m1 host host = 0.0.0.0
So, if you know what you're doing and SABnzbd is not running, you can edit that entry, and start SABnzbd again.
If I close my Internet browser does SABnzbd close too?
No, SABnzbd will continue to run in the background. Restart the browser to connect to SABnzbd again.
You can only stop SABznbd by using the shutdown function in the web-interface or by manually killing the process.
Why doesn't SABnzbd download all PARs for a post?
SABnzbd only downloads the PAR files it needs. It starts by downloading all normal files and the smallest par. If the files don't pass our QuickCheck function, we run a full par2 verification. Once SABnzbd determines how many files are broken or missing it will go back and intelligently download only however many pars it needs and repair.
How can I download a set of PAR files without activating auto-par2 mode?
Select None as your PostProcess option while importing your nzb file.
You will have to do your post-processing manually!
How do I upgrade SABnzbd to a new version?
It's simple! All your settings are stored away from the main sabnzbd folder, and will be kept between upgrades.
If you are moving between major versions (such as a 0.4 version to a 0.5 version) it is recommended that you finish your current queue. As major versions may create new queue files (your old queue file will still exist if you choose to go back to it and finish up downloading)
For Windows just run the installer and it will replace your old version!
For OSX / Linux just overwrite your current sabnzbd folder with the new files.
What does R/U/D or Repair/Unpack/Delete mean?
|Long Name||Short Name||Description|
|The blank option does nothing extra to the download files|
|+Repair||R||Verifies and repairs the downloaded files|
|+Unpack||U||Verifies and repairs the downloaded files
+Unpacks downloaded files
|+Delete||D||Verifies and repairs the downloaded files
+Unpacks downloaded files
+Deletes the left over rar files
How do I change my download folder to another drive?
Simply enter in the full path, such as D:\Downloads
A tip for OSX users, to save to an external drive, enter /Volumes/nameofdrive/Downloads
To save to a network share, make sure it has write access and enter \\NameOfPc\\Folder
You currently cannot use this for the incomplete folder in windows due to a par2 bug.
How do I run SABnzbd as a portable/self contained program?
Simply copy your sabnzbd.ini file (and the cache folder if you wish to keep your current queue/history) to your main sabnzbd folder. That is all, when SABnzbd starts up it first looks for the sabnzbd.ini in the same folder it is run from and uses those settings if available.
If you wish for a clean install, run sabnzbd.exe with the command line parameter "-f sabnzbd.ini" and a blank settings file will be created in your sabnzbd installation folder.
It is recommended you use relative paths for your incomplete and download folders to make sure SABnzbd will have write access. The default download dir setting is an example of a relative folder, just specify the name of the folder you wish to be created and not the path.
"My Internet connection is 20 Mbps, and SAB only downloads at 2MB/s"?
This is bits versus bytes: ISPs advertise in bits/sec, SABnzbd shows you bytes/sec.
Multiply SABnzbd's results by 8 or 10 to get bits/sec.
"Repair failed, not enough repair blocks (585 short) " … what does that mean?
If you get something like "Repair failed, not enough repair blocks (585 short)", there can be different causes:
- the post is not available (anymore) on the newsserver you use because the post is older than the newsserver retention
- the post is not available (anymore) on the newsserver you use because the post has been (partly) removed (possibly because of DMCA notices)
- the post itself has too little repair block (par files)
- the NZB you created did not include par files
- The post has an unusual naming convention and SABnzbd doesn't understand the relation between RAR files and PAR2 files. Manual repair is the only solution (Windows users can use QuickPar).
Things worth trying:
- use another or - better an addional newsserver
- find another post with the same contents
- check on binsearch.info to see the post was completely available there
"API Key incorrect, Use the api key from Config->General in your 3rd party program:" … what does that mean?
If you get "API Key incorrect, Use the api key from Config->General in your 3rd party program:" in your log file, it is probably caused by a program or by a browser plugin (for example SABconnect++) that is accessing SABnzbd's API interface without an API key or with an incorrect API key. This message is just a warning; you could ignore it if you want to.
To get rid of this message you have to find the program or browser plugin, and configure it with the correct API key.
After some time, SABnzbd is still running but its webinterface stops responding … what is going on?
If you can access SABnzbd's webinterface after a fresh startup, but you can't access it anymore after a while, it might be that too many connections are (half) open to SABnzbd's webinterface. This can be caused by tools or plugins accessing it. To check if this is the case, you can use the following commands (assuming SABnzbd is running on port 8080 and 9090):
netstat -apon | grep -e :8080 -e :9090
netstat -aon | find ":8080" netstat -aon | find ":9090"
If you get a few dozen or even hundreds of lines (and thus SAB sessions), you have found the problem.
Workaround: disable the plugins (or lower their polling frequency) and/or do not use HTTPS (it seems this problem occurs with HTTPS, and not HTTP).
Especially the combination of SABnzbd, SABconnect++ and HTTPS seems to trigger this problem.
"[Errno 111] Failed to connect: (110, 'timed out') -1 @news.example.com:119" when clicking on Test Server
You can test your connection to your newsserver by clicking on Test Server (in Config -> Servers). If the popup says "[Errno 111] Failed to connect: (110, 'timed out') moc.elpmaxe.swen|1-#moc.elpmaxe.swen|1-:119", SABnzbd cannot connect to the newserver you filled out. You should check two things: the correct name for the newsserver and the correct port (119 is the normal port).
If you're sure everything is filled out OK and you still get the error message, as a test you can fill out an additional newsserver. You can use news.astraweb.com or newsreader.eweka.nl. After filling out and Save Change, you can click on Test Server. If you get "[Errno 111] Failed to connect: (110, 'timed out') moc.bewartsa.swen|1-#moc.bewartsa.swen|1-:119" for this extra server too, the problem is local: possibly a firewall is blocking outgoing connections. So check your firewall. Or temporarily disable / deinstall your firewall. Then check again with Test Server.
NB: after your own server is working, disable the extra setting, or you will see warnings in your log file of SABnzbd still trying to access this server for which you have no account.
A download says "ENCRYPTED". What does that mean, and is there anything I can do?
"ENCRYPTED" means you're trying to download that has a password on it (on the rar files, to be precise). SABnzbd will detect this during the download and will stop the download.
Often the ENCRYPTED posts are useless, as they are only trying to lure you towards useless websites. In the end you will probably not get a password at all.
So, it is advised not to download these kind of posts.
Do I need port forwarding for SABnzbd usage?
For normal usage of SABnzbd, you don't need any port forwarding in your modem/router/NAT-device. Reasons:
- SABnzbd only uses outgoing connections for content downloading.
- You can access SABnzbd's webinterface from the PC it's running on, and from other device on your LAN.
You will only need port forwarding if you want to access SABnzbd's interface (Web or API) from a 'remote' device. 'Remote' means outside your LAN, or - more specifically - from the other side of your NAT-device.
Port forwarding can be a bit tricky. Here are some hints:
- Port forwarding is done in your NAT-device. How to do that depends on your specific NAT-device. The site http://portforward.com/ could be useful
- Port forwarding needs to know the internal IP address of the SABnzbd system. This often means the SABnzbd needs to have a fixed internal IP address
- To check if your port forwarding is setup correctly, you can use http://www.whatsmyip.org/port-scanner/