GNU Shepherd 0.10 уже выпущен, и это его новости

Пастух GNU

GNU Shepherd — сервис-менеджер

Почти через год после последнего релиза вышла новая версия сервис-менеджера Пастырь GNU 0.10 (ранее известный как dmd), который в настоящее время разработан разработчиками дистрибутива GNU Guix в качестве альтернативы инициализации SysV-init с учетом системных зависимостей.

Этот новый выпуск GNU Shepherd 0.10 представляет 132 фиксации из двух человек, плюс считается релизом, так как устраняет недостатки и предоставляет новые возможности

Они помогают понять состояние системы.



GNU Shepherd — это сервис-менеджер, написанный на языке Guile, который следит за «стадными» демонами, работающими в системе, поскольку pпредоставляет пользовательские функции асинхронно в качестве сервисов Он может использоваться в качестве системной инициализации (PID 1), а также непривилегированными пользователями для управления демонами для каждого пользователя, например, tor, privoxy, mcron.



Отмечается, что он поддерживает несколько механизмов запуска демона, включая inetd и триггерный сокет в стиле systemd. GNU Shepherd настроен на схему Guile и может быть расширен на том же языке. Он основан на простой модели программирования, безопасной для памяти и без обратного вызова.

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



Основные новые функции GNU Shepherd 0.10

В представленной новой версии GNU Shepherd 0.10 выделяется то, что новые промежуточные сервисные состояния: «запуск» и «остановка», которые отображаются при запуске команды «стадный статус» и определении того, находится ли служба в процессе запуска или остановки (ранее поддерживались только статусы стада). «работает» и «останавливается»).

Еще одно изменение, которое выделяется в новой версии, заключается в том, что предусмотрена блокировка повторного выполнения операций «старт» и «стоп» была ли служба уже запущена или остановлена ​​(ранее выполнение «СТАДО НАЧАТЬ СЕРВИС» привело к попытке запустить второй экземпляр службы).

В дополнение к этому также подчеркивается, что обеспечивается распараллеливание запуска зависимостей и услуги запущены в режиме «запуск в фоновом режиме«, а также учет времени сбоев и изменений состояния каждой службы. Накопленная статистика отображается при выполнении команды «статус стада».



Мы также можем обнаружить, что была добавлена ​​команда «herd log» для отображения сводного журнала событий и списка всех изменений в состоянии службы.

Из другие изменения которые выделяются:



  • Добавлена ​​команда «herd graph» для генерации данных, которая позволяет использовать Graphviz («herd graph | xdot -») для отображения визуального графика зависимостей.
  • Реализована цветовая подсветка вывода команды стада.
  • Добавлены новые сервисы: «monitoring» для наблюдения за потреблением ресурсов процессом и «repl» для запуска интерфейса отладки REPL (цикл чтения-оценки-печати).
  • Интерфейс GOOPS (система объектно-ориентированного программирования Guile) устарел.

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

Как установить GNU Shepherd?

Для тех, кто заинтересован в возможности попробовать GNU Shepherd, как уже упоминалось, Shepherd разработан совместно с проектом GNU Guix и используется в качестве системы запуска Guix.

Хотя тожеНевозможно установить Shepherd ни в одном дистрибутиве Linux, так что для тех, кто Пользователи Arch Linux просто включите репозиторий AUR и введите следующую команду:

yay -S shepherd

Для всех остальных дистрибутивов установка может быть выполнена путем компиляции исходного кода а для этого достаточно открыть терминал и набрать в нем:

wget https://ftp.gnu.org/gnu/shepherd/shepherd-0.10.0.tar.gz

Мы извлекаем с помощью:

tar -xvf shepherd/shepherd-0.10.0.tar.gz

Входим в каталог с:

cd shepherd-0.10.0

И приступаем к компиляции:

./configure --prefix=/some/where

make

make check

make install




2023-05-14T21:31:00
приложений