Řešení 1:
Se systemd jsou věci jiné. Viz článek Stop Clearing My God Damned Console. Ve zkratce:
mkdir /etc/systemd/system/[email protected]
cat >/etc/systemd/system/[email protected]/noclear.conf <<EOF
[Service]
TTYVTDisallocate=no
EOF
systemctl daemon-reload
Ověřte výsledek pomocí systemctl cat [email protected]
Řešení 2:
Většina požadovaných informací bude v /var/log/dmesg
a /var/log/messages
po nabootování systému byste měli nejprve zkontrolovat tyto soubory.
Obecně na linuxových strojích běží mingetty pro virtuální terminály. Pokud máte tradiční sysv init systém, jsou řízeny /etc/inittab
. Můžete přidat --noclear
možnost mingetty, aby se zabránilo vymazání obrazovky. Chcete-li to provést, upravte /etc/inittab
a změňte tento řádek:
1:2345:respawn:/sbin/mingetty tty1
do
1:2345:respawn:/sbin/mingetty --noclear tty1
poté restartujte počítač.
Některé novější linuxové distribuce používají náhrady init jako Upstart (například Ubuntu). Ty obecně nepoužívají /etc/inittab a místo toho používají některé jiné konfigurační soubory. Zde je diskuse o tom, jak volání mingetty funguje na Ubuntu.
Řešení 3:
Pokud nic jiného nepomohlo, můžete vzít svůj laptop a zachytit celý protokol jádra přes sériovou konzoli přidáním něčeho takového do parametrů jádra:
console=tty0 console=ttyS0,9600n8 console=tty0
To způsobí, že se výstup objeví na sériové konzoli (ve vašem terminálovém programu) a na standardním tty. Někdy je k dispozici SOL (Serial Over LAN).
Řešení 4:
Po hodinách googlování jsem našel řešení v tomto vláknu a této otázce. Tento postup funguje pro Ubuntu 12.04.1 LTS
jak je zde také popsáno, ale nemělo by se příliš lišit pro jiné distribuce.
Nejprve přidejte console=tty1
na váš GRUB_CMDLINE_LINUX
(Doporučuji také přidat noplymouth
zakázat plymouth
a jeho zbytečná úvodní obrazovka).
#> sudo vi /etc/default/grub
GRUB_CMDLINE_LINUX="console=tty1 noplymouth"
To vynutí tisk protokolu jádra na tty1
místo tty7
a vyhněte se tty
přepnout před výzvou k přihlášení.
Pak stačí přejít do /etc/init
a upravit jeden nebo více z tty1.conf
, tty2.conf
, tty3.conf
, tty4.conf
, tty5.conf
, tty6.conf
nebo console.conf
. Upravil jsem je všechny přidáním --noclear
možnost na getty
příkaz. Například úprava tty1.conf
:
#> sudo vi /etc/init/tty1.conf
budete muset nahradit:
respawn
exec /sbin/getty -8 38400 tty1
s:
respawn
exec /sbin/getty -8 38400 --noclear tty1
To je vše, váš systém by se nyní měl spustit v jediném tty
aniž byste jej vyčistili.