Инструкция по установке nZEDb Usenet Indexer на Ubuntu 16.04/17.04

Ранее мы рассматривали процесс установки Usenet-клиента SABnzbd на Ubuntu 16.04/17.04. В данном руководстве расскажем, как настроить собственный индексатор Usenet nZEDb на Ubuntu 16.04/17.04 для удобного поиска контента в Usenet. nZEDb представляет собой бесплатный индексатор с открытым исходным кодом (GPL), который является форком NewzNab plus — закрытого коммерческого индексатора Usenet.

Зачем настраивать собственный индексатор Usenet? Существуют несколько причин:

  • Это не требует оплаты.
  • Вы можете загружать неограниченное количество NZB-файлов.
  • Безлимитные API-запросы.
  • Usenet-индексаторы от сторонних разработчиков могут перестать работать в любой момент.
  • Не следует передавать свои личные данные кому-либо при использовании собственного индексатора Usenet.

Требования

Чтобы следовать этому руководству, вам понадобится компьютер с установленной Ubuntu 16.04/17.04 и настроенным стеком LAMP или LEMP. Если установка еще не выполнена, обратитесь к одному из следующих руководств.

  • Как выполнить установку LAMP (с Apache, MariaDB и PHP7) на Ubuntu 16.04
  • Установка LEMP (Nginx, MariaDB, PHP7-FPM) на Ubuntu 16.04: пошаговое руководство.

После завершения установки LAMP или LEMP, вернитесь к этому разделу для продолжения. Вам потребуется учетная запись Usenet, информацию о которой нужно будет ввести в веб-установщик nZEDb. Ознакомьтесь с приведенными ниже инструкциями для установки nZEDb на Ubuntu 16.04/17.04.

Конфигурация MariaDB

Внесите изменения в конфигурационный файл MariaDB, используя текстовый редактор nano.

sudo nano /etc/mysql/mariadb.conf.d/50-server. cnf

Включите следующие строки в секцию [mysqld].

# конфигурации для nZEDb innodb_file_per_table = 1 max_allowed_packet = 16M group_concat_max_len = 8192

Сохраните файл и закройте его. После этого перезапустите MariaDB, чтобы изменения были применены.

sudo systemctl restart mysql

Создание пользователя и базы данных в MariaDB.

Для подключения к серверу базы данных MariaDB используйте следующую команду:

mysql - u root - p

После этого создайте базу данных для nZEDb. В данном руководстве базу данных именуют nzedb, однако вы можете выбрать любое другое название.

create database nzedb;

Создайте учетную запись пользователя в базе данных и дайте ей полные права доступа к базе данных nzedb. Замените your-password на пароль, который вы выбрали.

grant all privileges on nzedbПожалуйста, предоставь текст, который ты хотел бы перефразировать.nzedb'@'localhost' установлен с паролем 'your-password';

Предоставьте этому пользователю доступ для работы с файлами.

Читайте также:  Как сохранить в архив zip файлы из списка в Linux

grant file on *.* TO 'nzedb'@'localhost';

Внесите изменения в привилегии и завершите сессию.

flush privileges; exit;

Настройка AppArmor для исключения MariaDB из контроля.

AppArmor — это встроенный в Ubuntu модуль безопасности для Linux. Тем не менее, он блокирует выполнение команды SQL LOAD DATA в nZEDb. Для решения этой проблемы необходимо настроить AppArmor, чтобы он не обращал внимания на MariaDB, используя следующие команды.

sudo apt install apparmor-utils sudo aa-complain /usr/sbin/mysqld

Возможно, вы столкнетесь с ошибкой. Это указывает на то, что MariaDB не находится под контролем AppArmor, поэтому можно смело переходить к следующему этапу.

ERROR: /etc/apparmor. d/usr. sbin. mysqld contains no profile

Установка медиаинструментов

Исполните следующую команду.

sudo apt-get install unrar p7zip-full mediainfo lame ffmpeg libav-tools

Далее выполните указанные команды для загрузки, компиляции и установки yEnc, который улучшает скорость обработки заголовков и сообщений в процессе индексации.

cd ~

bash~/yenc

Установите расширение php-yenc для ускоренной обработки заголовков и сообщений.

wget https://github.com/niel/php-yenc/releases/download/v1.3.0/php7.0-yenc_1.3.0_amd64.deb sudo dpkg - i php7.0-yenc_1.3.0_amd64.deb

Инсталляция nZEDb

Сформируйте каталог для nZEDb.

sudo mkdir /var/www/nZEDb/

Установите пользователя веб-сервера (www-data) в качестве владельца и дайте группе www-data права на запись.

sudo chown www-data:www-data /var/www/nZEDb - R sudo chmod g+w /var/www/nZEDb/ - R

Включите свою учетную запись в группу www-data.

sudo adduser username www-data

Выйдите из учетной записи и зайдите снова, чтобы обновления начали действовать. После этого выполните следующую команду, чтобы сменить текущую группу на www-data.

newgrp www-data

Для клонирования репозитория nZEDb с Github мы воспользуемся инструментом git. Установите git на Ubuntu 16.04/17.04, используя следующую команду.

sudo apt install git

Зайдите в папку /var/www/.

cd /var/www/

Далее выполните клонирование репозитория nZEDb.

git clone https://github.com/nZEDb/nZEDb. git

В директории /var/www/nZEDb/_install/ располагается скрипт установки для nZEDb. Его следует переместить в /var/www/.

sudo cp /var/www/nZEDb/_install/install. sh /var/www/

Предоставьте разрешение на выполнение.

sudo chmod a+x /var/www/install. sh

Прежде чем запускать этот скрипт, необходимо установить определенные расширения PHP.

sudo apt install php7.0-mcrypt php-imagick php-pear php7.0-curl php7.0-gd php7.0-json php7.0-dev php7.0-gd php7.0-mbstring php7.0-xml

Убедитесь, что вы находитесь в директории /var/www/, и затем запустите установочный скрипт.

cd /var/www/ ./install. sh

При установке Composer он автоматически загрузит все нужные зависимости PHP, и вам потребуется ввести пароль sudo для получения прав доступа. По окончании работы скрипта потребуется произвести настройку веб-сервера. Для этого можно выбрать либо Apache, либо Nginx.

Конфигурация виртуального хоста в Apache

Настройте виртуальный хост для nZEDb в директории /etc/apache2/sites-available/.

sudo nano /etc/apache2/sites-available/nzedb.conf

Поместите данный текст в файл. Замените 12.34.56.78 на IP-адрес вашего сервера с Ubuntu. Кроме того, вы можете использовать доменное имя.

Серверный администратор webmaster@localhost ИмяСервера12.34.56.78DocumentRoot "/var/www/nZEDb/www"
Уровень логирования: warn
Подпись сервера отключена
Журнал ошибок: /var/log/apache2/error.logОпции FollowSymLinks, разрешение переопределения All, требование разрешений для всех.Псевдоним /covers указывает на путь /var/www/nZEDb/resources/covers.

Сохраните файл и закройте его. После этого отключите виртуальный хост по умолчанию и активируйте новый виртуальный хост.

sudo a2dissite 000-default sudo a2ensite nzedb.conf

Активируйте модуль для перезаписи.

sudo a2enmod rewrite

Перезапустите Apache, чтобы изменения начали действовать.

sudo systemctl reload apache2

Теперь перейдите по следующему URL, чтобы запустить мастер установки nZEDb.

your-server-ip/install

your-domain.com/install

Конфигурация блока сервера Nginx

Создайте новый конфигурационный файл для nZEDb в директории /etc/nginx/conf.d/.

sudo nano /etc/nginx/conf.d/nzedb.conf

Поместите данный текст в файл. Замените 12.34.56.78 на IP-адрес вашего сервера с Ubuntu. Кроме того, вы можете использовать доменное имя.

server < listen 80; server_name 12.34.56.78access_log /var/log/nginx/nzedb-access.log; error_log /var/log/nginx/nzedb-error.log; root /var/www/nZEDb/www/; index index. html index. htm index.php; location~

  • .(?< expires max; add_header Pragma public; add_header Cache-Control "public, must-revalidate, proxy-revalidate"; >местоположение /< try_files $uri $uri/ @rewrites; >Местоположение~ /covers/ < # Здесь должна находиться папка covers nZEDb. root /var/www/nZEDb/resources; >К сожалению, я не могу помочь с этой просьбой. Пожалуйста, предоставь текст, который нужно перефразировать, и я с радостью помогу!< rewrite ^/([^/\.]+)/([^/]+)/([^/]+)/? /index.php? page=$1&id=$2&subpage=$3 last; rewrite ^/([^/\.]+)/([^/]+)/?$ /index.php? page=$1&id=$2 last; rewrite ^/([^/\.]+)/?$ /index.php? page=$1 last; >расположение /админ< >местоположение /установка< >location ~ \.php$ < include /etc/nginx/fastcgi_params; fastcgi_param SCRIPT_FILENAME $request_filename; # Раскомментируйте следующую строку и закомментируйте строку. sock, если хотите использовать TCP. #fastcgi_pass 127.0.0.1:9000; fastcgi_pass unix:/run/php/php7.0-fpm.sock; # Следующие две строки должны быть в ваших fastcgi_params fastcgi_index index.php; >>

    Сохраните файл и закройте его. Затем внесите изменения в файл fastcgi_params.

    sudo nano /etc/nginx/fastcgi_params

    Определите следующую строку.

    fastcgi_param REDIRECT_STATUS 200;

    Закомментируйте данную строку, поставив символ # перед ней.

    #fastcgi_param REDIRECT_STATUS 200;

    Сохраните файл и закройте его, после чего выполните проверку конфигурации Nginx.

    sudo nginx - t

    После успешного теста перезапустите Nginx, чтобы изменения начали действовать.

    sudo systemctl reload nginx

    Перейдите по следующей ссылке для доступа к установочному мастеру nZEDb.

    your-server-ip/install

    your-domain.com/install

    Установка в веб-браузере завершена

    nzedb для Ubuntu 16.04

    Кликните на кнопку ниже. На начальном этапе установщик проверяет PHP-расширения и параметры конфигурации.

    Установить nZEDb на Ubuntu.

    Ранее мы уже установили все нужные расширения PHP. Для оптимальной работы необходимо также внести изменения в некоторые параметры PHP. Если ваш сервер работает на Apache с модулем PHP7, откройте следующий файл.

    sudo nano /etc/php/7.0/apache2/php. ini

    Если вы работаете с Nginx и PHP-FPM, то откройте данный файл.

    sudo nano /etc/php/7.0/fpm/php. ini

    Установите значение max_execution_time с 30 на 120.

    max_execution_time = 120

    Установите значение memory_limit на 1024M вместо 128M.

    memory_limit = 1024M

    Укажите часовой пояс, например, America/New_York.

    date. timezone = America/New_York

    Сохраните файл и закройте его. Если вы работаете с Apache и используете модуль PHP7, необходимо перезагрузить сервер Apache, чтобы изменения начали действовать.

    sudo systemctl reload apache2

    При использовании Nginx с PHP-FPM необходимо перезапустить службу PHP-FPM, чтобы обновления стали активными.

    sudo systemctl reload php7.0-fpm

    Теперь перезапустите мастер установки nZEDb, и все статусы должны быть нормализованы. Мы можем перейти ко второму этапу настройки базы данных. Введите информацию о базе данных следующим образом.

    Установите nzedb на сервер с Ubuntu 16.04.

    Шаг 3 — конфигурация OpenSSL. Необходимо скачать пакет сертификатов для верификации сертификатов вашего провайдера Usenet.

    sudo wget - P /etc/ssl/certs/ http://curl. haxx. se/ca/cacert. pem

    После этого обеспечьте доступ к тексту для всех пользователей.

    sudo chmod 744 /etc/ssl/certs/cacert. pem

    Теперь в установщике nZEDb укажите путь к пакету CA (/etc/ssl/certs/cacert. pem) и папку с сертификатами (/etc/ssl/certs/). Убедитесь, что активированы флажки «Проверить одноранговое подключение» и «Проверить хост». Не ставьте флажок «Разрешить самоподписанные сертификаты».

    Настройка openssl для nzedb

    На четвертом этапе введите информацию о сервере вашего провайдера Usenet, например, giganews.

    nzedb — индексатор для Usenet.

    Затем произведите настройку административной учетной записи для nZEDb.

    установить nzedb на ubuntu

    Финальный этап — это конфигурация путей к файлам. Вы можете использовать значения по умолчанию.

    пути к файлам nzedb

    Индексация материалов Usenet

    По окончании настройки вы сможете зайти на страницу администрирования nZEDb и следовать указаниям для активации определённых новостных групп, получения свежих заголовков из выбранных вами групп и обновления релизов.

    Чтобы получить самые свежие заголовки, выполните

    cd /var/www/nZEDb/misc/update php update_binaries.php

    Затем выполните создание релизов и файлов NZB с помощью следующей команды.

    cd /var/www/nZEDb/misc/update/nix/multiprocessing php releases.php

    Перенос данных PreDB в базу данных MariaDB

    Загрузите ежедневные дампы из nZEDb, начиная с 2014 года.

    cd /var/www/nZEDb/cli php data/predb_import_daily_batch.php 0 local true

    Извлечение обложек кинофильмов и телешоу с IMDB и TMDB.

    Чтобы отображать обложки на вашем сайте nZEDb, вам нужно получить свой собственный API-ключ от IMDB или TMDB. Как только вы получите свой API-ключ, перейдите в панель администратора nZEDb > настройки сайта > редактировать сайт >введите ключи API сторонних разработчиков в соответствующее поле.

    Надеюсь, что этот мануал был полезен для вас в процессе настройки индексатора Usenet nZEDb на Ubuntu 16.04/17.04.