Wie installiere ich den nZEDb Usenet-Indexer unter Ubuntu?
nZEDb ist ein Fork von newznab plus. Es ist ein kostenloser und quelloffener Usenet-Indexer, der das Usenet automatisch durchsucht, ähnlich wie die Google-Suchbots. Es bietet eine webbasierte Oberfläche mit Such-, Browse- und API-Funktionen. nZEDb ist kostenlos, sodass du so viele NZB-Dateien herunterladen kannst, wie du möchtest.
In dieser Anleitung wird erklärt, wie du den nZEDb Usenet Indexer auf einem Ubuntu 18.04 Server installierst.
Voraussetzungen
- Ein Server, auf dem Ubuntu 18.04 läuft.
- Ein Root-Passwort ist auf deinem Server eingerichtet.
Erste Schritte
Bevor du beginnst, musst du dein System auf die neueste Version aktualisieren. Das kannst du tun, indem du den folgenden Befehl ausführst:
apt-get update -y apt-get upgrade -y
Sobald dein Server aktualisiert ist, starte ihn neu, damit die Änderungen übernommen werden.
LAMP-Server installieren
Zuerst musst du den Apache Webserver, den MariaDB Datenbankserver, PHP und andere benötigte Pakete auf deinem System installieren. Du kannst alle Pakete installieren, indem du den folgenden Befehl ausführst:
apt-get install apache2 mariadb-server mariadb-client php7.2 php7.2-fpm php7.2-mysql php7.2-common php7.2-gd php7.2-json php7.2-cli php7.2-curl libapache2-mod-php7.2 php-imagick php-pear php7.2-dev php7.2-mbstring php7.2-xml curl unzip git -y
Sobald alle Pakete installiert sind, musst du einige Einstellungen in der Datei php.ini vornehmen:
Öffne zunächst die Datei php.ini, die sich unter /etc/php/7.2/apache2/php.ini befindet
nano /etc/php/7.2/apache2/php.ini
Ändere die folgenden Zeilen:
max_execution_time = 300 memory_limit = 1024M date.timezone = "America/Chicago"
Speichere und schließe die Datei. Öffne dann die Datei php.ini, die sich unter /etc/php/7.2/cli/php.ini befindet
nano /etc/php/7.2/cli/php.ini
Ändere die folgenden Zeilen:
max_execution_time = 300 memory_limit = 1024M date.timezone = "America/Chicago"
Speichere und schließe die Datei. Starte dann den Apache-Dienst neu, um die Änderungen zu übernehmen:
systemctl restart apache2
MariaDB konfigurieren
Als nächstes musst du einen Benutzer und eine Datenbank für nZEDb erstellen. Melde dich zunächst mit folgendem Befehl in der MariaDB-Shell an:
mysql -u root -p
Gib bei der Aufforderung dein Root-Passwort ein und erstelle dann mit folgendem Befehl eine Datenbank und einen Benutzer für nZEDb:
MariaDB [(none)]>create database nzedb; MariaDB [(none)]>grant all privileges on nzedb.* to 'nzedb'@'localhost' identified by 'your-password';
Als Nächstes erteilst du dem Benutzer nzedb mit folgendem Befehl Dateirechte:
MariaDB [(none)]>grant file on *.* TO 'nzedb'@'localhost';
Lösche die Berechtigungen und verlasse die MariaDB-Shell mit folgendem Befehl:
MariaDB [(none)]>flush privileges; MariaDB [(none)]>exit;
Als Nächstes musst du die MariaDB-Standardkonfigurationsdatei bearbeiten und sie konfigurieren. Das kannst du mit dem folgenden Befehl tun:
nano /etc/mysql/mariadb.conf.d/50-server.cnf
Füge die folgenden Zeilen in den Abschnitt [mysqld] ein:
### configurations by nZEDb #### innodb_file_per_table = 1 innodb_large_prefix = 1 ## Only needed if version < 10.2.2 max_allowed_packet = 16M group_concat_max_len = 8192
Speichere und schließe die Datei, wenn du fertig bist. Starte dann den MariaDB-Dienst neu, um die Konfiguration zu übernehmen:
systemctl restart mariadb
Standardmäßig ist das AppArmor-Sicherheitsmodul in Ubuntu 18.04 aktiviert und verhindert, dass nZEDb die LOAD DATA-Befehle von SQL verwenden kann. Du musst also AppArmor sagen, dass es MariaDB ignorieren soll.
Dazu installierst du zunächst das Dienstprogramm AppArmor mit dem folgenden Befehl:
apt-get install apparmor-utils -y
Als Nächstes sagst du AppArmor mit dem folgenden Befehl, dass es MariaDB ignorieren soll:
aa-complain /usr/sbin/mysqld
Wenn du eine Fehlermeldung erhältst, ignoriere sie.
Erforderliche Tools installieren
Als Nächstes musst du einige Tools installieren, die für nZEDb benötigt werden.
Medien-Tools installieren und entpacken
Installiere zunächst einige Medientools mit dem folgenden Befehl:
apt-get install time p7zip-full mediainfo lame ffmpeg zip -y
Nach der Installation lädst du das Paket libav-tools herunter und installierst es mit dem folgenden Befehl:
wget http://launchpadlibrarian.net/339874908/libav-tools_3.3.4-2_all.deb dpkg -i libav-tools_3.3.4-2_all.deb
Als Nächstes lädst du den Unrar-Quellcode herunter und kompilierst ihn mit dem folgenden Befehl:
wget http://www.rarlab.com/rar/rarlinux-x64-5.5.0.tar.gz tar -xzf rarlinux-x64-5.5.0.tar.gz mv rar/unrar /usr/bin/unrar chmod 755 /usr/bin/unrar
Composer installieren
Composer ist ein Abhängigkeitsmanager für PHP. Er wird verwendet, um die von PHP benötigten Abhängigkeiten zu installieren. Du kannst ihn installieren, indem du den folgenden Befehl ausführst:
curl -sS https://getcomposer.org/installer | php mv composer.phar /usr/local/bin/composer chmod +x /usr/local/bin/composer
Tmux installieren
Als Nächstes musst du den Quellcode von tmux herunterladen und kompilieren. Installiere zunächst die erforderlichen Abhängigkeiten mit dem folgenden Befehl:
apt-get install libevent-dev build-essential git autotools-dev automake pkg-config ncurses-dev python python-setuptools python-dev build-essential python-pip ca-certificates -y
Nach der Installation entfernst du die Standardversion von tmux mit dem folgenden Befehl:
apt-get remove tmux -y
Als Nächstes lädst du tmux herunter und kompilierst es mit dem folgenden Befehl:
git clone https://github.com/tmux/tmux.git --branch 2.0 --single-branch cd tmux ./autogen.sh ./configure make -j4 make clean
Installiere nZEDb
Als Nächstes musst du nZEDb aus dem Git-Repository herunterladen. Du kannst es mit dem folgenden Befehl herunterladen:
mkdir /var/www/nZEDb/ cd /var/www/ git clone https://github.com/nZEDb/nZEDb.git
Wechsle dann in das Verzeichnis nZEDb und installiere die erforderlichen PHP-Abhängigkeiten mit dem folgenden Befehl:
cd /var/www/nZEDb/ composer install
Als nächstes musst du die zoneinfo in die mysql-Datenbank importieren. Das kannst du mit folgendem Befehl tun:
mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql
Als Nächstes erstellst du ein temporäres Verzeichnis für unrar:
mkdir -p /var/www/nZEDb/resources/tmp/unrar
Als Nächstes richtest du die erforderlichen Berechtigungen mit folgendem Befehl ein:
chmod -R 777 /var/www/nZEDb/ chown -R www-data:www-data /var/www/nZEDb/ chmod -R 777 /var/lib/php/sessions
Wenn du damit fertig bist, kannst du mit dem nächsten Schritt fortfahren.
Apache für nZEDb konfigurieren
Als Nächstes musst du eine Apache-Virtual-Host-Datei für nZEDb erstellen. Du kannst sie mit dem folgenden Befehl erstellen:
nano /etc/apache2/sites-available/nzedb.conf
Füge die folgenden Zeilen ein:
<VirtualHost *:80> ServerAdmin webmaster@localhost ServerName your-server-ip DocumentRoot "/var/www/nZEDb/www" LogLevel warn ServerSignature Off ErrorLog /var/log/apache2/error.log <Directory "/var/www/nZEDb/www"> Options FollowSymLinks AllowOverride All Require all granted </Directory> Alias /covers /var/www/nZEDb/resources/covers </VirtualHost>
Speichere und schließe die Datei. Deaktiviere dann die virtuelle Standard-Hostdatei und aktiviere die virtuelle nZEDb-Hostdatei mit dem folgenden Befehl:
a2dissite 000-default a2ensite nzedb.conf
Aktiviere abschließend das Apache Rewrite Modul und starte den Apache Webservice neu, um die Änderungen zu übernehmen:
a2enmod rewrite systemctl restart apache2
Zugriff auf nZEDb Web Inetrface
nZEDb ist nun installiert und konfiguriert. Als Nächstes öffnest du deinen Webbrowser und gibst die URL http://your-ip-address/install ein. Du wirst auf die folgende Seite weitergeleitet:
Klicke als Nächstes auf die Schaltfläche „Gehe zu Schritt eins: Vorflugkontrolle“. Du solltest die folgende Seite sehen:
Vergewissere dich, dass alle PHP-Abhängigkeiten installiert sind, und klicke dann auf die Schaltfläche „Schritt zwei: Richte die Datenbank ein“. Du solltest die folgende Seite sehen:
Gib deinen Datenbanknamen, den Datenbankbenutzernamen, das Passwort und den Host ein und klicke auf die Schaltfläche “ Datenbank einrichten „. Du solltest die folgende Seite sehen:
Als nächstes klickst du auf die Schaltfläche “ Schritt drei: Opessl einrichten. Du solltest die folgende Seite sehen:
Als Nächstes gibst du deinen Standard-CA-Bündelpfad und den Zertifikatsordner an. Klicke dann auf die Schaltfläche Openssl-Einstellungen überprüfen. Du solltest die folgende Seite sehen:
Klicke als nächstes auf den „Schritt vier: News-Server-Verbindung einrichten“. Du solltest die folgende Seite sehen:
Gib als Nächstes deine Newsserver-URL, deinen Benutzernamen, dein Passwort und deinen Port ein und klicke auf die Schaltfläche “ Primäre Verbindung testen „. Du solltest die folgende Seite sehen:
Klicke dann auf die Schaltfläche „Schritt fünf: Einstellungen speichern“. Du solltest die folgende Seite sehen:
Als Nächstes klickst du auf die Schaltfläche „Schritt sechs: Admin-Benutzer einrichten“. Du solltest die folgende Seite sehen:
Gib nun die Daten deines Admin-Benutzers ein und klicke auf die Schaltfläche „Admin-Benutzer erstellen“. Du solltest die folgende Seite sehen:
Als Nächstes klickst du auf die Schaltfläche „Schritt sieben: Dateipfade festlegen“. Du solltest die folgende Seite sehen:
Gib den gewünschten Pfad ein und klicke auf die Schaltfläche „Dateipfade festlegen“. Du solltest die folgende Seite sehen:
Klicke jetzt auf die Schaltfläche „Admin-Homepage“. Auf der folgenden Seite wirst du zum Standard-Dashboard von nZEDb weitergeleitet:
Indizierung von Usenet-Inhalten
Nach der Installation von nZEDb befolgst du die Anweisungen, um einige Newsgroups zu aktivieren, die neuesten Header der von dir ausgewählten Gruppen abzurufen und Versionen zu aktualisieren.
Du kannst die neuesten Header mit dem folgenden Befehl abrufen:
cd /var/www/nZEDb/misc/update php update_binaries.php
Als Nächstes erstellst du mit folgendem Befehl Releases und NZB-Dateien:
cd /var/www/nZEDb/misc/update/nix/multiprocessing php releases.php
Herzlichen Glückwunsch! Du hast den nZEDb Usenet Indexer erfolgreich auf dem Ubuntu 18.04 Server installiert und konfiguriert. Wenn du noch Fragen hast, kannst du dich gerne an mich wenden.