8

I am trying to remove boot messages from RPi and want to display a splash screen instead. I succeeded to show a splash screen and removed some boot messages, but it still shows some messages in the console. My cmdline.txt looks like this

  logo.nologo dwc_otg.lpm_enable=0 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait fbcon=map:10 fbcon=font:VGA8x8 vt.global_cursor_default=0 loglevel=3

But while booting it shows these messages on the console

INIT: version 2.88 booting
[info] Using makefile-style concurrent boot in runlevel
[ok] Starting the hotplug events dispatcher: udev
[ok] Synthesizing the initial hot plug events.. done

How I can remove this messages from being displayed while booting. I tried different loglevel, still no luck.

  • The messages you've shown are not from the kernel, they are from init. There are various init systems around used on Raspberry Pi GNU/Linux distros, the two principle ones are Debian's SysV style init, which this looks to be, used on Raspbian wheezy and perhaps Kali (I'm not sure), and Systemd, used on Raspbian jessie and Arch. How you quash init messages at boot depends on which of those you are using, and is better investigated at Unix & Linux, since it is not a pi specific issue. – goldilocks Sep 23 '15 at 13:32
  • A quick solution would be redirecting it to tty console other than tty1 by specifying it in cmdline.txt. (like this one --> console=tty3) so that it doesn't get reflected on screen. It works for me (I'm using an HDMI display). – dhruvvyas90 Sep 23 '15 at 13:37
  • There are aspects of this question that are very RPi-specific. We should make sure there aren't RPi considerations before discouraging legitimate questions, particularly since we're still in Beta limbo. – bobstro Sep 23 '15 at 14:32
  • 1
    @bobstro The means you mention in your answer are in fact not pi specific (beyond being set in cmdline.txt instead of a bootloader config, although the former is really a form of the latter), even if you may not recognize it. However, it's still a decent answer. – goldilocks Sep 23 '15 at 14:41
  • For that to be true, the instructions provided would have to actually work on the RPi. Unless those parameters are included in /boot/cmdline.txt -- which is certainly uncommon if not completely unique among platforms -- instructions found elsewhere may not work at all, regardless of the theory. – bobstro Sep 23 '15 at 14:43
4

I have had great success with the following (as far as quiet boot goes, I haven't tried any splash screens yet)

dwc_otg.lpm_enable=0 console=serial0,115200 console=tty3 loglevel=0 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait logo.nologo quiet splash

I will keep it without markdown so its more easily read. For me this works and only displays a grey box with the three dot loading screen then goes straight to the login prompt.

Raspbian GNU/Linux 8 raspberrypi tty3
raspberrypi login:

If you want tty3 to login automatically:

sudo raspi-config

Select Boot Options, Select Desktop/CLI , Select Console AutoLogin

sudo cp /etc/systemd/system/getty.target.wants/getty@tty{1,3}.service
sudo nano /etc/systemd/system/getty.target.wants/getty@tty3.service

Then on the last line edit DefaultInstance=tty1 to DefaultInstance=tty3

Reference File: cmdline.txt

2

In Jessie, it seems to be enough to comment the lines in /etc/pam.d/login that make reference to printing info after successful login.

Just sudo /etc/pam.d/login and add a # before those uncommented lines.

After this I still have two lines:

Raspbian GNU/Linux 8 raspberrypi tty1

raspberrypi login: pi (automatic login)

I still wasn't able to get rid of those two...

  • I managed to edit/remove "Raspbian GNU/Linux 8 raspberrypi tty1" by editing the file /etc/issue – NoChecksum Jul 4 '17 at 22:58
1

Look at this video, this guy got his Model 1B to boot completely silently using Rasbian Wheezy. He seems to be using one fo the recommendations from the comments above and redirect the output to a different console.

Here are the changes he's made to his /boot/cmdline.txt:

console=tty3 loglevel=3 vt.global_cursor_default=0 logo.nologo

  • 1
    That guy is me. – bobstro Nov 6 '17 at 18:32

Not the answer you're looking for? Browse other questions tagged or ask your own question.