Please note that removing the output of message can also hinder your ability to troubleshoot your system after. You may want to wait until you are in the finishing stages before applying these fixes.
As of December 2016, a lot of the old methods seemed to have stopped working.
I created this question/answer post because it took me many hours to aggregate all the solutions. What I did to remove ALL the boot up text (even login messages):
1.) Change /boot/cmdline.txt
sudo nano /boot/cmdline.txt
Change the console from tty1 to
console=tty3
Add this to the end of the line. 'loglevel=0' removes most of the messages from the boot. You can also use 'loglevel=3', but some boot messages may re-appear.
quiet splash loglevel=0 logo.nologo vt.global_cursor_default=0
If you are going to use Plymouth add this:
plymouth.ignore-serial-consoles
2.) Tell dmesg to be quiet
sudo nano /etc/rc.local
Add this before 'exit 0':
#Suppress Kernel Messages
dmesg --console-off
This should take care of most boot messages this far. #2 also took care of the 'watchdog watchdog0: watchdog did not stop!' message on shutdown for me.
3.) Change the auto login in systemd (Hides the login message when auto-login happens)
sudo nano /etc/systemd/system/autologin\@.service
Change your auto login ExecStart from:
ExecStart=-/sbin/agetty --autologin pi --noclear %I $TERM
To:
ExecStart=-/sbin/agetty --skip-login --noclear --noissue --login-options "-f pi" %I $TERM
Make sure to change 'pi' to the username you use!
4.) Change /etc/pam.d/login (removes the Kernel version from showing when you auto-login)
sudo nano /etc/pam.d/login
Change the line
session optional pam_exec.so type=open_session stdout /bin/uname -snrvm
To be
session optional pam_exec.so type=open_session stdout
5.) Add .hushlogin
touch ~/.hushlogin
or Remove Message of the Day -MOTD (alternative to 5)
sudo update-rc.d motd remove
Now my boot just shows the Plymouth boot screen, and goes into my python GUI.
fbcon=map:2
– Mich Oct 18 '18 at 20:18