Objectif
Remplacez systemd par SysV Init comme système d'initialisation sur Debian Stretch
Répartition
Extension Debian
Exigences
Une installation Debian Stretch fonctionnelle avec les privilèges root.
Difficulté
Moyen
Congrès
- # - nécessite que les commandes linux données soient exécutées avec les privilèges root soit directement en tant qu'utilisateur root, soit en utilisant
sudo
commande - $ – nécessite que les commandes linux données soient exécutées en tant qu'utilisateur normal non privilégié
Présentation
Tout le monde n'aime pas systemd, et pour ceux qui ne l'aiment pas, il n'y a vraiment pas beaucoup d'options. C'est particulièrement vrai si vous voulez quelque chose comme un serveur stable. N'ayez crainte, SysV Init est en fait toujours pris en charge sous Debian, et il n'est pas difficile de changer.
**Remarque :** n'essayez pas ceci si vous utilisez GNOME ou un autre environnement de bureau qui dépend fortement de systemd. Cela ne fera que casser votre système.
Ajouter des référentiels Devuan
Cette partie n'est pas strictement nécessaire si vous souhaitez simplement changer de système d'initialisation et laisser systemd installé en tant que couche de compatibilité. Cela fonctionnerait bien. Si vous ne voulez absolument pas systemd sur votre système, vous devez prendre des dispositions pour que les choses qui en dépendent fonctionnent.
Devuan, le fork Debian sans systemd est un peu à la traîne. Leur version Stretch, ASCII, n'est pas prête, et l'exécution des versions de test de Devuan n'est pas très stable pour le moment. Cependant, ils ont construit des packages cruciaux pour que les programmes dépendants de systemd fonctionnent sans lui, et vous pouvez les utiliser dans Debian.
Tout d'abord, créez un nouveau .list
fichier dans /etc/apt/sources.list.d/
pour Devuan. Ensuite, ajoutez-y la ligne suivante.
deb http://packages.devuan.org/devuan/ ascii main
Enregistrez cela et quittez.
Ensuite, vous aurez besoin de la clé de signature Devuan. Saisissez cela avec wget
.
$ cd Downloads $ wget https://devuan.org/os/keyring/[email protected]
Ensuite, importez-le dans Apt.
# apt-key add [email protected]
Épinglez les forfaits Devuan
À moins que vous ne vouliez un hybride Debian / Devuan vraiment bizarre, vous n'aurez besoin d'épingler que les packages Devuan dont vous avez besoin. Créez un fichier, devuan.list
, à /etc/apt/preferences.d/
. Ajoutez-y les lignes suivantes.
Package: * Pin: release a=stable Pin-Priority: 1000 Package: * Pin: release a=ascii Pin-Priority: 2 Package: udisks2 Pin: release a=ascii Pin-Priority: 1001 Package: libudisks2-0 Pin: release a=ascii Pin-Priority: 1001 Package: cgmanager Pin: release a=ascii Pin-Priority: 1001 Package: libcgmanager0 Pin: release a=ascii Pin-Priority: 1001 Package: libpolkit-agent-1-0 Pin: release a=ascii Pin-Priority: 1001 Package: libpolkit-backend-1-0 Pin: release a=ascii Pin-Priority: 1001 Package: libpolkit-gobject-1-0 Pin: release a=ascii Pin-Priority: 1001 Package: policykit-1 Pin: release a=ascii Pin-Priority: 1001
C'est long et ennuyeux, mais cela empêchera beaucoup de choses de se casser une fois que vous aurez supprimé systemd. Mettez à jour avant de continuer.
# apt update
Installer les packages Devuan
La prochaine étape est assez simple. Installez tous les packages que vous venez de configurer.
# apt -t ascii install udisks2 libudisks2-0 cgmanager libcgmanager0 libpolkit-agent-1-0 libpolkit-backend-1-0 libpolkit-gobject-1-0 policykit-1
Installer SysV
Vous êtes enfin prêt à installer SysV. Celui-ci est également assez facile.
# apt install sysvinit-core sysvinit-utils
Ensuite, copiez l'inittab de SysV pour en faire la valeur par défaut du système.
# cp /usr/share/sysvinit/inittab /etc/inittab
Une fois que tout est en place et que vous êtes sûr d'avoir tout installé correctement, redémarrez le système. Vous devriez voir la différence immédiatement dans le processus de démarrage.
Supprimer Systemd
Encore une fois, cette étape est totalement facultative et peut encore casser des choses. Cela retirera systemd et tout ce qui en dépend encore. Vous êtes prévenu.
# apt remove --purge --auto-remove systemd
Si vous souhaitez conserver le changement, ajoutez systemd à vos préférences Apt.
Package: systemd Pin: release * Pin-Priority: -1
Réflexions finales
C'est ça! Votre système Debian est officiellement sans systemd. Espérons que tout le reste fonctionne toujours correctement aussi. Cette méthode est évidemment meilleure avec les serveurs qu'avec les ordinateurs de bureau en raison de la quantité de logiciels de bureau qui reposent sur systemd. Il est également important de garder à l'esprit que les choses peuvent changer. Stretch est à peu près gravé dans le marbre, mais essayer cette procédure ou un équivalent sur Testing ou Sid peut ne pas donner les mêmes résultats.