Install Nzbget Usenet Downloader
This article describes how to download and install nzbget on a debian server.
Usenet is a distributed system where users read and post messages – articles or posts, and collectively termed news) to one or more categories, known as newsgroups. They have been around since before the internet as we know it existed – think of it as a large, distributed forum. It was originally designed to transmit text messages but has since proved exceedingly popular for binaries i.e. programs and other files.
Nzbget is a downloader client for Usenet newsgroups binaries – it’s fast, efficient, has a small system footprint and of course it’s free! While transmission-daemon will take care of the torrent downloads, nzbget in turn takes care of newsgroup binary downloads.
A binary file in a newsgroup is split into a number of “part” files to allow posting – once all files have been downloaded, the original file can be reassembled – should one part file be missing or corrupted however then reassembly is not possible. Nzbget downloads all the part files and reassembles the file, notofying the user should anything be amiss.
The last thing to say is that while many internet providers have a limited Usenet service for their customers, to take real advantage of newsgroups you will need to take out a subscription – a quick google for providers will soon have you up and running and many have a free trial period.
Htpcguides have already written an excellent guide on installing nzbget on debian and ubuntu systems so this tutorial has been taken from their site and modified only to run as the user and group – nobody:nogroup – which we are configuring.
Install unrar
Unrar is the program that nzbget uses to unpack and reassemble the part files – you can install this with apt-get install unrar OR build it from source as described below to take advantage of multicore PCs which all of them are nowadays.
Why bother? Well, newsgroup binaries tend to be in a rar format so the faster we can decompress them the better – let’s use as many cores as possible!
We are going to build the latest unrar from source adapted from these instructions.
- Make sure you have building tools:
sudo apt-get install build-essential -y
- Enter your temporary directory
cd /tmp
- Download the latest unrar source tarball
wget rarlab.com/rar/unrarsrc-5.2.7.tar.gz
- Unpack the unrar source
tar -xvf unrarsrc-5.2.7.tar.gz
- Enter the unrar source
cd unrar
- Get the number of processors for compiling faster
nproc
- I have 2 so when building I add 2 after -j
make -j2 -f makefile
- Now install unrar
sudo install -v -m755 unrar /usr/bin
- Cleanup your unrar source and unpacked directory
cd ..
rm -rf unrar
rm unrarsrc.5.2.7.tar.gz
Install NZBGet
- Download the latest stable NZBGet installer – check the page and insert the correct link:
- http://nzbget.net/download/
wget https://github.com/nzbget/nzbget/releases/download/v16.4/nzbget-16.4-bin-linux.run
- Install NZBGet on Debian 8.x:
sudo sh
nzbget-16.4-bin-linux.run
--destdir /opt/nzbget
- Remove the installer
rm nzbget-16.4-bin-linux.run
- Change ownership of the NZBGet installation to our nobody user
sudo chown -R nobody:nogroup /opt/nzbget
- Update your NZBGet configuration file to run as nobody
sudo sed -i "/DaemonUsername=/c\DaemonUsername=nobody" /opt/nzbget/nzbget.conf
- Create the NZBGet systemd service
sudo nano /etc/systemd/system/nzbget.service
- Paste the working NZBGet systemd script for Debian
[Unit]
Description=NZBGet Daemon Documentation=http://nzbget.net/Documentation After=network.target [Service] User=nobody Group=nogroup Type=forking ExecStart=/opt/nzbget/nzbget -c /opt/nzbget/nzbget.conf -D ExecStop=/opt/nzbget/nzbget -Q ExecReload=/opt/nzbget/nzbget -O KillMode=process Restart=on-failure [Install] WantedBy=multi-user.target
Enable the NZBGet systemd service
sudo systemctl enable nzbget.service
Start the NZBGet systemd service for Debian
- Change the default username and password under “SETTINGS: ControlUsername and Control Password” – we will need this later when we integrate nzbget into Sonarr:
- Lastly and definitely not least, enter your news server(s) address under SETTINGS -> NEWS-SERVERS. There are 4 parameters per server which must be configured: