# 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 hook `shutdown` 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.

Category:

- Boot process (Español)