442 lines
18 KiB
Text
442 lines
18 KiB
Text
<!-- $FreeBSD$ -->
|
|
<!-- The FreeBSD Documentation Spanish Project -->
|
|
<sect>
|
|
<heading>El sistema X Windows y las cónsolas virtuales<label id="x"></heading>
|
|
|
|
<sect1>
|
|
<heading>Quiero ejecutar las X, ¿cómo lo hago?</heading>
|
|
|
|
<p>La manera más fácil es, simplemente, especificar que
|
|
quieres usar las X durante el proceso de instalación.
|
|
|
|
<p>Entonces, lee y sigue la documentación 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 características propias de tu sistema (tarjeta de vídeo
|
|
, ratón, etc).
|
|
|
|
<p>Quizás te interesaría investigar y probar el servidor
|
|
Xaccel, disponible a un precio muy razonable. Mira en la sección
|
|
<ref id="xig" name="Xi Graphics"> o
|
|
<ref id="metrox" name="Metro Link"> para más detalles.
|
|
|
|
<sect1>
|
|
<heading>¿Porqué no funciona mi ratón con las X?<label id="x-and-moused"></heading>
|
|
|
|
<p>Si estás usando syscons (el driver de cónsola por
|
|
defecto), puedes configurar FreeBSD para soportar un ratón en cada
|
|
cónsola 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 ratón en una o
|
|
más cónsolas virtuales <bf/y/ usar las X, te recomendamos
|
|
la siguiente configuración:
|
|
|
|
<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 diálogo no funcionan bien.</heading>
|
|
|
|
<p>Intenta desactivar la tecla Num Lock.
|
|
|
|
<p>Si tu tecla Num Lock está activada por defecto al arrancar el
|
|
sistema, deberías añadir la siguiente línea en la
|
|
sección <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>¿Qué es una cónsola virtual y como creo más?</heading>
|
|
|
|
<p>Las cónsolas virtuales te permiten tener sesiones
|
|
simultáneas en la misma máquina sin necesidad de tener
|
|
montajes complicados como una red o ejecución de X.
|
|
|
|
<p>Cuando el sistema arranca, mostrará 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
|
|
cónsola virtual.
|
|
|
|
<p>En algun momento, es probablemente querras iniciar otra sesion
|
|
, por ejemplo, para mirar la documentación de un programa que
|
|
estás ejecutando, o para leer el correo mientras esperas que
|
|
termine una sesión ftp que tienes establecida. Solo haz Alt-F2 y
|
|
encontrarás un prompt un prompt de login esperandote en la segunda
|
|
"cónsola virtual". Cuando quieras volver a la sesión
|
|
original, sólo tienes que pulsar Alt-F1.
|
|
|
|
<p>La instalación por defecto de FreeBSD tiene tres cónsolas
|
|
virtuales activadas, y Alt-F1, Alt-F2 y Alt-F3 cambian entre ellas.
|
|
|
|
Para activar mas cónsolas virtuales, edita <htmlurl
|
|
url="http://www.FreeBSD.org/cgi/man.cgi?ttys" name="/etc/ttys">
|
|
y añade tantas entradas como cónsolas virtuales quieras a
|
|
partir de <tt/ttyv4/, después 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 cónsolas como quieras o necesites. Cuantas
|
|
más cónsolas tengas, más recursos utilizas; esto
|
|
puede ser importante si tienes 8MB de RAM o menos. También 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 más fácil de desactivar una cónsola
|
|
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 función, 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>(También puedes, simplemente, borrar estas líneas.)
|
|
|
|
<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 más fácil
|
|
de hacerlo es:
|
|
|
|
<verb>
|
|
# cd /dev
|
|
# ./MAKEDEV vty12 # For 12 devices
|
|
</verb>
|
|
|
|
<p>A continuación, la manera más fácil de activar
|
|
las cónsolas 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 está
|
|
funcionando, antes de ejecutar este comando. Si no lo haces,
|
|
parecerá que tu sistema está parado/colgado después
|
|
de ejecutar el comando kill.
|
|
|
|
<sect1>
|
|
<heading>¿Cómo accedo a las cónsolas virtuales desde X?</heading>
|
|
|
|
<p>Si la cónsola está actualmente mostrando X Window,
|
|
puedes usar Ctrl-Alt-F1, etc, para cambiar entre las cónsolas
|
|
virtuales. Ten en cuenta que una vez pases de una cónsola 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 cónsola de
|
|
texto está bloqueada. Pulsa la tecla Ctrl de nuevo para
|
|
desbloquearla.
|
|
|
|
<sect1>
|
|
<heading>¿Cómo arranco XDM desde el fichero <tt>/etc/ttys</tt>?</heading>
|
|
|
|
<p>Existen dos escuelas sobre como arrancar el <htmlurl url=
|
|
"http://www.FreeBSD.org/cgi/man.cgi?manpath=xfree86&query=xdm"
|
|
name="xdm">. Una escuela arranca el xdm desde el fichero
|
|
<htmlurl url="http://www.FreeBSD.org/cgi/man.cgi?ttys"
|
|
name="/etc/ttys"> usando el ejemplo dado, mientras que la otra
|
|
simplemente arranca el xdm 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>.
|
|
Ambos métodos son igualmente válidos, y uno puede funcionar
|
|
en situaciones que el otro no. En ambos casos el resultado es el mismo:
|
|
el sistema X Window lanzará un prompt de login gráfico.
|
|
|
|
<p>El método ttys tiene la ventaja de documentar en que vty se
|
|
lanzarán las X pasando la responsabilidad de rearrancar el
|
|
servidor X al hacer el logout al proceso init. El método
|
|
rc.local hace más fácil terminar con el proceso xdm
|
|
en caso de problemas con el servidor X.
|
|
|
|
<p>Si arrancamos desde rc.local, <tt/xdm/ debe ser arrancado sin
|
|
argumentos (como un daemon). xdm debe arrancar DESPUES del proceso
|
|
getty, o ambos entrarán en conflicto bloqueando la
|
|
cónsola. La mejor manera de evitar este problema es tener un
|
|
script que retrase el arranque de xdm durante 10 segundos.
|
|
|
|
<p>Una versión previa de esta FAQ decía que debías
|
|
añadir el <tt/terminal virtual/ usado por las X al fichero
|
|
<tt>/usr/X11R6/lib/X11/xdm/Xservers</tt>. Esto no es necesario: las X
|
|
usarán el primer <tt/terminal virtual/ que encuentre libre.
|
|
|
|
<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 serán 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
|
|
cónsola. En un sistema multiusuario, podemos no querer que
|
|
cualquier usuario pueda escribir en la cónsola de sistema. Para
|
|
usuarios que realizan logins directamente desde una máquina con
|
|
un VTY, existe el fichero
|
|
<htmlurl url="http://www.FreeBSD.org/cgi/man.cgi?fbtab" name="fbtab">
|
|
para resolver estos problemas.
|
|
|
|
<p>Asegúrate de que existe al menos una línea como esta
|
|
sin comentar:
|
|
|
|
<verb>
|
|
/dev/ttyv0 0600 /dev/console
|
|
</verb>
|
|
|
|
<p>Está en <htmlurl
|
|
url="http://www.FreeBSD.org/cgi/man.cgi?fbtab(5)"
|
|
name="/etc/fbtab"> y asegurará que cualquiera que realice un login
|
|
en <tt>/dev/ttyv0</tt> será el propietario de la cónsola.
|
|
|
|
<sect1>
|
|
<heading>Mi ratón PS/2 no funciona bien en X.</heading>
|
|
|
|
<p>Tu ratón y el driver de ratón quizás estén
|
|
fuera de sincronización.
|
|
|
|
<p>En versiones 2.2.5 y anteriores, conmutando entre sesiones X y
|
|
sesiones de terminales virtuales, podía provocar una
|
|
desincronización. Si el problema ocurre muy amenudo,
|
|
deberías añadir la siguiente opción en el fichero
|
|
de configuración de tu kernel y recompilarlo.
|
|
|
|
<verb>
|
|
options PSM_CHECKSYNC
|
|
</verb>
|
|
|
|
<p>Mira la sección <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 sincronización
|
|
es realizado de otra manera, y es estandard en el driver de ratón
|
|
PS/2. Aun así, en casos extraños puedes llegar a ver
|
|
mensajes de error de sincronización como este:
|
|
|
|
<verb>
|
|
psmintr: out of sync (xxxx != yyyy)
|
|
</verb>
|
|
|
|
y parecer que tu ratón no funciona adecuadamente.
|
|
|
|
<p>Si esto ocurre, desactiva el código de chequeo de
|
|
sincronización poniendo los flags del driver PS/2 a 0x100. Entra
|
|
en <em>UserConfig</em> poniendo la opción <tt>-c</tt> en el prompt
|
|
de arranque:
|
|
|
|
<verb>
|
|
boot: -c
|
|
</verb>
|
|
|
|
Entonces, en la línea de comando de <em>UserConfig</em>, teclea:
|
|
|
|
<verb>
|
|
UserConfig> flags psm0 0x100
|
|
UserConfig> quit
|
|
</verb>
|
|
|
|
<sect1>
|
|
<heading>Mi ratón PS/2 de MouseSystems no funciona.</heading>
|
|
|
|
<p>Hemos recibido reportes de que algunos modelos de ratones PS/2 de
|
|
MouseSystems solo trabajan si están configurados en modo "alta
|
|
resolución".
|
|
|
|
<p>Desafortunadamente no hay solución 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 ratón en modo de alta resolución.
|
|
Entra en <em>UserConfig</em>:
|
|
|
|
<verb>
|
|
boot: -c
|
|
</verb>
|
|
|
|
y en la línea de comandos teclea:
|
|
|
|
<verb>
|
|
UserConfig> flags psm0 0x04
|
|
UserConfig> quit
|
|
</verb>
|
|
|
|
<p>Mira en la sección anterior para posibles causas de problemas
|
|
con los ratones.
|
|
|
|
<sect1>
|
|
<heading>Cuando compilo una aplicación X. <tt/imake/ no puede
|
|
encontrar el fichero <tt/imake.tmpl/. ¿Dónde está?</heading>
|
|
|
|
<p>Imake.tmpl es parte del package Imake, una aplicación
|
|
estandard de compilación de X. Tanto Imake como headers y otros
|
|
ficheros necesarios para compilar aplicaciones X están en la
|
|
distribución de programación X. Puedes instalarla desde
|
|
el sysinstall o manualmente desde los ficheros de la distribución
|
|
X.
|
|
|
|
<sect1>
|
|
<heading>¿Cómo invierto los botones del ratón?</heading>
|
|
|
|
<p>Ejecuta el comando <tt/ xmodmap -e "pointer = 3 2 1"/ desde el
|
|
fichero .xinitrc o .xsession.
|
|
|
|
<sect1>
|
|
<heading>¿Cómo instalo un "splash screen" y donde los consigo?</heading>
|
|
|
|
<p>Justo antes de la publicación de FreeBSD 3.1 se añadió
|
|
una nueva característica que permite mostrar "splash screens" durante los
|
|
mensajes de arranque del sistema. Los "splash screen" deben ser un bitmap de
|
|
256 colores (<tt>*.BMP</tt>) o ZSoft PCX (<tt>*.PCX</tt>). Además, deben tener
|
|
una resolución de 320x200 o inferior para poder trabajar en controladoras
|
|
VGA estándars. Si se compila el soporte VESA en el kernel, se pueden usar
|
|
bitmaps de hasta 1024x768. Recordar que el soporte de VESA requiere que la
|
|
opción <tt>VM86</tt> sea compilada en el kernel. El soporte actual
|
|
de VESA puede ser compilado directamente en el kernel con la opción de
|
|
configuración <tt>VESA</tt> o cargando el módulo kld VESA
|
|
durante el arranque.</p>
|
|
|
|
<p>Para usar un "splash screen" necesitas modificar los archivos de
|
|
inicio que controlan el proceso de arranque de FreeBSD. Estos archivos cambiaron
|
|
con FreeBSD 3.2, así que ahora existen dos maneras de cargar un
|
|
"splash screen":
|
|
|
|
<itemize>
|
|
<item>FreeBSD 3.1
|
|
|
|
<p>El primer paso es encontrar una versión bitmap de tu "splash
|
|
screen". La release 3.1 sólo soporta bitmaps de Windows. Una
|
|
vez hayas elegido tu "splash screen" copiala en
|
|
<tt>/boot/splash.bmp</tt>. A continuación necesitas tener
|
|
un archivo <tt>/boot/loader.rc</tt> que contenga las siguientes
|
|
líneas:
|
|
|
|
<verb>
|
|
load kernel
|
|
load -t splash_image_data /boot/splash.bmp
|
|
load splash_bmp
|
|
autoboot
|
|
</verb>
|
|
</item>
|
|
|
|
<item>FreeBSD 3.2+
|
|
|
|
<p>Además de soportar los "splash screens" en formato PCX,
|
|
FreeBSD 3.2 incluye un mejor sistema de configuración
|
|
del proceso de arranque. Si quieres, puedes usar el método
|
|
señalado para FreeBSD 3.1. Si lo haces, y quieres usar PCX,
|
|
reemplaza <tt>splash_bmp</tt> con <tt>splash_pcx</tt>. Si por el
|
|
contrario quieres usar la nueva configuración de arranque,
|
|
necesitas crear un archivo <tt>/boot/loader.rc</tt> que contenga
|
|
las siguientes líneas:
|
|
|
|
<verb>
|
|
include /boot/loader.4th
|
|
start
|
|
</verb>
|
|
|
|
<p>y otro archivo <tt>/boot/loader.conf</tt> que contenga lo
|
|
siguiente:
|
|
|
|
<verb>
|
|
splash_bmp_load="YES"
|
|
bitmap_load="YES"
|
|
</verb>
|
|
|
|
<p>Esto asume que estás usando <tt>/boot/splash.bmp</tt>
|
|
como tu "splash screen". Si quieres usar un archivo PCX,
|
|
copialo a <tt>/boot/splash.pcx</tt>, crea un archivo
|
|
<tt>/boot/loader.rc</tt> como se ha indicado anteriormente, y
|
|
crea un <tt>/boot/loader.conf</tt> que contenga:
|
|
|
|
<verb>
|
|
splash_pcx_load="YES"
|
|
bitmap_load="YES"
|
|
bitmap_name="/boot/splash.pcx"
|
|
</verb>
|
|
</item>
|
|
</itemize>
|
|
|
|
<p>Ahora todo lo que necesitas es un "splash screen". Puedes navegar
|
|
por una inmejorable galería en <htmlurl
|
|
url="http://www.cslab.vt.edu/~jobaldwi/splash/"
|
|
name="http://www.cslab.vt.edu/~jobaldwi/splash/">.</p>
|
|
|
|
</sect1>
|
|
</sect>
|
|
|