Архив рубрики: Linux

Ваш путеводитель по одной из самых популярных и влиятельных операционных систем в мире. От базовых команд и установки дистрибутивов до глубокого изучения ядра и сетевых технологий — здесь вы найдете статьи и руководства на самые разные темы, связанные с Linux. Независимо от вашего уровня подготовки, здесь найдется что-то интересное и полезное.

Установка FreePBX в Debian 10

FreePBX – это графический интерфейс и система управления с открытым исходным кодом для цифровой АТС Asterisk. Цифровая АТС Asterisk — свободное решение компьютерной телефонии (в том числе, VoIP) с открытым исходным кодом от компании Digium, первоначально разработанное Марком Спенсером. Имя проекта произошло от названия символа "*" (англ. asterisk — «звёздочка»).

В этой статье мы рассмотрим выполняется установка Asterisk на Debian 10. Связка Asterisk + FreePBX позволяет использовать практически все протоколы голосовой связи и видео связи (SIP и H.323) и гибко настраивать голосовую почту, конференцсвязь, IVR (интерактивное голосовое меню), осуществлять запись и хранение диалогов, управлять очередями звонков, распределять звонки по внешним и внутренним абонентам. Читать далее Установка FreePBX в Debian 10

Что лучше: Fedora vs Linux Mint

Linux Mint — это популярный дистрибутив Linux, ориентированный на начинающих пользователей и способный облегчить им переход с Windows на новую операционную систему. Некоторые вещи он делает лучше, чем Ubuntu, благодаря этому подходит для пользователей различной квалификации. Linux Mint поддерживается сообществом и базируется на Ubuntu.

Fedora — это передовой дистрибутив, используемый для тестирования интересных изменений, которые в итоге переходят в Red Hat Enterprise Linux (RHEL). В отличие от Linux Mint, Fedora не ориентирована на личное использование, но существует версия для рабочих станций, которая подойдёт для разработчиков и опытных пользователей Linux. Дальше мы сделаем сравнение Fedora и Linux Mint

Читать далее Что лучше: Fedora vs Linux Mint

Программный raid в Linux

В высоконагруженных производственных серверах жесткие диски и SSD подключены не по отдельности, а объединены в специальные массивы, внутри которых данные физически хранятся на нескольких дисках одновременно, что обеспечивает лучшую сохранность данных при выходе дисков из строя, а также увеличивает скорость записи, так как данные можно записывать не на один диск, а сразу на несколько обходя ограничение скорости каждого диска. Такие массивы называются RAID.

Для создания RAID массивов используются аппаратные специальные контроллеры. Однако создать RAID массив можно и без такого контролера. Такие массивы называются программными. В этой статье мы рассмотрим как создать программный RAID Linux.
Читать далее Программный raid в Linux

Установка Dash to Dock в Ubuntu 20.04

Отличительной особенностью интерфейса Ubuntu является её панель Ubuntu Dock, расположенная слева. Однако разработчики специально скрыли большую часть настроек.

Чтобы это исправить, достаточно установить Dash to Dock в Ubuntu 20.04. Это расширение GNOME. Именно оно и было взято для создания Ubuntu Dock. Мы сравним оба эти расширения и расскажем, как установить оригинальный вариант.

Читать далее Установка Dash to Dock в Ubuntu 20.04

Установка Asterisk в Debian 10

Asterisk – свободный сервер для цифровой телефонии, работающий на базе Linux, FreeBSD, OpenBSD. Использование Asterisk позволяет создать собственную АТС с возможностью гибкой настройки функциональности. Сервер распространяется на условиях двойной лицензии, благодаря которой можно использовать решения как с открытым кодом, так и интегрировать модули с содержанием лицензионного кода.

В этой статье мы рассмотрим как выполняется установка Asterisk Debian 10. В репозиториях Debian как правило, содержится не самая свежая версия Asterisk, так как тысячи людей со всего мира активно развивают проект. Поэтому при установке собственного сервера часто используют компиляцию из исходного кода, что, кроме прочего, позволяет оптимизировать сервер под конкретное окружение Linux или BSD системы, что, в свою очередь, даёт прирост производительности при прочих равных условиях.

Установка Asterisk 16 в Debian 10

Шаг 1. Подготовка

Установите необходимые пакеты и выполните обновление ОС Debian 10

sudo apt -y update && sudo apt -y upgrade

sudo apt install -y build-essential linux-headers-`uname -r` openssh-server mariadb-server mariadb-client bison flex curl sox libncurses5-dev libssl-dev mpg123 libxml2-dev libnewt-dev sqlite3 libsqlite3-dev pkg-config automake libtool autoconf git unixodbc-dev uuid uuid-dev libasound2-dev libogg-dev libvorbis-dev libicu-dev libcurl4-openssl-dev libical-dev libneon27-dev libsrtp2-dev libspandsp-dev subversion libtool-bin python-dev unixodbc dirmngr debhelper cmake libmariadb-dev odbc-mariadb libodb-mysql-dev

4DSYE+l0AAAAAElFTkSuQmCC

 

Шаг 2. Загрузка исходников

Создайте в месте хранения исходных кодов /usr/src директорию asterisk, в которую вы в дальнейшем поместите все исходные файлы и перейдите в неё

sudo mkdir /usr/src/asterisk

AQbMLT1ZWmALAAAAAElFTkSuQmCC

Загрузите исходный код Asterisk16 с официального сайта и распакуйте его:

cd /usr/src/asterisk
wget https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-16-current.tar.gz
sudo tar xvzf asterisk-16-current.tar.gz
sudo rm asterisk-16-current.tar.gz

Шаг 3. Сборка дополнительных библиотек

Если есть оборудование для прямого подключения к серверу с цифровой АТС платами или каналом Е1, то необходимо установить модуль DAHDI и библиотеку LibPRI. Для установки последовательно введите команды ниже:

cd /usr/src/asterisk

wget https://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz

wget https://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz

sudo tar xvzf libpri-current.tar.gz
sudo rm libpri-current.tar.gz
sudo tar xvzf dahdi-linux-complete-current.tar.gz
sudo rm dahdi-linux-complete-current.tar.gz
cd /usr/src/asterisk/dahdi-linux-com*
sudo make
sudo make install
cd /usr/src/asterisk/libpri*
sudo make
sudo make install
sudo ldconfig

Астериск работает с оригинальной полноценной имплементацией протокола SIP, а также может одновременно для разных каналов использовать PJProject – более современную имплементацию протокола SIP. При этом на этапе подготовки к сборке можно указать ключ --with-pjproject-bundled скрипту для сборки проекта, расположенному по адресу /path/asterisk-source-dir/configure

Шаг 4. Установка PJSIP

Перейдите в каталог сборки проекта:

cd /usr/src/asterisk

На момент написания статьи актуальный стабильный релиз PJProject 2.10. Необходимо скачать проект, распаковать и запустить компиляцию из исходного кода. Для этого поочерёдно введите команды:

sudo wget https://github.com/pjsip/pjproject/archive/2.10.tar.gz
sudo tar xvzf 2.10.tar.gz
sudo rm 2.10.tar.gz
cd /usr/src/asterisk/pjproject-*
sudo./configure
sudo make
sudo make dep
sudo make install
sudo ldconfig

wGmPRLupKKEaAAAAABJRU5ErkJggg==

Шаг 5. Подготовка к компиляции Asterisk

Добавьте пользователя asterisk в список Linux пользователей:

sudo useradd asterisk

84AVxVt5CSzgAAAABJRU5ErkJggg==

Перейдите в каталог с исходным кодом asterisk

cd /usr/src/asterisk/asterisk*

QpzYQBnvG8MwyrvqYEU62tiW4qPLrqHBp2G7KJW9mKZss6NLYWjpWyUwrCPlvHmnt7F4TEU62rgxzrSZMwHTURTHbSguQz4JMrmYpgy7VcIwTKejdu0qIsGRFr1JbD6U6VfrICis6mA6nW5TX6jSjllB4x1ImQ16nJzjnKRGa5cWck0V5Roc21VUFHYibxgGFW0pPibVrqVHaKBMPh3rpUaf97RGcAzDwCcG5RmGWnSJZBgGFW2pmELy4WLLgfr+f7dGIlEJhD3NAAAAAElFTkSuQmCC

На момент написания статьи актуальной версией Asterisk 16 является 16.17.9. Сначала необходимо установить оставшиеся зависимости. После выполнения команды:

ls /usr/src/asterisk/asterisk-16.17.0/contrib/scripts

IErFW2jpvMQAAAABJRU5ErkJggg==

Должен появиться вывод приблизительно такой, как на скриншоте выше. В этой директории содержатся несколько исполняемых файлов asterisk, которые необходимо выполнить

/usr/src/asterisk/asterisk-16.17.0/contrib/scripts/get_libc_source.sh

yZ34swbYZHa8CKjximjGduAakWKplwsdb2LThh62D6qgU10Vf0DxLmHNgSZgEUAAAAASUVORK5CYII=

/usr/src/asterisk/asterisk-16.17.0/contrib/scripts/get_mp3_source.sh

AEik6aWCfoiJkUInAJYwSBiyE30OwKJtcnO0IXIg0YHHHppaKrIk4yH00S73GcNkBsJe7CJLFCZSost8PAXR7OYoy4qCzTFxgfOW2YMpDBwxsP8DQJgCEWpIQMwEKCNNn96huAWJBIIDzpHRPpWR3wcIewohngZQJwMEvvnNUUI0EkgkEARwjoz2AYICCQgPiKcBcC4NkUfiMW+Jiv8Dn1QrNvTmDtMAAAAASUVORK5CYII=

/usr/src/asterisk/asterisk-16.17.0/contrib/scripts/get_swagger_ui.sh

yUO7SGCvqlaAAAAAElFTkSuQmCC

/usr/src/asterisk/asterisk-16.17.0/contrib/scripts/install_prereq install

wf4uOh3EWU5WgAAAABJRU5ErkJggg==

В процессе установки зависимостей может потребоваться ввести код страны, для которой устанавливается АТС, временную зону сервера Debian 10. Введите цифры кода без знака «+»

gRRa+DbmTKCt+JXZznZNgt1ys52a82yb1w4C35bqsrYBJ6eEZPc3s50a5xL9H4r0uL2xtsWmAAAAAElFTkSuQmCC

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

8ltHDlOo0Hj2O7A41SjD5oYmGgF7TwAZtaA6FYEQklA56Lsp3R0xEIsgvvAebGll12smwPMLkKY1wLqCgMqfPmNI4tZQRCLoBY4L7b0DEKHEDAPzGsBeP40US9i2zOIRaCvF9Hf3mK7AZAIwDylyOB5AzxQJKAWjdSL6IuFWAR1vwcWz08tsuAiT4CZz4EMuhWBYbHAU6hRPyIspgOxCB58fkIqtLyKCmkATIblUPWBhlpEDCUZqRexTW474f8BYv0aYpZdDUsAAAAASUVORK5CYII=

Шаг 6. Сборка Asterisk из исходного кода

В первую очередь необходимо запустить скрипт сборки проекта, который анализирует установленные в системе пакеты, необходимые asterisk и позволяет их включить в собираемый проект.

/usr/src/asterisk/asterisk-16.17.0/configure --with-pjproject-bundled –with-jansson-bundled

Jansson это ещё один проект, который используется при работе Asterisk. Он позволяет использовать данные JSON, на нем основано много функций гибкого управления АТС и передачи данных во внешние приложения и получения данных из них же.

На следующем этапе создаётся меню, которое позволяет управлять модулями для текущей сборки Asterisk

make menuselect

3Ii0Q6nQ5J4QL8P0fHGJlmS8FYAAAAAElFTkSuQmCC

В этом меню XXX отмечены модули, которые не были найдены в системе.

D1yMF1SW+q1DAAAAAElFTkSuQmCC

Некоторые модули отключены по-умолчанию, но в системе установлены. Если их отметить звёздочкой, то модули будут включены в собираемый проект.

sLgrxFkce4HhzhS3Alkl8iPD3wbex7gk18rfxyVrBnfMDWu4d0sZHGFpODg1vX9ei2KzK5U45Nd11sQM1Jjv+ZztDdrfxwVCrWaP44Nzf8DMimDmGppcB8AAAAASUVORK5CYII=

Особое внимание уделите кодекам, которые будут собраны при сборке проекта. Лучше выделить все доступные, чтобы в дальнейшем не тратить ресурсы сервера на пересборку проекта. После завершения выбора нажмите Save & Exit и последовательно введите команды сборки:

make

make config

make install

make samples

ldconfig

Если после завершения сборки, в директории /lib/systemd/system не появился файл asterisk.service необходимо его туда скопировать командой

sudo cp /usr/src/asterisk/asterisk-16.17.0/contrib/systemd/asterisk.service /lib/systemd/system

Задайте права на исполняемые файлы и создайте необходимые директории

chown asterisk:asterisk /var/run/asterisk

chown -R asterisk:asterisk /etc/asterisk

chown -R asterisk:asterisk /var/{lib,log,spool}/asterisk

chown -R asterisk:asterisk /usr/lib/asterisk

Шаг 7. Запуск Asterisk

По завершении включаем автозагрузку Asterisk при запуске ОС Debian 10 и перезапускаем службу сервера

systemctl enable asterisk

systemctl restart asterisk
Читать далее Установка Asterisk в Debian 10

Лучшие аналоги CPU-Z для Linux

Порой возникает необходимость узнать о том, какие комплектующие стоят в компьютере. Можно разобрать компьютер и своими глазами увидеть используемое железо. Но гораздо проще прибегнуть к специализированным утилитам, собирающим информацию о системе. Для Windows одной из самых популярных программ такого рода стала CPU-Z.

В этой статье мы собрали лучшие аналоги CPU-Z. Для Linux тоже есть программы, позволяющие отобразить информацию об основных узлах системы: процессоре, материнской плате, видеокарте, памяти и накопителях.

Читать далее Лучшие аналоги CPU-Z для Linux

Что такое демоны в Linux

Демоны много работают для того, чтобы вы могли сосредоточится на своем деле. Представьте, что вы пишите статью или книгу. Вы заинтересованны в том, чтобы писать. Удобно, что вам не нужно вручную запускать принтер и сетевые службы, а потом следить за ними весь день для того чтобы убедится, что всё работает нормально.

За это можно благодарить демонов, они делают эту работу за нас. В сегодняшней статье мы рассмотрим что такое демоны в Linux, а также зачем они нужны.


Читать далее Что такое демоны в Linux

Установка Proxmox в Debian 10

Proxmox Virtual Environment это система виртуализации с открытым исходным кодом. В настоящее время Proxmox VE, в релизах выше 4.0 и 3.4, использует гипервизоры KVM и LXC, что позволяет запускать виртуализацию практически любой ОС. Управляется Proxmox VE через удобный веб-интерфейс. Как гипервизор Proxmox VE является высокопроизводительным, виртуальные машины с Linux работают без потерь, другие гостевые ОС вызывают минимальные потери производительности.

Proxmox VE требует поддержки Intel-VT/AMD-V, однако старые дистрибутивы с OpenVZ позволяют запускать виртуализацию Linux без использования виртуализации. Proxmox VE активно использует тома LVM, LVM-Thin, открытые папки сетевых хранилищ и сетевые системы хранения данных. Используя возможности распространения ПО с открытым исходным кодом, Proxmox VE можно загрузить как самостоятельный установщик в ISO образе или устанавливать на Debian из репозиториев. Оплачивается только подписка на техническую поддержку, поэтому Proxmox VE можно использовать как полноценное мощное бесплатное решение для виртуализации. В этой статье мы рассмотрим как установить Proxmox на Debian 10.
Читать далее Установка Proxmox в Debian 10

Установка и настройка Bacula

Резервное копирование - это одна из самых важных вещей если вы управляете серверами или у вас есть хотя бы один свой сервер. Непредвиденная ситуация может произойти в любой момент. Для того чтобы потерять данные не надо никакого особого случая. У вас может выйти из строя жесткий диск, у хостинг провайдера может что-то сломаться, или вы можете сами случайно снести базу данных забыв, что она где-то используется и в ней ещё есть важные данные.

В этой статье мы рассмотрим как выполняется установка и настройка Bacula. Это одна из самых популярных систем резервного копирования для Linux с открытым исходным кодом.
Читать далее Установка и настройка Bacula

Настройка Alertmanager Prometheus

Системы мониторинга наподобие Prometheus устанавливаются не только для того чтобы иметь красивые графики состояния сервера в определённый момент, но чтобы вовремя узнавать о возможных проблемах. Для этого у таких систем существуют уведомления - алерты. Prometheus тоже умеет генерировать алерты на основе настраиваемых правил, однако если состояние сервера совпадает с правилом Prometheus будет генерировать алерт при каждом обновлении.

Это не очень удобное поведение, потому что если проблема будет сохранятся долго, вся почта будет заспамлена однообразными сообщениями. Поэтому существует Alertmanager. Это программа из того же пакета что и Prometheus, она позволяет сортировать алерты и отправлять сообщения только первый раз. В этой статье мы рассмотрим как выполняется настройка Alertmanager Prometheus на примере Ubuntu.
Читать далее Настройка Alertmanager Prometheus