Prevent the console from clearing the screen?
With systemd things are different. See article Stop Clearing My God Damned Console. In short:
mkdir /etc/systemd/system/[email protected] cat >/etc/systemd/system/[email protected]/noclear.conf <<EOF [Service] TTYVTDisallocate=no EOF systemctl daemon-reload
Verify the result with
systemctl cat [email protected]
Most of the information you want will be in
/var/log/messages after the system boots, you should check those files first.
Generally linux machines run mingetty for the virtual terminals. If you have a traditional sysv init system, those are controlled by
/etc/inittab. You can add the
--noclear option to mingetty to prevent clearing the screen. To do this, edit
/etc/inittab and change this line:
1:2345:respawn:/sbin/mingetty --noclear tty1
then reboot the machine.
Some newer linux distros use init replacements like Upstart (for example, Ubuntu). These generally don't use /etc/inittab and instead use some other config files. Here's a discussion of how calling mingetty works on Ubuntu.
If nothing else helped, you can grab your laptop and capture all the kernel log through serial console by adding something like this to kernel parameters:
console=tty0 console=ttyS0,9600n8 console=tty0
This will cause output to apperar on serial console (in your terminal program) and on standard tty. Sometimes SOL (Serial Over LAN) is available.
After hours of googling, I found the solution in this thread and this question. This procedure works for
Ubuntu 12.04.1 LTS as also described here, but it should not differ too much for other distributions.
console=tty1 to your
GRUB_CMDLINE_LINUX (I also suggest to add
noplymouth to inhibit
plymouth and its useless splashscreen).
#> sudo vi /etc/default/grub GRUB_CMDLINE_LINUX="console=tty1 noplymouth"
This forces the kernel log to be printed on
tty1 instead of
tty7 and avoid the
tty switch before the login prompt.
Then just go into
/etc/init and edit one or more of
console.conf. I edited them all adding
--noclear option to the
getty command. For example, editing
#> sudo vi /etc/init/tty1.conf
you'll have to replace:
respawn exec /sbin/getty -8 38400 tty1
respawn exec /sbin/getty -8 38400 --noclear tty1
That's all, now your system should boot in a single
tty without clearing it.