Das von systemd standardmäßig für das Öffnen virtueller Terminals genutzte agetty verfügt verglichen mit mingetty nur über einen sehr beschränkten Funktionsumfang. So ist gerade die Option --autologin
von mingetty interessant, wenn man beim Start des Systems automatisch einen Nutzer ohne manuelle Eingaben anmelden möchte. Unter SysVinit ist hierfür folgender Eintrag in der /etc/inittab
erforderlich:
1:2345:respawn:/sbin/mingetty --autologin USER tty1 |
Die Konfiguration unter systemd gestaltet sich dagegen komplett anders, ermöglicht aber eine nicht minder flexible Anpassung:
- Einen Symlink mit Verweis auf
/lib/systemd/system/[email protected]
in/etc/systemd/system
anlegen - Eine Datei
/etc/systemd/system/[email protected]/autologin.conf
wie folgt anlegen:[Service] ExecStart= ExecStart=-/sbin/mingetty --autologin USER %I
Hiernach kann der Dienst neu gestartet werden. Eine laufende X-Sitzung wird damit allerings auch beendet:
systemctl restart getty@tty1.service |
Ab diesem Zeitpunkt wird bei jedem Systemstart der per USER spezifierte Nutzer automatisch angemeldet. Als kleiner Bonus noch eine mögliche Vorgehensweise, um dabei auch automatisch den X-Server zu starten:
if [ -z "$DISPLAY" -a $(tty) = /dev/tty1 ]; then startx fi |
Hier wird geprüft, ob noch kein X-Server gestartet wurde (die Umgebungsvariable $DISPLAY ist andernfalls gesetzt) und ob wir uns gerade auf tty1 befinden, von wo aus üblicherweise der erste X-Server gestartet wird. Einzutragen ist das ganze in die ~/.bash_profile
, nicht in die ~/.bashrc
.
Update: Die nötigen Schritte haben sich deutlich vereinfacht.
I too seen that after yum update. This haeppns if CentOS update initscripts package. This package update rarely, so once changed it will work until they release update for initscripts.
This can be avoided actually, I’ll post an update.