85869dbcd4
maintainer. Submitted by: jesusr@ncsa.es
345 lines
13 KiB
Text
345 lines
13 KiB
Text
<!-- $Id: x.sgml,v 1.3 1998-11-26 22:33:33 nik Exp $ -->
|
|
<!-- The FreeBSD Documentation Spanish Project -->
|
|
<sect>
|
|
<heading>El sistema X Windows y las consolas virtuales<label id="x"></heading>
|
|
|
|
<sect1>
|
|
<heading>Quiero ejecutar las X, como lo hago?</heading>
|
|
|
|
<p>La manera mas facil es, simplemente, especificar que quieres usar
|
|
las X durante el proceso de instalacion.
|
|
|
|
<p>Entonces, lee y sigue la documentacion de la herramienta
|
|
<htmlurl url=
|
|
"http://www.freebsd.org/cgi/man.cgi?manpath=xfree86&query=xf86config"
|
|
name="xf86config">, la cual te ayuda a configurar el sistema XFree86 sobre
|
|
las caracteristicas propias de tu sistema (tarjeta de video, raton, etc).
|
|
|
|
<p>Quizas te interesaria investigar y probar el servidor Xaccel,
|
|
disponible a un precio muy razonable. Mira en la seccion
|
|
<ref id="xig" name="Xi Graphics"> para mas detalles.
|
|
|
|
<sect1>
|
|
<heading>Porque no funciona mi raton con las X?<label id="x-and-moused"></heading>
|
|
|
|
<p>Si estas usando syscons (el driver de consola por defecto), puedes
|
|
configurar FreeBSD para soportar un raton en cada consola virtual.
|
|
Para evitar conflictos con las X, syscons soporta un dispositivo
|
|
virtual llamado <tt>/dev/sysmouse</tt>. Todos los eventos recibidos
|
|
desde el mouse real son escritos en el dispositivo sysmouse, usando
|
|
el protocolo MouseSystems. Si quieres usar el raton en una o mas
|
|
consolas virtuales <bf/y/ usar las X, te recomendamos la siguiente
|
|
configuracion:
|
|
|
|
<verb>
|
|
/etc/rc.conf:
|
|
moused_type=ps/2 # or whatever your actual type is
|
|
moused_port=/dev/psm0 # or whatever your real port is
|
|
moused_flags=
|
|
|
|
/etc/XF86Config
|
|
Section Pointer
|
|
Protocol "MouseSystems"
|
|
Device "/dev/sysmouse"
|
|
.....
|
|
</verb>
|
|
|
|
<p>Hay gente que prefiere usar <tt>/dev/mouse</tt> bajo X. Para que
|
|
esto funcione, <tt>/Dev/mouse</tt> debe estar lincado a
|
|
<htmlurl url="http://www.freebsd.org/cgi/man.cgi?sysmouse"
|
|
name="/dev/sysmouse">:
|
|
|
|
<verb>
|
|
# cd /dev
|
|
# rm -f mouse
|
|
# ln -s sysmouse mouse
|
|
</verb>
|
|
|
|
<sect1>
|
|
<heading>Los menus de X Window y cajas de dialogo no funcionan bien.</heading>
|
|
|
|
<p>Intenta desactivar la tecla Num Lock.
|
|
|
|
<p>Si tu tecla Num Lock esta activada por defecto al arrancar el
|
|
sistema, deberias anyadir la siguiente linea en la seccion
|
|
<tt/Keyboard/ del fichero <tt/XF86Config/.
|
|
|
|
<verb>
|
|
# Let the server do the NumLock processing. This should only be
|
|
# required when using pre-R6 clients
|
|
ServerNumLock
|
|
</verb>
|
|
|
|
<sect1>
|
|
<heading>Que es una consola virtual y como creo mas?</heading>
|
|
|
|
<p>Las consolas virtuales te permiten tener sesiones simultaneas
|
|
en la misma maquina sin necesidad de tener montajes complicados
|
|
como una red o ejecucion de X.
|
|
|
|
<p>Cuando el sistema arranca, mostrara el prompt de login en el
|
|
monitor una vez finalizado el mismo. Puedes entonces teclear
|
|
tu login y password y empezar a trabajar (o jugar), en la primera
|
|
consola virtual.
|
|
|
|
<p>En algun momento, es probablemente querras iniciar otra sesion
|
|
, por ejemplo, para mirar la documentacion de un programa que estas
|
|
ejecutando, o para leer el correo mientras esperas que termine una
|
|
sesion ftp que tienes establecida. Solo haz Alt-F2 y encontraras
|
|
un prompt un prompt de login esperandote en la segunda "consola
|
|
virtual". Cuando quieras volver a la sesion original, solo tienes
|
|
que pulsar Alt-F1.
|
|
|
|
<p>La instalacion por defecto de FreeBSD tiene tras consolas
|
|
virtuales activadas, y Alt-F1, Alt-F2 y Alt-F3 cambian entre
|
|
ellas.
|
|
|
|
Para activar mas consolas virtuales, edita <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?ttys" name="/etc/ttys">
|
|
y anyade tantas entradas como consolas virtuales quieras a partir
|
|
de <tt/ttyv4/, despues del comentario "Virtual Terminals":
|
|
|
|
<verb>
|
|
# Edit the existing entry for ttyv3 in /etc/ttys and change
|
|
# "off" to "on".
|
|
ttyv3 "/usr/libexec/getty Pc" cons25 on secure
|
|
ttyv4 "/usr/libexec/getty Pc" cons25 on secure
|
|
ttyv5 "/usr/libexec/getty Pc" cons25 on secure
|
|
ttyv6 "/usr/libexec/getty Pc" cons25 on secure
|
|
ttyv7 "/usr/libexec/getty Pc" cons25 on secure
|
|
ttyv8 "/usr/libexec/getty Pc" cons25 on secure
|
|
ttyv9 "/usr/libexec/getty Pc" cons25 on secure
|
|
ttyva "/usr/libexec/getty Pc" cons25 on secure
|
|
ttyvb "/usr/libexec/getty Pc" cons25 on secure
|
|
</verb>
|
|
|
|
<p>Utiliza tantas consolas como quieras o necesites. Cuantas mas
|
|
consolas tengas, mas recursos utilizas; esto puede ser
|
|
importante si tienes 8MB de RAM o menos. Tambien te puede interesar
|
|
cambiar el modo <tt/secure/ a <tt/insecure/.
|
|
|
|
<p><bf/NOTA IMPORTANTE/ si quieres usar un servidor X <bf/DEBES/
|
|
dejar, al menos, un terminal virtual sin usar (o desactivado).
|
|
|
|
<p>La manera mas facil de desactivar una consola es "apagarla". Por
|
|
ejemplo, para desactivar el terminal 12, cambia esto:
|
|
|
|
<verb>
|
|
ttyvb "/usr/libexec/getty Pc" cons25 on secure
|
|
</verb>
|
|
|
|
<p>por esto:
|
|
|
|
<verb>
|
|
ttyvb "/usr/libexec/getty Pc" cons25 off secure
|
|
</verb>
|
|
|
|
<p>Si tu teclado solo tiene 10 teclas de funcion, tendras que acabar
|
|
con:
|
|
|
|
<verb>
|
|
ttyv9 "/usr/libexec/getty Pc" cons25 off secure
|
|
ttyva "/usr/libexec/getty Pc" cons25 off secure
|
|
ttyvb "/usr/libexec/getty Pc" cons25 off secure
|
|
</verb>
|
|
|
|
<p>(Tambien puedes, simplemente, borrar estas lineas.)
|
|
|
|
<p>Una vez has editado el fichero <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?ttys" name="/etc/ttys">,
|
|
el siguiente paso es asegurarte de que tienes suficientes
|
|
dispositivos de terminales virtuales. La manera mas facil de hacerlo
|
|
es:
|
|
|
|
<verb>
|
|
# cd /dev
|
|
# ./MAKEDEV vty12 # For 12 devices
|
|
</verb>
|
|
|
|
<p>A continuacion, la manera mas facil de activar las consolas
|
|
virtuales es rearrancar el sistema. Si, realmente no quieres
|
|
rearrancarlo, puedes para el servidor de X WIndow y ejecutar
|
|
(como <tt/root/:
|
|
|
|
<verb>
|
|
kill -HUP 1
|
|
</verb>
|
|
|
|
<p>Es imperativo que pares el servidor de X Window si esta
|
|
funcionando, antes de ejecutar este comando. Si no lo haces,
|
|
parecera que tu sistema esta parado/colgado despues de ejecutar
|
|
el comando kill.
|
|
|
|
<sect1>
|
|
<heading>Como accesdo a las consolas virtuales desde X?</heading>
|
|
|
|
<p>Si la consola esta actualmente mostrando X Window, puedes usar
|
|
Ctrl-Alt-F1, etc, para cambiar entre las consolas virtuales. Ten
|
|
en cuenta que una vez pases de una consola X Window a un terminal
|
|
virtual, solo tienes que usar la tecla Alf- para volver a conmutar
|
|
entre terminales virtuales o volver a las X. No necesitas pulsar
|
|
la tecla Ctrl. Si usas la tecla Ctrl para volver a las X en alguna
|
|
de las releases antiguas, puedes encontrarte que la consola de texto
|
|
esta bloqueada. Pulsa la tecla Ctrl de nuevo para desbloquearla.
|
|
|
|
<sect1>
|
|
<heading>Como arranco XDM desde el fichero <tt>/etc/ttys</tt>?</heading>
|
|
|
|
<p>Arrancar el programa <htmlurl url=
|
|
"http://www.freebsd.org/cgi/man.cgi?manpath=xfree86&query=xdm"
|
|
name="xdm"> via <htmlurl url="http://www.freebsd.org/cgi/man.cgi?ttys"
|
|
name="/etc/ttys"> es muy mala idea.
|
|
|
|
<p>Arrancalo desde el fichero <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?rc" name="rc.local"> o
|
|
desde un script <tt/X.sh/ en <tt>/usr/local/etc/rc.d</tt>, y ser
|
|
explicito en como tiene que arrancar. Si esta es tu ultima accion
|
|
en <tt/rc.local/, pon un <tt/sleep 1/ detras, para permitir que
|
|
<tt/xdm/ arranque correctamente antes de que el shell <tt/rc/
|
|
exista.
|
|
|
|
<p><tt/xdm/ deberia ser arrancada sin argumentos.
|
|
|
|
<p><bf/NOTA:/ Una version previa de esta FAQ decia que anyadieses
|
|
las <tt/vt/ que quieres que usen las X en el fichero
|
|
<tt>/usr/X11R6/lib/X11/xdm/Xservers</tt>. Esto no es necesario; las
|
|
X usaran la primera <tt/vt/ libre que encuentren.
|
|
|
|
<sect1>
|
|
<heading>Cuando arranco xconsole obtengo "Couldn't open console".</heading>
|
|
|
|
<p>Si arrancas las <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?manpath=xfree86&query=X"
|
|
name="X"> con <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?manpath=xfree86&query=startx"
|
|
name="startx">, los permisos en /dev/console no seran cambiados,
|
|
resultando en cosas como que <htmlurl
|
|
url="http://www.freebsd.org/cgi/man.cgi?manpath=xfree86&query=xterm"
|
|
name="xterm -C"> y <htmlurl url=
|
|
"http://www.freebsd.org/cgi/man.cgi?manpath=xfree86&query=xconsole"
|
|
name="xconsole"> no funcionen.
|
|
|
|
<p>Esto se debe a la manera en que son fijados los permisos de la
|
|
consola. En un sistema multiusuario, podemos no querer que cualquier
|
|
usuario pueda escribir en la consola de sistema. Para usuarios que
|
|
realizan logins directamente desde una maquina con un VTY, existe
|
|
el fichero
|
|
<htmlurl url="http://www.freebsd.org/cgi/man.cgi?fbtab" name="fbtab">
|
|
para resolver estos problemas.
|
|
|
|
<p>Asegurate de que existe al menos una linea como esta sin comentar:
|
|
|
|
<verb>
|
|
/dev/ttyv0 0600 /dev/console
|
|
</verb>
|
|
|
|
<p>Esta en <htmlurl url="http://www.freebsd.org/cgi/man.cgi?fbtab(5)"
|
|
name="/etc/fbtab"> y asegurara que cualquiera que realice un login
|
|
en <tt>/dev/ttyv0</tt> sera el propietario de la consola.
|
|
|
|
<sect1>
|
|
<heading>Mi raton PS/2 no funciona bien en X.</heading>
|
|
|
|
<p>Tu raton y el driver de raton quizas esten fuera de
|
|
sincronizacion.
|
|
|
|
<p>En versiones 2.2.5 y anteriores, conmutando entre sesiones X y
|
|
sesiones de terminales virtuales, podia provocar una
|
|
desincronizacion. Si el problema ocurre muy amenudo, deberias
|
|
anyadir la siguiente opcion en el fichero de configuracion de tu
|
|
kernel y recompilarlo.
|
|
|
|
<verb>
|
|
options PSM_CHECKSYNC
|
|
</verb>
|
|
|
|
<p>Mira la seccion <ref id="make-kernel" name="creando un kernel">
|
|
si no tienes experiencia en compilar nuevos kernels.
|
|
|
|
<p>En versiones 2.2.6 y posteriores, el chequeo de sincronizacion
|
|
es realizado de otra manera, y es estandard en el driver de raton
|
|
PS/2. Aun asi, en casos extranyos puedes llegar a ver mensajes de
|
|
error de sincronizacion como este:
|
|
|
|
<verb>
|
|
psmintr: out of sync (xxxx != yyyy)
|
|
</verb>
|
|
|
|
y parecer que tu raton no funciona adecuadamente.
|
|
|
|
<p>Si esto ocurre, desactiva el codigo de chequeo de sincronizacion
|
|
poniendo los flags del driver PS/2 a 0x100. Entra en
|
|
<em>UserCOnfig</em> poniendo la opcion <tt>-c</tt> en el prompt
|
|
de arranque:
|
|
|
|
<verb>
|
|
boot: -c
|
|
</verb>
|
|
|
|
Entonces, en la linea de comando de <em>UserConfig</em>, teclea:
|
|
|
|
<verb>
|
|
UserConfig> flags psm0 0x100
|
|
UserConfig> quit
|
|
</verb>
|
|
|
|
<sect1>
|
|
<heading>Mi raton PS/2 de MouseSystems no funciona.</heading>
|
|
|
|
<p>Hemos recibido reportes de que algunos modelos de ratones PS/2 de
|
|
MouseSystems solo trabajan si estan configurados en modo "alta
|
|
resolucion".
|
|
|
|
<p>Desafortunadamente no hay solucion para versiones 2.0.x y 2.1.x.
|
|
En versiones 2.2.x, aplica el siguiente parche en
|
|
<tt>/sys/i386/isa/psm.c</tt> y compila un nuevo kernel.
|
|
|
|
<verb>
|
|
diff -u psm.c.orig psm.c
|
|
@@ -766,6 +766,8 @@
|
|
if (verbose >= 2)
|
|
log(LOG_DEBUG, "psm%d: SET_DEFAULTS return code:%04x\n",
|
|
unit, i);
|
|
+ set_mouse_resolution(sc->kbdc, PSMD_RES_HIGH);
|
|
+
|
|
#if 0
|
|
set_mouse_scaling(sc->kbdc); /* 1:1 scaling */
|
|
set_mouse_mode(sc->kbdc); /* stream mode */
|
|
</verb>
|
|
|
|
<p>En versiones 2.2.6 o posteriores, especifica el flag 0x04 al
|
|
driver PS/2 para poner el raton en modo de alta resolucion. Entra
|
|
en <em>UserConfig</em>:
|
|
|
|
<verb>
|
|
boot: -c
|
|
</verb>
|
|
|
|
y en la linea de comandos teclea:
|
|
|
|
<verb>
|
|
UserConfig> flags psm0 0x04
|
|
UserConfig> quit
|
|
</verb>
|
|
|
|
<p>Mira en la seccion anterior para posibles causas de problemas
|
|
con los ratones.
|
|
|
|
<sect1>
|
|
<heading>Cuando compilo una aplicacion X. <tt/imake/ no puede
|
|
encontrar el fichero <tt/imake.tmpl/. Donde esta?</heading>
|
|
|
|
<p>Imake.tmpl es parte del package Imake, una aplicacion estandar
|
|
de compilacion de X. Tanto Imake como headers y otros ficheros
|
|
necesarios para compilar aplicaciones X estan en la distribucion
|
|
de programacion X. Puedes instalarla desde el sysinstall o
|
|
manualmente desde los ficheros de la distribucion X.
|
|
|
|
<sect1>
|
|
<heading>Como invierto los botones del raton?</heading>
|
|
|
|
<p>Ejecuta el comando <tt/ xmodmap -e "pointer = 3 2 1"/ desde el
|
|
fichero .xinitrc o .xsession.
|
|
|
|
</sect>
|
|
|