Silent boot (Español)
Esta página es para aquellos que prefieren limitar el nivel de detalle de mensajes de su sistema a lo estrictamente necesario, ya sea por estética o por otros motivos. Siguiendo esta guía elimina todo el texto lanzado desde el proceso de arranque. Vídeo demostración
Syslinux y Systemd
La sección del kernel en /boot/syslinux/syslinux.cfg
debería mostrar algo como esto:
APPEND root=/dev/sda1 rw 5 init=/usr/lib/systemd/systemd quiet vga=current
vga=current es el argumento del kernel que evita comportamientos extraños como grey flash.
Si todavía está recibiendo mensajes en la consola, se puede indicar a dmesg que limite los mensajes a los que considere importantes. Puede cambiar el nivel en el que estos mensajes serán mostrados usando quiet loglevel=<level>
, donde <level>
es cualquier número entre 0 y 7, 0 es el más crítico y 7 el nivel de depuración de la impresión. Tenga en cuenta que esto solo parece funcionar si tanto quiet
como loglevel=<level>
son utilizados, y deben estar en ese orden («quiet» primero). El parámetro loglevel solo va a cambiar lo que sale impreso en la consola, los niveles propios de dmesg no se verán afectados y seguirán estando disponibles a través de journal, así como con la orden dmesg
. Para más información, véase el archivo Documentation/kernel-parameters.txt y el paquete linux-docs.
Configure el servicio getty como se describe en Automatic login to virtual console (Español).
$ grep Exec /etc/systemd/system/autologin\@.service
... ExecStart=-/sbin/agetty -n -i -a YOUR_USERNAME %I ...
Para eliminar el mensaje lastlog necesita comentar lastlog en /etc/pam.d/login
:
#session optional pam_lastlog.so
También `touch ~/.hushlogin` para eliminar el mensaje Last login.
Para ocultar los mensajes del kernel de la consola o modificar la línea kernel.printk proceda como sigue:
/etc/sysctl.d/20-quiet-printk.conf
kernel.printk = 3 3 3 3
Para ocultar los mensajes de startx
, puede redirigir su salida a /dev/null
, en el archivo .bash_profile, como sigue:
$ [[ $(fgconsole 2>/dev/null) == 1 ]] && exec startx -- vt1 &> /dev/null
Cuestiones pendientes:
- Los apagados de systemd no usan «quiet» - Desde systemd v206, el parámetro del kernel
quiet
es ahora respectado en el apagado, aunque parece que si se utiliza el hookshutdown
de mkinitcpio, función esta que no se ha creado para apoyar aquel parámetro.
GRUB y systemd
Para un arranque sin mensajes utilizando grub, deje que systemd comprobe el sistema de archivos root. Para ello, quite fsck de:
HOOKS=(...)
en /etc/mkinitcpio
, y, después, ejecute:
# mkinitcpio -p linux
Luego, edite /etc/default/grub
y establezca:
GRUB_CMDLINE_LINUX_DEFAULT="ro quiet"
Por último, ejecute:
# grub-mkconfig -o /boot/grub/grub.cfg
Ahora edite los archivos systemd-fsck-root.service
y systemd-fsck@.service
ubicados en /usr/lib/systemd/system/
para configurar StandardOutput y StandardError de este modo:
(...) [Service] Type=oneshot RemainAfterExit=yes ExecStart=/usr/lib/systemd/systemd-fsck StandardOutput=null StandardError=journal+console FsckPassNo=1 TimeoutSec=0
Véase esto para obtener más información sobre las opciones que se pueden pasar a systemd-fsck
- puede cambiar la frecuencia con que el servicio comprobará (o no) los sistemas de archivos.