Accueil Astuces et Informations GNU Shepherd 0.10 est déjà sorti et voici ses nouveautés

GNU Shepherd 0.10 est déjà sorti et voici ses nouveautés

1
3
GNU Shepherd

GNU Shepherd est un gestionnaire de services

Presque un an après la dernière version, la nouvelle version du gestionnaire de services est sortie GNU Shepherd 0.10 (anciennement connu sous le nom de dmd), qui est développé par les développeurs de la distribution GNU Guix comme alternative à l’initialisation de SysV-init conscient des dépendances du système.

Cette nouvelle version de GNU Shepherd 0.10 représente 132 commits de deux personnes, de plus elle est considérée comme une version, car elle corrige les lacunes et apporte de nouvelles fonctionnalités
Ils aident à comprendre l’état du système.

GNU Shepherd est un gestionnaire de services écrit en Guile qui s’occupe des démons “troupeau” qui s’exécutent sur le système, puisque pfournit des fonctionnalités de l’espace utilisateur de manière asynchrone en tant que services Il peut être utilisé comme initialisation système (PID 1) et également par des utilisateurs non privilégiés pour gérer des démons par utilisateur, par exemple tor, privoxy, mcron.

Il est à noter qu’il prend en charge plusieurs mécanismes de démarrage de démon, y compris inetd et le socket de déclenchement de style systemd. GNU Shepherd est configuré dans le Guile Scheme et peut être étendu dans le même langage. Il est basé sur un modèle de programmation simple, sécurisé en mémoire et sans rappel.

Au cœur du modèle Shepherd d’initialisation de l’espace utilisateur se trouve le concept d’extension, une forme de composabilité dans laquelle les services sont conçus pour chevaucher d’autres services, en les augmentant avec un comportement plus élaboré ou spécialisé selon les besoins.

Principales nouveautés de GNU Shepherd 0.10

Dans cette nouvelle version de GNU Shepherd 0.10 qui est présentée, il ressort que nouveaux états de service intermédiaires : “démarrer” et “arrêter”qui sont affichés en exécutant la commande “herd status” et en déterminant si le service est en cours de démarrage ou d’arrêt (auparavant, seuls les statuts de troupeau étaient pris en charge “en cours d’exécution” et “arrêté”).

Un autre des changements qui se démarque dans la nouvelle version est que le blocage de la réexécution des opérations est prévu “démarrer” et “arrêter” si le service était déjà démarré ou arrêté (auparavant, l’exécution du “SERVICE DE DÉMARRAGE DU TROUPEAU» a entraîné une tentative de démarrage d’une deuxième instance du service).

En plus de cela, on note également que la parallélisation du lancement des dépendances est fournie et services lancés sur le mode «démarrer en arrière-plan», ainsi que la comptabilisation du temps des pannes et des changements d’état de chaque service. Les statistiques cumulées sont affichées lorsque la commande “état du troupeau” est exécutée.

Nous pouvons également constater que la commande “herd log” a été ajoutée pour afficher un journal récapitulatif des événements et une liste de tous les changements dans l’état du service.

Des autres changements qui se démarquent :

  • Ajout de la commande “herd graph” pour générer des données permettant à Graphviz (“herd graph | xdot -“) d’être utilisé pour afficher un graphique visuel des dépendances.
  • La mise en surbrillance des couleurs de la sortie de la commande du troupeau a été implémentée.
  • Ajout de nouveaux services : “monitoring” pour surveiller la consommation de ressources du processus et “repl” pour exécuter l’interface de débogage REPL (read-evaluate-print cycle).
  • L’interface GOOPS (Guile Object Oriented Programming System) est obsolète.

Enfin, pour ceux qui souhaitent pouvoir en savoir plus, vous pouvez consulter les détails dans le lien suivant.

Comment installer GNU Shepherd ?

Pour ceux qui souhaitent essayer GNU Shepherd, comme déjà mentionné, Shepherd est développé en conjonction avec le projet GNU Guix et est utilisé comme système de démarrage Guix.

Bien qu’aussiIl n’est pas possible d’installer Shepherd sur aucune distribution Linux, ainsi pour le cas de ceux qui sont Utilisateurs d’Arch Linux activez simplement le référentiel AUR et tapez la commande suivante :

yay -S shepherd

Pour toutes les autres distributions l’installation peut se faire en compilant le code source et pour cela il suffit d’ouvrir un terminal et de taper dedans :

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

On extrait avec :

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

Nous entrons dans le répertoire avec:

cd shepherd-0.10.0

Et on procède à la compilation avec :

./configure --prefix=/some/where
make
make check
make install