Опубликован системный менеджер GNU Shepherd 1.0.0

Новости мира unix. Хотите узнать секрет вечного счастья? Откройте страницу 246.
Ответить
acolyte
Аватара пользователя
Сообщения: 3571
Зарегистрирован: 20.08.2022

#

Опубликован системный менеджер GNU Shepherd 1.0.0
Дата публикации:Mon, 09 Dec 2024 23:15:04 +0300




Представлен системный менеджер GNU Shepherd 1.0.0 (бывший dmd), сочетающий возможности системы инициализации и инструментария для управления системными сервисами. Отмечается, что присвоение номера 1.0 после 21 года разработки ознаменовало признание готовности проекта и его соответствия требованиям к функциональности современных систем инициализации и сервисных менеджеров.




Проект развивается разработчиками дистрибутива GNU Guix System в качестве альтернативы системе инициализации SysV-init, поддерживающей зависимости. Управляющий демон и утилиты Shepherd написаны на языке Guile (одна из реализаций языка Scheme), который также используется для определения настроек и параметров запуска сервисов. Shepherd уже применяется в дистрибутиве GNU Guix System и нацелен также на использование в GNU/Hurd, но может работать в любой POSIX-совместимой ОС, для которой доступен язык Guile.




Shepherd выполняет работу по запуску и остановке сервисов, учитывая взаимосвязь между сервисами, динамически определяя и запуская сервисы, от которых зависит выбранный сервис. Shepherd также поддерживает определение конфликтов между сервисами и предотвращает их одновременное выполнение. Проект может использоваться как в роли основной системы инициализации (init c PID 1), так и в обособленном виде для управления фоновыми процессами отдельных пользователей (например, для запуска tor, privoxy, mcron и т.п.) с выполнением с правами данных пользователей.



Основные новшества в GNU Shepherd 1.0.0:
  • Добавлена поддержка сервисов, периодически запускающих команды или код на языке Scheme по указанному расписанию.

    В команде "herd status SERVICE" реализован показ высокоуровневой информации о сервисах, такой как PID, команда и адреса на которых принимаются сетевые запросы, а также сводки недавно добавленных в лог сообщений. Кроме того, данная команда теперь показывает применимые к сервису пользовательские действия и информирует о наличии заменяющего сервиса, который будет применён после перезапуска текущего сервиса.


    Команда "herd status root" теперь не является синонимом "herd status" и отображает сведения о корневом процессе shepherd.

    Для платформы Linux предоставлена возможность перезапуска с использованием механизма kexec ("reboot --kexec") для замены ядра Linux без физической перезагрузки.



    Добавлен сервис log-rotation, отвечающий за периодическую ротацию логов и удаление устаревших логов.


    Добавлен сервис system-log, который можно использовать в качестве замены традиционной системы syslogd.

    Добавлен сервис timer для запуска команд в указанное время, по аналогии с утилитой "at". Например, "herd schedule timer at 07:00 -- mpg123 alarm.mp3".

    Добавлен сервис transient для запуска команд в фоне, по аналогии с утилитой systemd-run. Например, "herd spawn transient -d $PWD -- make -j4".


Новость позаимствована с opennet.ru
Ссылка на оригинал: https://www.opennet.ru/opennews/art.shtml?num=62376

Жизнь за Нер'зула!

Ответить