Není potřeba deaktivovat "extra" TTY jako v systemd
getty se generují na vyžádání:viz man systemd-getty-generator
pro detaily. Všimněte si, že ve výchozím nastavení se toto automatické spawnování provádí pouze pro VT až do VT6 (k napodobení tradičních systémů Linux).
Jak říká Lennart v příspěvku na blogu:
Aby byly věci efektivnější, výzvy k přihlášení se nyní spouštějí pouze na vyžádání. Když přepnete na VT, služba getty se vytvoří na [email protected], [email protected] a tak dále. Vzhledem k tomu, že již nemusíme bezpodmínečně spouštět procesy getty, umožňuje nám to ušetřit trochu prostředků a o něco rychlejší spouštění.
Pokud si přejete nakonfigurovat konkrétní počet gettys, můžete, stačí upravit logind.conf
s příslušnou položkou, v tomto příkladu 3:
NAutoVTs=3
Na systémech založených na Debianu existuje soubor, který způsobí, že se při spuštění spustí 5 extra getty, pokud jste právě postavili server (bez služby dbus):
/lib/systemd/system/getty.target.wants/getty-static.service
V něm je napsáno:
[Service]
Type=oneshot
ExecStart=/bin/systemctl --no-block start [email protected] [email protected] [email protected] [email protected] [email protected]
RemainAfterExit=true
Pouhým smazáním tohoto souboru zastavíte vytváření dalších getty. Klidně seznam zkraťte, pokud chcete jen vytvořit jednu getty navíc (pro 2 virt konzole). Všimněte si, že jeden automaticky získáte na tty1, takže vždy budete mít alespoň jednu virtuální konzoli.
Viz také:systemd-logind.service se nespustí, pokud chybí dbus
Chcete-li zakázat gettys na konkrétních TTY 4-6 a případně nechat 1-3 a 7-9 funkční, spusťte:
for i in {4..6}; do
systemctl mask [email protected]${i}.service
done
mask
vytvoří symbolický odkaz /etc/systemd/system/{name} -> /dev/null
které účinně deaktivují službu. Pokuste se jej spustit pomocí systemctl start
zobrazí chybu Failed to start NAME.service: Unit NAME.service is masked.
Pokud máte A.service Wants=masked.service
a poté start A
uspěje, ale také vygeneruje chybu spuštění závislosti v žurnálu.
Pokud máte B.service Requires=masked.service
a poté start B
také selže.
Ano, nekroodpověď. Na zdraví.