Non è necessario disabilitare i TTY "extra" come in systemd
i getty sono generati su richiesta:vedi man systemd-getty-generator
per dettagli. Si noti che, per impostazione predefinita, questo spawn automatico viene eseguito solo per i VT fino a VT6 (per imitare i tradizionali sistemi Linux).
Come dice Lennart in un post sul blog:
Per rendere le cose più efficienti, i prompt di accesso ora vengono avviati solo su richiesta. Quando si passa ai VT, il servizio getty viene istanziato a [email protected], [email protected] e così via. Dal momento che non dobbiamo più avviare incondizionatamente i processi getty, questo ci consente di risparmiare un po' di risorse e rende l'avvio un po' più veloce.
Se desideri configurare un numero specifico di getty, puoi semplicemente modificare logind.conf
con la voce appropriata, in questo esempio 3:
NAutoVTs=3
Sui sistemi basati su Debian, c'è un file che causa l'avvio di 5 getty extra all'avvio se hai appena creato un server (senza il servizio dbus):
/lib/systemd/system/getty.target.wants/getty-static.service
In esso, dice:
[Service]
Type=oneshot
ExecStart=/bin/systemctl --no-block start [email protected] [email protected] [email protected] [email protected] [email protected]
RemainAfterExit=true
La semplice eliminazione di questo file impedirà la generazione di getty extra. Sentiti libero di accorciare l'elenco se vuoi generare solo un getty in più (per 2 console virt). Nota che ne ottieni automaticamente una su tty1 in modo da avere sempre almeno una console virtuale.
Vedi anche:systemd-logind.service non si avvia se manca dbus
Per disabilitare gettys su particolari TTY 4-6 lasciando eventualmente funzionanti 1-3 e 7-9, esegui:
for i in {4..6}; do
systemctl mask [email protected]${i}.service
done
mask
crea il collegamento simbolico /etc/systemd/system/{name} -> /dev/null
che disabilita di fatto il servizio. Tenta di eseguirlo tramite systemctl start
visualizzerà l'errore Failed to start NAME.service: Unit NAME.service is masked.
Se hai A.service Wants=masked.service
, quindi start A
avrà successo ma genererà anche un errore di inizio dipendenza nel journal.
Se hai B.service Requires=masked.service
, quindi start B
fallirà anche.
Sì, necrorisposta. Saluti.