Come posso configurare systemd per accedere automaticamente al mio ambiente desktop, preferibilmente senza utilizzare login manager? Sto usando Arch.
Risposta accettata:
Questo è descritto in Arch Wiki:
Crea un nuovo file di servizio simile a [email protected]
copiandolo in /etc/systemd/system/
cp /usr/lib/systemd/system/[email protected] /etc/systemd/system/[email protected]
Questo sostanzialmente copia il già esistente [email protected]
in un nuovo file [email protected]
che può essere liberamente modificato. Viene copiato in /etc/systemd/system
perché è lì che vengono archiviati i file di unità specifici del sito. /usr/lib/systemd/system
contiene file di unità forniti dai pacchetti, quindi non dovresti modificare nulla.
Dovrai quindi collegare simbolicamente a quel [email protected]
al servizio getty per il tty su cui vuoi effettuare l'autologin, ad esempio per tty1:
ln -s /etc/systemd/system/[email protected] /etc/systemd/system/getty.target.wants/[email protected]
Finora, questo è sempre lo stesso del solito [email protected]
file, ma la parte più importante è modificare il [email protected]
per accedere effettivamente automaticamente.
Per farlo, devi solo modificare ExecStart
riga da leggere
ExecStart=-/sbin/agetty -a USERNAME %I 38400
La differenza tra ExecStart
riga in [email protected]
e [email protected]
è solo il -a USERNAME
che dice ad agetty di accedere automaticamente all'utente con il nome utente USERNAME.
Ora devi solo dire a systemd di ricaricare i suoi file daemon e avviare il servizio:
systemctl daemon-reload
systemctl start [email protected]
(Non sono sicuro che il servizio si avvii correttamente se hai già effettuato l'accesso su tty1, il modo più sicuro è probabilmente riavviare invece di avviare il servizio).
Se poi vuoi avviare automaticamente X, inserisci il seguente snippet nel tuo ~/.bash_profile
(tratto di nuovo dal wiki):
if [[ -z $DISPLAY ]] && [[ $(tty) = /dev/tty1 ]]; then
exec startx
fi
Dovrai modificare il tuo ~/.xinitrc
per avviare il tuo ambiente desktop, come farlo dipende dal DE ed è probabilmente descritto anche nel wiki di Arch.