Установка актуальной версии Ansible на Debian 11 Bullseye

Опишу как выполнить установку последний версии Ansible из исходников на Debian 11 Bullseye.
Официальный репозиторий Ansible — https://github.com/ansible/ansible

Для работы последних версий Ansible  требуется версия Python 3.10 и старше. Как поставить последнюю версию Python на Debian можно по этой статье.

 

Установка

# Выполняем установку Ansible при помощи pip для всех пользователей системы:

python3 -m pip install ansible

# Проверить результат установки можно командой:

ansible --version
ansible [core 2.15.2]
  config file = None
  configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python3.11/site-packages/ansible
  ansible collection location = /root/.ansible/collections:/usr/share/ansible/collections
  executable location = /usr/bin/ansible
  python version = 3.11.4 (main, Aug  2 2023, 16:54:45) [GCC 10.2.1 20210110] (/usr/bin/python3)
  jinja version = 3.1.2
  libyaml = True

Читать далее

Как обновить MariaDB до 10.5 на Debian 10 Buster

Переодически нужно обновить MariaDB до 10.5 на Debian 10 и каждый раз вспоминаю как это сделать, поэтому для памятки оставлю как MariaDB до 10.5 и выше на Debian 10 Buster.

 

Добавление репозиторий пакетов APT:

wget https://downloads.mariadb.com/MariaDB/mariadb_repo_setup
chmod +x mariadb_repo_setup
sudo ./mariadb_repo_setup --mariadb-server-version="mariadb-10.5"
sudo apt-get update
ИНФОРМАЦИЯ.  Доступные версии для установки — 10.6, 10.5, 10.4, 10.3 и 10.2, просто в передаваемом параметре mariadb- указываем нужную версию.

 

Для обновления уставноленной версии MariaDB, выполняем команду:

apt-get install --only-upgrade mariadb-server

Читать далее

Как удалить Elasticsearch в Linux

Прежде чем пытаться удалить пакет elasticsearch, важно отключить службу Elasticsearch:

systemctl stop elasticsearch

Как только Elasticsearch будет отключен, удаляем пакет (после удаления файлы конфигурации останутся в соответствующих каталогах):

apt-get remove elasticsearch -y

Очистка файлов конфигурации Elasticsearch:

apt-get --purge autoremove elasticsearch -y

Удаление следующих каталогов вручную также может помочь обеспечить максимально чистое удаление:

rm -rf /var/lib/elasticsearch
rm -rf /etc/elasticsearch

Читать далее

Установка библиотеки JSON-C из исходников на Debian 10 Buster

# Устанавливаем необходимые пакеты зависимостей. Все действия ниже будут выполняться от root.

apt-get install gcc g++ make cmake pkg-config git doxygen valgrind -y

# Скачиваем исходник (оф. репозиторий json-c — https://github.com/json-c/json-c#installprereq), раскаковываем его и переходим в распакованный каталог.

cd /opt
git clone https://github.com/json-c/json-c.git

cd json-c/
mkdir build && cd build

# Конфигурирование сборки.

../cmake-configure --prefix=/usr

# Собираем и устанавливаем пакет.

make && make test
make install

Читать далее

Установка Python 3.9 из исходников на Debian 10 Buster

# Устанавливаем необходимые пакеты зависимостей. Все действия ниже будут выполняться от root.

apt-get update && apt-get upgrade -y
apt-get install apt-get install gcc g++ make libffi-dev libnss3-dev libssl-dev zlib1g-dev

# Скачиваем исходник, раскаковываем его и переходим в распакованный каталог (на момент написания статьи версия 3.9.14).

cd /opt/
wget https://www.python.org/ftp/python/3.9.14/Python-3.9.14.tgz
tar -zxvf Python-3.9.14.tgz
cd Python-3.9.14

# Выполняем конфигурирование.

mkdir build && cd build
../configure --prefix= --enable-optimizations

# Собираем и устанавливаем пакет.

make
make install

Читать далее

Как удалить пакет после «make install» в deb-like Linux системах.

Столкнулся с таким вопросом — как удалить пакет собранный из исходников и установленный make install.

Для памятки оставлю для метода как это сделать, все ниже действия производится на Debian 10 (более чем уверен что все описанное ниже будет применимо для всех deb-like Linux систем).

 

Метод #1 (make uninstall)

В случае если каталог сборки не был удален, то можно попробовать выполнить удаление, командой:

cd $SOURCE_DIR 
sudo make uninstall

В случае если каталог сборки был удален, то можно загрузить его по новой, выполнить сборку (make) и удалить пакет методом #2.

 

Метод #2 (install_manifest.txt)

Если файл install_manifest.txt существует в вашем исходном каталоге, он должен содержать имена файлов каждого отдельного файла, созданного установкой.

Сначала проверяем список файлов и время их обновления:

cd $SOURCE_DIR 
sudo xargs -I{} stat -c "%z %n" "{}" < install_manifest.txt

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

 

Если все в порядке, то собираем файлы в один каталог для удаления:

cd $SOURCE_DIR 
mkdir deleted-by-uninstall
sudo xargs -I{} mv -t deleted-by-uninstall "{}" < install_manifest.txt

Читать далее

Подключение к Exchange Online через PowerShell на Debian 10 Buster

# Устанавливаем powershell c репозиториев Microsoft.

# Download the Microsoft repository GPG keys
wget https://packages.microsoft.com/config/debian/10/packages-microsoft-prod.deb

# Register the Microsoft repository GPG keys
sudo dpkg -i packages-microsoft-prod.deb

# Update the list of products
sudo apt-get update

# Install PowerShell
sudo apt-get install -y powershell
В Debian 10 в репозиториях версия Openssl 1.1.1 и используемые SSL библиотеки этой версии при попытке подключения к Exchange Online приводят к ошибке:

/usr/bin/pwsh: symbol lookup error: /opt/microsoft/powershell/7/libmi.so: undefined symbol: SSL_library_init

Для решения этой проблемы установим версию Openssl 1.0.2u.

# Скачиваем исходник пакета Openssl 1.0.2u,

wget https://github.com/openssl/openssl/archive/OpenSSL_1_0_2u.tar.gz
tar -zxvf OpenSSL_1_0_2u.tar.gz

# Собираем и устанавливаем пакет — Openssl 1.0.2u (устанавливаем в несистемный каталог, чтобы он не перезаписать текущую версию)

cd openssl-OpenSSL_1_0_2u

./config --prefix=/opt/openssl/1.0.2u shared
make test
make clean
make install

# Настраиваем симлинки в /opt/microsoft/powershell/7 для libssl и libcrypto, чтобы они указывали на версии 1.0.2.

ln -sf /opt/openssl/1.0.2u/libssl.so.1.0.0 /opt/microsoft/powershell/7/libssl.so.1.0.0
ln -sf /opt/openssl/1.0.2u/libcrypto.so.1.0.0 /opt/microsoft/powershell/7/libcrypto.so.1.0.0

Читать далее

Установка и настройка SMTP-клиента MSMTP на Debian

# Устанавливаем пакет msmtp и зависимости.

apt-get install msmtp msmtp-mta ca-certificates -y

# Создаем файл конфигурации

nano /etc/msmtprc

# Пример конфигурации msmtp на примере учетной записи Exchange Online (office365)

# ------------------------------------------------------------------------------
# Configuration file
# ------------------------------------------------------------------------------

# A system wide configuration is optional.
# If it exists, it usually defines a default account.
# This allows msmtp to be used like /usr/sbin/sendmail.

# ------------------------------------------------------------------------------
# Accounts
# ------------------------------------------------------------------------------

account exchanceonline
host smtp.office365.com
port 587
from no-reply@contoso.com
auth on
user no-reply@contoso.com
password secret
syslog LOG_MAIL

logfile /var/log/msmtp.log

# ------------------------------------------------------------------------------
# Configurations
# ------------------------------------------------------------------------------

# Use TLS.
tls on
tls_starttls on
tls_trust_file /etc/ssl/certs/ca-certificates.crt

# Set a default account
account default : exchanceonline

aliases /etc/aliases
# ------------------------------------------------------------------------------#

 

Пример как указываются aliases для пользователей (прим. root). Если файл /etc/aliases не существует, то создайте его.

root: admin@contoso.com

Проверить работу и корректность настройки почтового профиля msmtp можно командой:

echo -e "Subject: Test Mail\r\n\r\nThis is a test mail" | msmtp --debug -t admin@contoso.com

Читать далее