# Start X at login (Español)

Artículos relacionados

- systemd/User (Español)
- Automatic login to virtual console (Español)
- Display Manager (Español)
- Silent boot (Español)
- Xinitrc (Español)

En este artículo se explica cómo hacer que el servidor X se inicie automáticamente después de iniciar sesión en un terminal virtual. Esto se logra mediante la ejecución de la órden startx, cuyo comportamiento se puede personalizar como se describe en el artículo xinitrc, por ejemplo para elegir qué gestor de ventanas será lanzado. Alternativamente, se puede usar un gestor de ventanas para iniciar automáticamente X y proporcionar una pantalla gráfica de acceso.

## Archivos de perfiles de la Shell

Nota: El siguiente procedimiento iniciará X en la misma tty que utiliza para iniciar sesión, condición necesaria para que se mantengan los permisos locales.

- Para Bash, añada lo siguiente al final de `~/.bash_profile`. Si el archivo no existe, utilice una copia de `/etc/skel/.bash_profile`.

- Para Zsh, añada lo siguiente a `~/.zprofile`, en su lugar.

    [[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && exec startx

Nota:

- Se puede reemplazar la comparación `-eq 1` por otra como `-le 3` (de vt1 a vt3) si desea utilizar inicios de sesión gráfica en más de una terminal virtual.
- X siempre se debe ejecutar en la misma tty donde se produjo el inicio de sesión, para conservar la sesión logind. Esto es manejado de forma predeterminada por `/etc/X11/xinit/xserverrc`.

- Para Fish, agregue lo que sigue al final de `~/.config/fish/config.fish`.

    # start X at login
    if status --is-login
        if test -z "$DISPLAY" -a $XDG_VTNR = 1
            exec startx
        end
    end

## Consejos y trucos

- Este método se puede combinar con automatic login to virtual console (Español). Al hacer esto tenemos que establecer dependencias correctas para el servicio autologin de systemd a fin de asegurar que dbus se inicia antes de que se lea ~/.xinitrc y, por lo tanto, comenzado pulseaudio (véase este post).
- Si desea permanecer conectado cuando la sesión X termina, retire `exec`.
- Para redirigir la salida de la sesión X a un archivo, cree un alias:

      alias startx='startx &> ~/.xlog'

Categories:

- X server (Español)
- Boot process (Español)