Архив метки: systemd

Linux: создание coredump памяти процесса, systemd-coredump и Debian

10 марта 2020
 

 Возникла необходимость получить дамп РНР-процесса на Debian 9. Рассмотрим механизм ядра, позволящий создать дамп, и настройку создания дампов в Linux. Ниже будем говорить о создании дампа памяти процесса в Linux, а не дампа ядра при kernel panic – там он иной, см. Kdump на Arch Wiki. Linux Core Dump Ядро создаёт дамп памяти процесса, если… Читать далее »

Linux: постоянное хранение логов в systemd-journald

25 сентября 2019
 

 Имеется AWS EC2, который внезапно перезагрузился. Проблема заключается в том, что файл /var/log/messages неполный, последняя запись в нём – о том, что rsyslog был убит. Но вот кем и как – непонятно. Была надежда увидеть логи в journald, но – сюприз: по умолчанию journald хранит только записи о последней загрузке: [simterm] root@bttrm-stage-console:/home/admin# journalctl –list-boots 0… Читать далее »

Linux: A stop job is running for Session c1 of user setevoy (1min 30s)

15 мая 2019
 

 Имеется свежеустановленная система Arch Linux, но проблема и решение подходят для любого дистрибутива с systemd. При рестартах – висит 1.5 минуты с сообщением вида: A stop job is running for Session c1 of user setevoy (1min 30s) Для проверки того, какой именно процесс мешает нормальному ребуту – после загрузки можно вызвать journalctl с опцией -p5… Читать далее »

Redis: Can’t open the log file: Read-only file system

3 апреля 2019
 

  Имеется новый сервис Redis, который должен работать параллельно с уже существующим. При его запуске – он сообщает, что Can’t open the log file: Read-only file system – хотя права на /var/log правильные, на сам файл лога – тоже. Причина оказалась достаточно неочевидной. Проблема Полностью ошибка выглядит так: [simterm] — Unit redis-cluster.service has begun starting… Читать далее »

OpenVPN – автозапуск подключения на Linux

8 марта 2019
 

 Имеется OpenVNP AS сервер в AWS, и openvnp клиент на Arch Linux (см.OpenVPN: настройка OpenVPN Access Server и AWS VPC peering). Хочется добавить его загрузку и подключение при старте системы. Используем systemd, документация – тут>>>, подходит для любых Linux-систем. Файлы настроек клиента располагаются в /etc/openvpn/client/ (см. WorkingDirectory в содержимом юнит-файла ниже), пока тут пусто: [simterm]… Читать далее »

Linux: редактирование systemd юнит-файлов, рестарт сервиса при падении и уведомление на почту

1 марта 2019
 

 Имеется RabbitMQ сервис, который изредка может упасть. Требуется: перезапускать его, если процесс был завершён с ошибкой отправлять почтовое уведомление об этом событии Настроим это всё через systemd-сервис файл самого RabbitMQ (хотя есть и другие варианты, например – с помощью monit, см. Monit: мониторинг и перезапуск NGINX). Нас интересуют две опции: RestartSec=: задержка при рестарте сервиса… Читать далее »

Linux: systemd сервис для Docker Compose

14 августа 2018
 

 Есть Docker Compose файл, который запускает Prometheus стек. Рабочий каталог Prometheus – /opt/prometheus, в котором находится Compose файл prometheus-compose.yml. Для управления им через systemd – создаём файл /etc/systemd/system/prometheus.service: [Unit] Description=Prometheus stack Requires=docker.service After=docker.service [Service] Restart=always WorkingDirectory=/opt/prometheus ExecStart=/usr/local/bin/docker-compose -f prometheus-compose.yml up ExecStop=/usr/local/bin/docker-compose -f prometheus-compose.yml down [Install] WantedBy=multi-user.target Проверяем. Запускаем: [simterm] # systemctl start prometheus.service [/simterm] Проверяем… Читать далее »

Linux: systemd, NGINX, разделы и порядок загрузки

26 июля 2017
 

 Имеется сервис, в котором работает NGINX и раздел /data, который монтируется при старте интанса как общая файл-шара для машин в VMSS. Подробнее – в посте Azure: VMSS за Load Balancer, renew SSL от Let’s Encrypt, SMB file share и NGINX-proxy. Проблема в том, что сертификаты и файлы настроек NGINX хранятся на подключаемом SMB-разделе, и запуск NGINX происходит того,… Читать далее »

Linux: SysV, Upstart и Systemd – runlevels и общие сведения

5 мая 2016
 

 В течении многих лет в подавляющем большинстве Linux систем использовался менеджер инициализации sysvinit (System V initialization). Затем, в 2006 (10 лет тому, OMG!) в Ubuntu, а затем и в CentOS пришла система Upstart (Ubuntu 6.10), а в 2010 – появилась система Systemd. SysV && Upstart Назначение sysvinit – запуск пространства пользователя: во время загрузки ядро… Читать далее »

Linux: определить init систему – Systemd vs Upstart

4 мая 2016
 

 Поиск по процессам Первый вариант – выполнить ps -aux | [initname]. Например, Ubuntu 12 и 14 используют Upstart: $ ps aux | grep upstart root 354 0.0 0.1 19472 648 ? S 16:31 0:00 upstart-udev-bridge –daemon root 566 0.0 0.1 15256 636 ? S 16:31 0:00 upstart-socket-bridge –daemon root 906 0.0 0.1 15272 644 ?… Читать далее »