# Improve Boot Performance (Español)

## Prefacio

Mejorar el rendimiento de arranque de un sistema puede proporcionar reducido los tiempos de espera de arranque y un medio para aprender más acerca de cómo ciertos ficheros del sistema y scripts interactúan entre sí. Este artículo trata de los métodos globales sobre cómo mejorar el rendimiento de arranque de un sistema.

## Modificación de los archivos de arranque

### /etc/inittab

#### Asíncrono inicio

Nota: El uso de este medio, no hay garantías de que los demonios son todo empezó antes de X. Esto puede causar problemas si la configuración de espera dbus a estar en ejecución (ck-launch-session, gnome, kde, etc).

Los scripts de inicio se puede iniciar asynchronously envés de correr en orden estricto

    # use once instead of wait
    rc::sysinit:/etc/rc.sysinit
    rs:S1:wait:/etc/rc.single
    rm:2345:once:/etc/rc.multi
    rh:06:once:/etc/rc.shutdown
    su:S:once:/sbin/sulogin -p

#### Comentar terminales no utilizadas

Lo que queremos hacer es comentar unas cuantas líneas para que en vez de crear 6 terminales se creen dos (o una, eso decidirlo vosotros). Estas terminales son las que aparecen cuando usamos la combinación de teclas: Ctrl+Alt+F1-6. En general con dos terminales será más que de sobra y nos ahorraremos un poco tiempo (no mucho, no os voy a engañar) durante el arranque.

c1:2345:respawn:/sbin/agetty -8 38400 tty1 linux c2:2345:respawn:/sbin/agetty -8 38400 tty2 linux

1. c3:2345:respawn:/sbin/agetty -8 38400 tty3 linux
2. c4:2345:respawn:/sbin/agetty -8 38400 tty4 linux
3. c5:2345:respawn:/sbin/agetty -8 38400 tty5 linux
4. c6:2345:respawn:/sbin/agetty -8 38400 tty6 linux

Además, considerar el uso de un terminal ligero, como fgetty (mingetty despojados de printfs y compilado con dietlibc).

Note: fgetty no funcionará con sha512 los hashes de contraseñas (MD5 es el valor predeterminado sin embargo), el uso mingetty si desea sha512 apoyo.

     # Pacman -S fgetty

Cambiar las siguientes líneas en `/etc/inittab` para reflejar el uso de <`fgetty`:

     c1: 2345: respawn: / sbin / fgetty tty1 linux
     c2: 2345: respawn: / sbin / fgetty tty2 linux

### /boot/grub/menu.lst

Este archivo le permite modificar la línea de comandos del kernel en el arranque. Un par de maneras de acelerar el tiempo de arranque usando el archivo a modificar el núcleo de línea de comandos es eliminar las entradas de framebuffer, y establecer el nivel de registro de núcleo a un bajo nivel de registro con quiet. Para más parámetros del núcleo y `/boot/grub/menu.lst` ejemplos echa un vistazo a la página de archlinux en GRUB. Eliminar los actuales `vga=` framebuffer entradas resolución y logo.nologo, los parámetros para el kernel que desee:

    kernel /vmlinuz26 root=/dev/disk/by-uuid/UUID ro logo.nologo quiet

### /etc/mkinitcpio.conf

Eliminar los HOOKS que no es necesario, y considerar el uso de sólo la base (a veces es necesario también udev), junto con los módulos que necesite para su dispositivo raíz (y el teclado, en lugar de usbinput).

Más información en el mkinitcpio article.

### /etc/rc.conf

En la sección de la red, asegúrese de que sólo carga la interfaz de red que necesita. La configuración manual de la red es también más rápido que usando dhcp.

A continuación, encontrar y eliminar todos los demonios que no es necesario.

    DAEMONS=(alsa network gdm)

A continuación, mueva su Xdm al frente, y el fondo todos los demonios.

    DAEMONS=(@gdm @alsa @network)

Otra cosa que podría hacer con los demonios es encontrar la mejor solución, o mejor dicho, "más dulce" arreglo.

    DAEMONS=(syslog-ng @acpid arptables iptables network pdnsd @alsa @dbus @mpd @crond @sensors @ntpd @dropboxd)

Usted debe tratar a los antecedentes tantos demonios como sea posible, asegurándose de que iniciar los demonios dependiente después de lo que necesitan (en el ejemplo anterior, pdnsd depende de la red, ntpd y dropboxd dependen pdnsd y de la red, ya que 127.0.0.1 es el servidor DNS) . Usted puede todavía demonios en segundo plano que son requeridos por otras cosas (dbus es requerido por el Xorg), pero necesitan tiempo suficiente para empezar (que puede tomar un poco de experimentación para conseguir que todo funcione bien).

### /etc/rc.sysinit

Este script se encarga de la mayoría de la producción se ve durante el arranque, es decir, se trata de un archivo de configuración del sistema crítico que busca los archivos de otros módulos como rc.conf y carga, establece monta, trata los errores, y trata básicamente a ser su mejor amigo.

Hay ciertas líneas que aquí puede que no necesite. Eliminando o comentando fuera le puede ahorrar algunos segundos como máximo. Hacerlo bajo su propio riesgo. Por ejemplo, si usted no tiene RAID, LVM, o cifrado, entonces no habría necesidad de ninguna línea sobre eso.

También es posible añadir algunos símbolos de unión (&) para que sea asíncrono más, pero tenga cuidado - un montón de cosas que se espera que esté terminada en las partes posteriores de la escritura.

## Compilación de un kernel personalizado

TPara reducir el tiempo de arranque, un núcleo desnudo es una necesidad. leer mas sobre copilar el kernel.

## Additional Resources

- Arch boot process
- udev
- Daemons
- rc.conf
- mkinitcpio
- Maximizing performance
- Systemd

Category:

- Boot process (Español)