Сегодня поговорим о том, как можно Установить и настроить qBitTorrent на Ubuntu Server 20.04 LTS.
qBitTorrent – это полностью бесплатный кроссплатформенный клиент для скачивания торрент-файлов. Помимо внушительного списка форматов, которые вы можете загрузить при помощи данного ПО, вы это можете сделать в большинстве наиболее распространенных операционных систем – поддерживается работа в среде Windows, Linux, macOS, а также FreeBSD и OS/2.
qBitTorrent возможности:
Распределенная хэш-таблица (DHT)
Сопоставление портов UPnP
Сопоставление портов NAT-PMP
Ограничение скорости загрузки
Ограничение скорости загрузки
Стоять в очереди
Настраиваемое ограничение на количество одновременно загружаемых одноранговых узлов
Инкрементное выделение файлов
Комплектация блока уровня кусок
Отдельные темы для проверки и загрузки файлов
Один поток и один порт для нескольких загрузок торрент
Протокол расширения BitTorrent
Поддержка расширения мульти-отслежывателя
Расширение справедливой торговли
Компактный трекер расширение
Быстрое резюме
Очередь торрент-файлов-проверьте, если быстрое возобновление невозможно
Поддержка HTTP seed
Возобновление частичных загрузок с других клиентов BitTorrent
Размеры файлов больше 2 ГБ
Выборочная загрузка многофайловых торрентов
IPv6
Стек высокопроизводительной сети
uTP-расширенный UDP – транспорт с динамическим управлением перегрузками
Установка qBitTorrent на Ubuntu Server 20.04
Для установки qBitTorrent на серверную часть Ubuntu первым делом что надо сделать, так это необходимо добавить репозиторий от разработчика:
Измените IP_адрес_qbittorrent на IP_адрес который слушает qbittorrent.
Также не забудьте исправить пути до сертификатов.
После данных манипуляций qbittorrent станет открываться через протокол https.
[endtxt]
RSS
Добавление RSS-ленты на главную страницу этого сайта не поддерживается, так как это может привести к зацикливанию, замедляющему работу вашего сайта. Попробуйте использовать другой блок, например блок Последние записи, для отображения записей сайта.
Но сперва поговорим что же такое LXC и в чем разница от обычных виртуальных машин (KVM) у данного способа. Виртуализация KVM позволяет загружать полные операционные системы разных виды, даже не-Linux-системы. Тем не менее, сложная установка иногда необходимо. Виртуальные машины являются ресурсоемкими, поэтому вы можете запускать только ограниченное количество из них на главной машине. LXC или Linux Containers – это легкие и портативные операционные системы на базе ОС, которые совместно используют ядро базовой операционной системы, но в то же время действуют как изолированные среды с собственной файловой системой, процессами и стеком TCP/IP. Поскольку нет накладных расходов на виртуализацию, они работают намного лучше, чем виртуальные машины. Для себя же я решил использовать виртуализацию LXC, т.к. она менее ресурсопрожорливая.
Установка LXC (LXD) на Ubuntu/Debian
Войдите на сервер, используя учетную запись пользователя с доступом sudo.
В свежей Ubuntu версии, по умолчанию, уже встроен lxd. У кого не так то устанавливаем командой:
sudo apt install lxd
Затем добавьте пользователя в группу lxd, чтобы он мог выполнять задачи по управлению контейнерами:
sudo usermod --append --groups lxd smirnov
Чтобы включить поддержку ZFS в LXD, обновите индекс пакетов и установите пакет zfsutils-linux:
Во время инициализации LXD задаёт несколько вопросов, среди которых будет определение типа файловой системы для дефолтного Storage Pool. По умолчанию для него выбирается файловая система BTRFS. Поменять на другую ФС после создания будет невозможно. Для выбора ФС предлагается таблица сравнения возможностей:
Feature
Directory
Btrfs
LVM
ZFS
CEPH
Optimized image storage
no
yes
yes
yes
yes
Optimized instance creation
no
yes
yes
yes
yes
Optimized snapshot creation
no
yes
yes
yes
yes
Optimized image transfer
no
yes
no
yes
yes
Optimized instance transfer
no
yes
no
yes
yes
Copy on write
no
yes
yes
yes
yes
Block based
no
no
yes
no
yes
Instant cloning
no
yes
yes
yes
yes
Storage driver usable inside a container
yes
yes
no
no
no
Restore from older snapshots (not latest)
yes
yes
yes
no
yes
Storage quotas
yes(*)
yes
yes
yes
no
процесс инициализации Storage Pool
После того как вы решили какое backend хранилище использовать, начинайте процесс инициализации. Делается это командой:
lxd init
Утилита будет задавать вопросы, на которые вам нужно будет ответить. Первым вопросом утилита спросит: Хотите ли вы использовать кластеризацию LXD?
Would you like to use LXD clustering? (yes/no) [default=no]:
Вы хотите настроить новый пул хранения данных?
Do you want to configure a new storage pool? (yes/no) [default=yes]:
Имя нового пула
Name of the new storage pool [default=default]: ssdpool
какой тип хранилища использовать?
Name of the storage backend to use (dir, lvm, ceph, btrfs) [default=btrfs]:
Создать новый пул BTRFS?
Create a new BTRFS pool? (yes/no) [default=yes]:
Хотите ли вы использовать существующее блочное устройство?
Would you like to use an existing block device? no
Размер в ГБ нового устройства loop
Size in GB of the new loop device (1GB minimum) [default=15GB]: 30
Вы хотите подключиться к серверу MAAS?
Would you like to connect to a MAAS server? (yes/no) [default=no]:
Хотите ли вы создать новый мост локальной сети?
Would you like to create a new local network bridge? (yes/no) [default=yes]: no
Тут я отвечаю нет, так как у меня настроен сетевой мост и DHCP сервер. Буду использовать его. Но приведу пример по настройке моста:
# Как должен называться новый мост?
What should the new bridge be called? [default=lxdbr0]:
# Какой IPv4-адрес следует использовать? (Обозначение подсети, CIDR, “auto " или " none”)
What IPv4 address should be used? (CIDR subnet notation, “auto” or “none”) [default=auto]: none
What IPv6 address should be used? (CIDR subnet notation, “auto” or “none”) [default=auto]: none
Хотите ли вы настроить LXD для использования существующего моста или хост-интерфейса?
Would you like to configure LXD to use an existing bridge or host interface? (yes/no) [default=no]: yes
Имя существующего моста или интерфейса хоста:
Name of the existing bridge or host interface: br0
Хотите ли вы, чтобы LXD был доступен по сети?
Would you like LXD to be available over the network? (yes/no) [default=no]:
Я отвечаю да, тем самым открывая доступ к контейнерам из локальной сети.
Адрес для привязки LXD к интерфейсу
Address to bind LXD to (not including port) [default=all]: 10.5.5.1
Порт для
Port to bind LXD to [default=8443]: 4444
Пароль доверия для новых клиентов:
Trust password for new clients:
Тут придумайте какой нибудь пароль
Повторите Ваш пароль
Again:
Хотите ли вы, чтобы устаревшие кэшированные изображения обновлялись автоматически?
Would you like stale cached images to be updated automatically? (yes/no) [default=yes] no
Хотите ли вы, чтобы была напечатана предварительная запись YAML “lxd init”?
Would you like a YAML "lxd init" preseed to be printed? (yes/no) [default=no]: yes
Следующая команда выводит на экран список всех Storage Pool в LXC хранилище. Но данная команда у вас ничего не покажет, так как мы еще не настроили контейнер ( привожу просто как пример):
lxc storage list
+--------+-------------+--------+-------------------------------------------+---------+
| NAME | DESCRIPTION | DRIVER | SOURCE | USED BY |
+--------+-------------+--------+-------------------------------------------+---------+
| test | | zfs | /var/snap/lxd/common/lxd/disks/test.img | 3 |
+--------+-------------+--------+-------------------------------------------+---------+
| ubnsrv | | btrfs | /var/snap/lxd/common/lxd/disks/ubnsrv.img | 0 |
+--------+-------------+--------+-------------------------------------------+---------+
Для просмотра списка всех Storage Volume в выбранном Storage Pool служит команда lxc storage volume list:
lxc storage volume list test
+-----------+------------------------------------------------------------------+-------------+---------+
| TYPE | NAME | DESCRIPTION | USED BY |
+-----------+------------------------------------------------------------------+-------------+---------+
| container | webserver | | 1 |
+-----------+------------------------------------------------------------------+-------------+---------+
| image | 89cbdbacd37e484c16816ae1ad550930c70320ef6428df4eb723e2aae4c78b56 | | 1 |
+-----------+------------------------------------------------------------------+-------------+---------+
Увеличение размера Storage Pool
После создания Storage Pool, при необходимости, его можно расширить. Для Storage Pool основанном на файловой системе BTRFS выполните следующие команды:
Если выдает ошибку “Error: Storage pool “default” has profiles using it: default“, то делаем так:
printf 'config: {}ndevices: {}' | lxc profile edit test
lxc storage delete test
Удаление bridge LXD
После удаление Storadge Pool необходимо удалить созданный сетевой мост следующей командой:
sudo lxc network delete lxdbr0
Работа с контейнерами LXC
Список контейнеров LXC
После того как Вы прошли все стадии настройки нового пула, вам потребуется скачать сам контейнер. Для просмотра доступных контейнеров с Ubuntu необходимо набрать следующую команду:
lxc image list ubuntu:
Я для установки выбрал Ubuntu Server 20.04 LTS.
Установка контейнера LXC на хост машину
Устанавливаем наш контейнер следующей командой:
lxc launch ubuntu:f webserver
f– это сокращенное название контейнера (Ubuntu 20.04 focal)
webserver – это имя нашего контейнера.
После загрузки посмотрим список наших контейнеров установленных в системе:
lxc list
+-----------+---------+---------------+------+-----------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+-----------+---------+---------------+------+-----------+-----------+
| webserver | RUNNING | 10.5.5.44 (eth0) | | CONTAINER | 0 |
+-----------+---------+---------------+------+-----------+-----------+
Как видим контейнер запустился с именем webserver и IP-адресом 10.5.5.44
Так как наш контейнер lxd называется webserver, то на него необходимо установить какой либо WEB-сервер.
Установка NGINX в LXC (LXD) контейнер
Подключитесь к контейнеру webserver и настройте в нем веб-сервер.
Чтобы подключиться к контейнеру как root, используйте следующую команду:
lxc exec webserver -- /bin/bash
Чтобы подключиться к контейнеру от другого пользователя используйте вот такую команду:
lxc exec webserver -- sudo --login --user user1
Команда sudo --login --user use1 предоставляет оболочку входа для предварительно сконфигурированной учетной записи user1 внутри контейнера.
В контейнере командная строка выглядит так:
root@webserver:~$
Установите Nginx в этом контейнере. Для этого обновим индекс пакетов экземпляра Ubuntu внутри контейнера, добавим свежий репозиторий для nginx и установим сам WEB-сервер Nginx:
Затем отредактируйте веб-страницу по умолчанию для этого сайта и добавьте текст, который поможет вам понять, что этот сайт размещен в контейнере webserver. Откройте файл index.nginx-debian.html:
nano /var/www/html/index.nginx-debian.html
Измените его следующим образом:
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
body {
width: 35em;
margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif;
}
</style>
</head>
<body>
<h1>Добро пожаловать в контейнер WEBSERVER!</h1>
<p>Если вы видите эту страницу, веб-сервер nginx успешно установлен и работает.
Необходима дальнейшая настройка.</p>
<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>
<p><em>Спасибо Вам за использование nginx.</em></p>
</body>
</html>
Сохраните файл и выйдите из редактора. Выйдите из контейнера и вернитесь на главный сервер:
exit
С помощью curl проверьте, работает ли веб-сервер в контейнере. Вам понадобятся IP-адреса веб-контейнеров, которые были найдены ранее с помощью команды lxd list.
curl http://10.5.5.44/
Команда вернет:
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
body {
width: 35em;
margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif;
}
</style>
</head>
<body>
<h1>Добро пожаловать в контейнер WEBSERVER!</h1>
<p>Если вы видите эту страницу, веб-сервер nginx успешно установлен и работает.
Необходима дальнейшая настройка.</p>
<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>
<p><em>Спасибо Вам за использование nginx.</em></p>
</body>
</html>
Веб-сервер работает, но получить доступ к нему можно только через внутренний IP-адрес. Для того чтобы другие пользователи могли получить доступ к web-сайту, направьте внешние запросы в этот контейнер. Как это сделать Я описывал в данной статье:
В Linux нет особого реестра, где бы хранились настройки программ, данные пользователей и другие компоненты системы. Всё хранится в файлах. В этой небольшой статье мы поговорим о том, где хранятся пароли пользователей Linux.
Изначально для хранения паролей использовался файл /etc/passwd. Но этот файл доступен для чтения всем пользователям. Поэтому, из соображений безопасности, пароли пользователей были перенесены в файл /etc/shadow. Этот файл доступен для чтения только пользователю root.
Сегодня в статье рассмотрим пример настройки локального DNS-сервера BIND9 на Ubuntu 20.04 LTS. Всё нижеописанное применимо и для других Debian дистрибутивов, с небольшими поправками на названия файлов и их путей. Читать →
Наиболее популярный вопрос в GSM VoIP шлюзах обычно касается SMS сообщений.
Рассылка SMS осуществляется по средствам Web-Интерфейса, http, api (на всех моделях шлюзов OpenVox). Так же удобно реализована пересылка и совмесная работа EMail и SMS.
WEB
Наиболее стандартный, логичный и самый неудобный из вариантов. Больше подходит для проверки работоспособности или какой-то разовой акции, чем для постоянного использования.
Port – Выбор канала, с которого будет производиться рассылка SMS. В случае, когда получателей несколько, каналы оперируют их номерами по очереди в порядке списка.
Flash SMS – Вкл/Выкл функцию Flash SMS. Flash-SMS это SMS-сообщение, сразу отображаемое при получении на экране телефона, в разных моделях телефонов по-разному.
Load numbers from text file - Загрузить список номеров из текстового файла.
Destination Number – Поле для ввода номера, на который будет производиться рассылка.
В случае, если получаетелей много, их номера можно разделить пробелом, запятой, точкой с запятой, символом возврата каретки r и разделителем строки n.
Message – Поле для ввода самого сообщения.
Action – Кнопки действия. Send – начать отправку, Stop – остановить отправку.
В WEB интерфейсе также предусмотрена возможность просматривать входящие и исходящие сообщения, необходимо лишь предварительно включить возможность приема и локального хранения сообщений.
Email
SMS to Email так же можно отнести к стандартной возможности подобных устройств.
Указываем необходимые данные для подключения к SMTP, email адреса, на которые пересылать входящие SMS, и настраиваем шаблон отправляемых писем. При этом в шаблоне доступно 4-е переменные:
номер отправителя
номер порта SIM карты
время приема
текст входящего сообщения.
Чаще всего производители предусматривают и обратную возможность – Email to SMS: мы отправляем email на какой-то адрес, который периодически проверяет шлюз и из входящих писем формирует SMS-ки, но в OpenVox решили подобную возможность не реализовывать.
HTTP
Отправки и прием SMS сообщений посредством HTTP запросов – один из самых простых способов интегрировать эти действия в работу сторонних приложений.
Для отправки СМС необходимо выполнить запрос вида:
URL – Формат используемой ссылки.
username – имя пользователя, которое мы указали в настройках
password – пароль из настроек
phonenumber – номер получателя, можно указывать сразу несколько через «,»
message – текст отправляемого сообщения
port – через какой порт осуществлять отправку, можно указывать несколько, например gsm-1.1
report – отчет можно получить в виде JSON или String
timeout – время ожидания отчета
Помимо отправки, шлюзы OpenVox позволяют реализовать прием SMS сообщений поверх HTTP.
Указываем адрес нашего обработчика, путь и названия параметров. При поступлении входящих сообщений шлюз будет выполнять настроенный нами запрос.
Если вам требуется использование Linux, такого как Ubuntu, Debian или Red Hat, для выполнения вашей работы дома или в офисе, вам больше не нужно переключаться на Windows 10 или Интернет, чтобы общаться с коллегами, поскольку у Slack теперь есть встроенное приложение для Linux.
Приложение доступно в бета-версии, но любой может загрузить и установить Slack, чтобы получить доступ ко всем функциям, доступным в приложении для Windows 10, включая рабочее пространство для общения и совместной работы в режиме реального времени.
В этом руководстве вы узнаете, как установить Slack в Linux.
Как установить Slack с помощью графического интерфейса в Ubuntu
Чтобы установить приложение Slack в Ubuntu или другой версии Linux, используйте следующие шаги: