Работа с файловыми дескрипторами.

Предположим, есть проблема с разрастанием файла /var/log/squid/access.log В данном случае понятно, что лог-файл принадлежит процессу squid, в общем случае это может быть не очевидно. Для определения принадлежности файла процессу используется команда lsof: На выходе узнаём, что процесс имеет ID равным 728, владелец proxy, размер файла 1049202. Зная идентификатор процесса становится возможным получить файловые дескрипторы: В

Читать далее

Увеличение размера раздела диска ВМ «на горячую».

Набросок Можно увеличить любой раздел диска без размонтирования, в том числе корневой. Физически увеличили диск В ВМ проверяю, что диск увеличился: lsblk ,  если диск прежнего размера — пересканирую: echo 1 > /sys/block/sda/device/rescan Работаю в fdisk: fdisk /dev/sda Вывожу список разделов: команда p Удаляю нужный раздел: команда d Создаю раздел: команда n Записываю изменения: команда

Читать далее

Шпаргалка по командам django-admin.

Django-admin — это утилита командной строки Django для выполнения административных задач. django-admin check Проверяет весь проект Django на наличие потенциальных проблем. django-admin changepassword Позволяет изменить пароль пользователя. Предлагает дважды ввести новый пароль для указанного пользователя. django-admin clearsessions Может быть запущен как задание cron или напрямую для очистки истекших сессий. django-admin collectstatic Помогает собрать все статические

Читать далее

Настройка программного RAID1 в Linux.

Задача: к серверу подключили два HDD-диска, требуется объединить диски в RAID1.   Для создания данной инфраструктуры используется программа mdadm. Установка программы на Linux семейства Debian: # apt-get install mdadm С дисков удаляются метаданные: # wipefs —all —force /dev/sd{a,b} Создание массива производится командой: # mdadm —create —verbose /dev/md1 -l 1 -n 2 /dev/sd{a,b} Выполнение команды приведёт

Читать далее

Подключение внешнего источника данных 1С Linux.

Задача: подключить внешний источник данных в Конфигураторе 1С. Проблема: Сервер приложений 1С работает под управлением Linux Debian 11, но это не проблема. Подключиться требуется к серверу MS SQL 2008. И вот с этого места начинаются проблемы… Механизм подключения предусматривает использование драйверов ODBC, в этом нет ничего экстраординарного — устанавливаются ODBC-драйверы для требуемой СУБД, настраивается источник

Читать далее

Установка OpenCV + php-opencv

Исходные данные: — сервер Ubuntu 20; — панель Hestia; — установлены две версии PHP: 7.4 и 8.0. Требуется к обеим версиям PHP подключить модуль php-opencv. Если на сервере другая конфигурация, например, установлена одна версия PHP, то могут измениться пути и устанавливаемые пакеты PHP, но принцип остаётся тот же самым. Установка OpenCV из исходных текстов. Устанавливаю

Читать далее

Менеджер процессов PM2.

Для обеспечения непрерывной работоспособности Node.js сервера нужно либо постоянно держать открытой консоль, либо использовать менеджер процессов pm2. Он имеет встроенный балансировщик нагрузки, позволяет следить за потребляемыми ресурсами запущенных процессов, автоматически перезапускать процессы после системного сбоя и т. д. Менеджер процессов pm2 имеется в репозитории npm и должен быть установлен в системе глобально. # npm i -g pm2 Запуск

Читать далее

Замена слова в файле.

Замена слова в файле: sed -i ‘s/original/new/g’ file.txt Объяснение: sed = Stream EDitor -i = на месте (т.е. сохранить обратно в исходный файл) Командная строка: s = команда подстановки original = регулярное выражение, описывающее слово для замены (или просто само слово) new = текст, чтобы заменить его g = глобальный (т.е. заменить все, а не только первое вхождение) file.txt = имя файла

Читать далее

Отказоустойчивый кластер PostgreSQL. Ubuntu18. Debian 10. Debian 11. Debian 12. AstraLinux.

Цель данной статьи заключается в описании процесса создания отказоустойчивого высокодоступного (high availability, HA) кластера PostgreSQL. Используемые программные продукты: Patroni — шаблон для построения отказоустойчивых кластеров на базе PostgreSQL. Обеспечивает автоматическое переключение на резервный сервер при сбое ведущего сервера. Patroni управляет экземпляром базы данных PostgreSQL и использует внешние системы (ZooKeeper, etcd, Consul или Kubernetes) для хранения

Читать далее

Установка и настройка кластера etcd. Ubuntu 18. Debian 10. Debian 11.

Кластер etcd — это распределенное, согласованное хранилище ключей и значений, основной целью которого является совместное использование конфигурации и обнаружение служб. Etcd широко используется во многих распределенных системах. В частности, создание кластера etcd потребовалось для разворачивания отказоустойчивого кластера PostgreSQL. Разворачивать кластер будем на трёх узлах: haproxy, db01, db02 (IP-адреса соответственно: 192.168.10.30, 192.168.10.31, 192.168.10.32). Приступаем… На всех

Читать далее