On Ubuntu Server and Arch I was able to change the following line in /lib/systemd/system/g[email protected]

# Before
ExecStart=-/sbin/agetty -o '-p -- \\u' --noclear %I $TERM


# After
ExecStart=-/sbin/agetty --noissue --autologin john %I $TERM Type=idle

And it works, that it will login to the user john but when I logout of the user john with using exit in the terminal, it logs john back in. Is there a way to change this ExecStart setting to enable auto login for a user on startup but only on startup?

  • @theit8514
    link
    18 months ago

    The likely cause is that agetty itself does not exit when the shell exits, it simply respawns the login command. You can confirm this if the PID of the agetty doesn’t change.

    If it does change (and systemd restarts the agetty process) then you might want to stop the service as one of the Exec statements of the service to prevent it from respawning.