Difference between revisions of "Start X at login (Español)"

From ArchWiki
Jump to: navigation, search
(categorizing uncategorized page)
(update interlanguage links)
(Tag: wiki-scripts)
(39 intermediate revisions by 6 users not shown)
Line 1: Line 1:
[[Category:Español]]
+
[[Category:X server (Español)]]
{{i18n|Start X at Boot}}
+
[[Category:Boot process (Español)]]
= '''Introducción''' =
+
[[de:Xinitrc]]
 +
[[el:Xinitrc]]
 +
[[en:Xinit]]
 +
[[fr:Startx]]
 +
[[hu:Start X at Boot]]
 +
[[it:Start X at Login]]
 +
[[ja:ログイン時に X を起動]]
 +
[[pt:Start X at Boot]]
 +
[[ru:Xinitrc]]
 +
[[th:Start X at boot]]
 +
[[zh-hans:Xinit]]
 +
[[zh-hant:Start X at Login]]
 +
{{Related articles start (Español)}}
 +
{{Related|systemd/User (Español)}}
 +
{{Related|Automatic login to virtual console (Español)}}
 +
{{Related|Display Manager (Español)}}
 +
{{Related|Silent boot (Español)}}
 +
{{Related|Xinitrc (Español)}}
 +
{{Related articles end}}
  
Se da por supuesto que se trata de una instalación de Arch donde solo se seleccionaron los paquetes ''BASE'', y se quiere iniciar con un entorno gráfico por defecto.
+
En este artículo se explica cómo hacer que el [[X server|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 (Español)|xinitrc]], por ejemplo para elegir qué [[Window manager (Español)|gestor de ventanas]] será lanzado. Alternativamente, se puede usar un [[Display manager (Español)|gestor de ventanas]] para iniciar automáticamente X y proporcionar una pantalla gráfica de acceso.
Dada esta situacion se necesitará un '''Servidor X''' (Xorg), un '''Gestor de Inicio Grafico''' (KDM, GDM, XDM, SLiM) y un '''Gestor de Ventanas''' (KDE, Gnome, XFCE, etc). Seguido de esto, se modificará la configuración editando los scripts de inicio.
 
  
= '''Instalación/Configuración de Xorg''' =
+
==Archivos de perfiles de la Shell==
  
1. Cambiar a modo Superusuario.
+
{{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.}}
  
<pre>$ su</pre>
+
* Para [[Bash]], añada lo siguiente al final de {{ic|~/.bash_profile}}. Si el archivo no existe, utilice una copia de {{ic|/etc/skel/.bash_profile}}.
  
2. Instalar Xorg con Pacman.
+
* Para [[Zsh]], añada lo siguiente a {{ic|~/.zprofile}}, en su lugar.
 +
{{bc|1=<nowiki>
 +
[[ -z $DISPLAY && $XDG_VTNR -eq 1 ]] && exec startx
 +
</nowiki>}}
  
<pre>pacman -S xorg hwdetect xorg-apps</pre>
+
{{Nota|
 +
*Se puede reemplazar la comparación {{ic|-eq 1}} por otra como {{ic|-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 {{ic|/etc/X11/xinit/xserverrc}}.}}
  
 
+
* Para [[Fish]], agregue lo que sigue al final de {{ic|~/.config/fish/config.fish}}.
4. Actualizar la base de datos de HWD.
+
{{bc|1=<nowiki>
 
+
# start X at login
<pre>hwdetect -u</pre>
+
if status --is-login
 
+
    if test -z "$DISPLAY" -a $XDG_VTNR = 1
3. Auto-configuración de Xorg.
+
        exec startx
 
+
    end
<pre>hwdetect -xa</pre>
+
end
 
+
</nowiki>}}
Esto genera automáticente el archivo ''/etc/X11/xorg.conf'', necesario para la configuración de Xorg.
+
== 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 [https://bbs.archlinux.org/viewtopic.php?id=155416 post]).
= '''Modificar el run-level''' =  
+
* Si desea permanecer conectado cuando la sesión X termina, retire {{ic|exec}}.
 
+
* Para redirigir la salida de la sesión X a un archivo, cree un [[alias]]:
1. Cambiar a modo Superusuario.
+
: {{bc|1=alias startx='startx &> ~/.xlog'}}
 
 
<pre>$ su</pre>
 
 
 
2. Abrir ''/etc/inittab'' con algun editor.
 
 
 
<pre>
 
# emacs /etc/inittab
 
# nano /etc/inittab
 
# vi /etc/inittab
 
</pre>
 
 
 
3. Buscar la linea:
 
 
 
<pre>id:3:initdefault:</pre>
 
 
 
4. Cambiar el valor '3' por '5':
 
 
 
<pre>id:5:initdefault:</pre>
 
 
 
5. Guardar los cambios y cerrar el editor.
 
 
 
 
 
 
 
= '''Gestores de Inicio Grafico''' =
 
 
 
1. Cambiar a modo Superusuario.
 
 
 
<pre>$ su</pre>
 
 
 
2. Instalar uno de los siguientes gestores con Pacman(el que más convenga).
 
 
 
<pre>pacman -S xorg-xdm gdm kde-base slim</pre>
 
 
 
De esta manera estarán disponibles en el sistema todos los gestores comentados(si solo quieres instalar uno escribes sólo su nombre).
 
 
 
3. Abrir ''/etc/inittab'' con algun editor.
 
 
 
<pre>
 
# emacs /etc/inittab
 
# nano /etc/inittab
 
# vi /etc/inittab
 
</pre>
 
 
 
4. Buscar una linea similar a (cerca del final):
 
 
 
<pre>x:5:respawn:/usr/X11R6/bin/xdm -nodaemon</pre>
 
 
 
5. Modificar dicha linea segun el Gestor elegido:
 
 
 
== '''GDM''' ==
 
<pre>x:5:respawn:/opt/gnome/sbin/gdm -nodaemon</pre>
 
 
 
== '''KDM''' ==
 
<pre>x:5:respawn:/opt/kde/bin/kdm -nodaemon</pre>
 
 
 
== '''SLiM''' ==
 
<pre>x:5:respawn:/usr/bin/slim >& /dev/null</pre>
 
 
 
6. Guardar los cambios y cerrar el editor.
 
 
 
= '''Gestores de Ventanas''' =
 
 
 
== '''KDE''' ==
 
 
 
1. Cambiar a modo Superusuario.
 
 
 
<pre>$ su</pre>
 
 
 
2. Instalar KDE con Pacman.
 
 
 
<pre>pacman -S kde</pre>
 
 
 
3. Instalar soporte para el idioma español.
 
 
 
<pre>pacman -S kde-i18n-es</pre>
 
 
 
Esta opción estará disponible en el Panel de Control de KDE.
 
 
 
=== 4. Modificar el ''.xinitrc'' (Opcional). ===
 
 
 
4.1 Como usuario normal abir el archivo .xinitrc con algun editor
 
 
 
<pre>
 
# emacs ~/.xinitrc
 
# nano ~/.xinitrc
 
# vi ~/.xinitrc
 
</pre>
 
 
 
4.2 Observar lineas similares a:
 
 
 
<pre>
 
# exec wmaker
 
# exec startkde
 
# exec icewm
 
# exec blackbox
 
# exec fluxbox
 
</pre>
 
 
 
4.3 Descomentar 'exec startkde':
 
 
 
<pre>
 
# exec wmaker
 
exec startkde
 
# exec icewm
 
# exec blackbox
 
# exec fluxbox
 
</pre>
 
 
 
4.4 Guardar los cambios, cerrar el editor.
 
 
 
''Nota: esta modificación determina (por cada usuario) el Gestor de Ventanas por defecto, en caso de usar KDM este permine realizar la eleccion en el login.''
 

Revision as of 07:27, 13 October 2017

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'