Le fichier /etc/inittab
n'est pas utilisé sous systemd
plus longtemps. Si vous le souhaitez, vous pouvez installer systemv
et vous vous trouveriez un tout nouveau inittab
, mais cela reviendrait à reculer comme des crabes.
Vous pouvez à la place éditer le fichier /lib/systemd/system/[email protected]
et changer la ligne
ExecStart=-/sbin/agetty --noclear %I $TERM
à
ExecStart=-/sbin/agetty --noclear -a root %I $TERM
Cela découle simplement de la page de manuel d'agetty, qui indique, entre autres :
-a
,--autologin username
Connectez automatiquement l'utilisateur spécifié sans demander de nom de connexion ni de mot de passe. Le
-f username
l'option est ajoutée au/bin/login
ligne de commande par défaut. Le--login-options
l'option modifie ce comportement par défaut, puis uniquement\u
est remplacé par leusername
et aucune autre option n'est ajoutée à la ligne de commande de connexion.
Pour être sûr, je viens de tester cela sur ma machine virtuelle Debian, et cela fonctionne bien.
NE PAS modifier les unités dans /lib/systemd
directement, car ceux-ci sont gérés par les packages installés et seraient écrasés lors des mises à niveau des packages.
Utilisez plutôt $ sudo systemctl edit [email protected]
pour créer une unité d'accueil au /etc/systemd/system/[email protected]/override.conf
avec le contenu suivant :
[Service]
ExecStart=
ExecStart=-/sbin/agetty --noclear --autologin your_user_name %I $TERM
Il a les mêmes effets que la réponse de @MariusMatutiae, mais ne sera pas touché lors des mises à niveau du système.
La première ligne sélectionne le [Service]
section à remplacer. La deuxième ligne efface explicitement le ExecStart
entrée -- sinon l'original ExecStart
en /lib/systemd
serait toujours efficace, puisque plusieurs ExecStart
les directives sont autorisées dans un seul oneshot
unité de service. Et la dernière ligne définit le nouveau ExecStart
ligne de commande, qui est déjà expliquée dans la réponse de @MariusMatutiae.
Reportez-vous aux pages de manuel de systemd.unit(5) pour plus de détails et d'exemples.