Ver la versión completa : [Ayuda] Dos monitores en Linux: problemas con la consola
A ver si alguien puede ayudarme. Gracias por adelantado.
Resulta que he instalado dos monitores en mi ordenador. En nada instalará tres, pero por ahora solo hay dos:
- el monitor principal está conectado a una tarjeta Gigabyte GT520 (en el bus 01:00.0)
- un proyector que no está siempre encendido está conectado a la tarjeta integrada en la placa base (en el bus 00:02.0)
Bien, las Xorg ya está configuradas y el monitor y el proyector funcionan aceptablemente. Tengo un problema menor pero no me preocupa. Vamos: que por ahora estoy satisfecho con la configuración de xorg.conf. Lo digo porque todo lo que he sido capaz de encontrar por inet ha sido cómo configurar Xorg. Vaya por delante: Xorg ya está funcionando bien, no es ese el problema.
He configurado en la BIOS que la Gigabyte sea la tarjeta de vídeo principal, así que cuando se inicia el menú de BIOS y el Grub se muestran en la pantalla principal. Cuando se inicia el sistema gráfico, el kdm (el que te pregunta usuario y contraseña) está en la pantalla principal. Bien.
El problema es todo lo de enmedio: todos los mensajes de inicio de Linux se muestran por el proyector. Así desde el menú de Grub hasta el kdm la pantalla principal se queda en negro. Son unos 30 segundos excepto cuando tiene que pasar un escaneo al ext4 como le ha pasado esta mañana, que entonces se está bien 5 minutos con la pantalla apagada y tengo que encender el proyector para ver qué está pasando.
Al grano: lo que quiero es que los mensajes de inicio de Linux aparezcan en el monitor principal, no en el proyector. ¿Alguien sabe cómo?
Creo que es con una opción de arranque del kernel, no sabría decirte cuál, pero creo que podías especificar el bus de la tarjeta donde deben salir los mensajes del kernel y tal.
¿Qué framebuffer tienes? ¿vesafb, o ese ha quedado ya desfasado? (hace ya unos añitos que no toco linux) Sea el que sea, prueba a buscar en su documentación, que es donde debe estar comentada esa opción.
En la doc del kernel también puede venir algo (y la del FB puede que esté ahí también)
princemegahit
08/02/2012, 15:11
la opción del grub es video=. Probaria con video=nvidiafb a ver si forzandolo a usar el framebuffer de la nvidia, te sale por la nvidia (a menos que la integrada sea tambien otra nvidia)
Aunque creo que si usas nouveau en lugar de nv o el propietario de nvida, entra en conflicto con nvidiafb y no te arrancaran bien las X. No se si existe un nouveaufb.
El nvidiafb siempre ha dado problemas de conflictos, al menos con los drivers binarios, te lo avisaba en el propio make config, si eso ha cambiado recientemente o si con los drivers libres (noveau o nv) no ocurre, ya no sé.
De todas formas, creo que el nvidiafb sólo sirve para tarjetas nvidia muy antiguas, del tipo, TNT2 y tal, y creo que las primeras geforce.
princemegahit
08/02/2012, 15:29
Bueno, yo tengo en este pc una radeon con el 2.6.34.1 asi que no puedo comprobarlo y en el otro tengo una nvidia pero lo tengo con el driver propietario, no con el noveau, porque por mi experiencia el nouveau con tarjetas de la serie GT2xx iba fatal, ahora puede que haya cambiado, asi que no se, aqui hay información al respecto.
http://nouveau.freedesktop.org/wiki/KernelModeSetting
Y efectivamente no es compatible el nvidiafb, aunque creo que si es compatible con geforce modernas, de todas formas, con problemas según el modelo y fabricante.
tanuquillo
08/02/2012, 15:35
misma resolucion en los dos y ubuntu
Gracias por las pistas.
vga=ask parece que ya no se soporta así que ajo y agua
video=nvidiafb no ha cambiado nada, todo se inicia igual (la integrada no es nvidia, o eso creo porque funciona con el driver "intel")
condev=? no sé ni qué poner, he leído las fuentes del kernel y solo sé que ahí va un número entero pero no sé cuál
No estoy usando nouveau, en cuanto instalé xserver-xorg-nvidia el kernel me avisó de conflictos y que iba a dejar de usar nouveau. No sé por qué lo estaba usando antes :confused:
Me estoy dando cuenta de que no sé nada de nada del framebuffer ni de dónde se inician los tty :lamer:
Ah, las consolas en modo texto (las que se acceden con Ctrl+Alt+Fx) también se muestran por el proyector, y si los mesajes de inicio aún podría soportar que estuviesen en el proyector, definitivamente no quiero que las consolas estén ahí.
< - >
misma resolucion en los dos y ubuntu
No has entendido nada de mi problema: en el modo gráfico ambas funcionan bien, cada una con su resolución :brindis:
Creo que ya lo he encontrado:
3. fbcon=map:<0123>
95
96 This is an interesting option. It tells which driver gets mapped to
97 which console. The value '0123' is a sequence that gets repeated until
98 the total length is 64 which is the number of consoles available. In
99 the above example, it is expanded to 012301230123... and the mapping
100 will be:
101
102 tty | 1 2 3 4 5 6 7 8 9 ...
103 fb | 0 1 2 3 0 1 2 3 0 ...
104
105 ('cat /proc/fb' should tell you what the fb numbers are)
106
107 One side effect that may be useful is using a map value that exceeds
108 the number of loaded fb drivers. For example, if only one driver is
109 available, fb0, adding fbcon=map:1 tells fbcon not to take over the
110 console.
111
112 Later on, when you want to map the console the to the framebuffer
113 device, you can use the con2fbmap utility.
114
Está aquí: http://www.mjmwired.net/kernel/Documentation/fb/fbcon.txt
Sí, esa opción parece ser la que tengo que usar si no fuera por...
$ cat /proc/fb
0 inteldrmfb
Así que ya está un poco más claro: solo se está cargando un framebuffer, el de intel. Voy a leer la documentación a ver si encuentro cómo cargar otro.
Cierto, pero sigo pensando que no puedes usar el de nvidia así que mejor que uses uno vesa genérico.
Lo que no sé...es cual se usa ahora, porque surgieron varios. El de toda la vida ha sido vesafb, pero también están vesafb-tng, uvesafb, etc..
princemegahit
08/02/2012, 17:41
si, con el driver propietario no puede usar el nvidiafb, pero puede usar el vesafb.
He activado uvesafb cargándola desde el initramfs, y ahora no sale nada en ninguna de las dos pantallas durante el arranque :D Al hacer cat /proc/fb ahora sí que hay dos framebuffer
~$ cat /proc/fb
0 VESA VGA
1 inteldrmfb
Sospecho que ambos están conectados a la misma tarjeta de vídeo, la intel, y no sé cómo decirle a uvesafb que se conecte a la nvidia...
Que extraño, ¿puede ser que de algún modo la consola se haya activado en el framebuffer "1 inteldrmfb" pero por la salida de la integrada se esté mostrando el "0 VESA VGA"? Bueno o al revés, que se haya activado en el 0 pero por la integrada se esté mostrando el framebuffer 1...
Pero es que me resulta muy extraño que un solo dispositivo tenga dos framebufferes de dos drivers distintos, pero a saber..
En el quote que hice antes del fbcon mencionaba un comando para cambiar en tiempo real en qué framebuffer muestra la consola, prueba a cambiar entre el 0 y el 1 a ver si te sale algo..
efegea, tenías razón: "0 VESA VGA" está conectada a la nvidia:
con2fbmap 2 0
saca la consola 2 por la pantalla de la nvidia, mientras que la consola 1 sigue estando en el proyector. Así que ahora es un problema de activar el modo de vídeo adecuado en la nvidia. Voy a probarlos.
< - >
Solucionado. Resumo los pasos por si le sirve a alguien:
- En Debian hay que instalar los paquetes fbset y v86d para que funcione uvesafb
- Hay que cargar el módulo uvesafb en el kernel desde el principio, configurándolo bien
- Hay que asignar la consola a los framebuffer adecuados con la opción fbcon. En mi caso, quiero las consolas impares en el monitor principal y las pares en el secundario (el proyector)
Comandos (todos como root):
apt-get install fbset v86d
echo uvesafb >> /etc/initramfs-tools/modules
echo "options uvesafb mode_option=800x600-16 scroll=ywrap" > /etc/modprobe.d/uvesafb.conf
update-initramfs -k all -u
(hay que añadir "fbcon=map:01" a las opciones del kernel, por ejemplo, en /etc/default/grub)
update-grub
reboot
¡Muchísimas gracias por vuestra ayuda!
< - >
FUUUUUU!!! Al actualizar el sistema ha dejado de funcionar.
No sé por qué razón a los desarrolladores de uvesafb les ha parecido una buena idea cambiar de repente el parámetro "mode" por "mode_option", y si usas el antiguo mode ya no funciona. Sí, me ha llevado 10 segundos de búsqueda en Google encontrar el motivo, pero ¿po qué lo han hecho? ¿po qué? :cagonto:
Los comandos de más arriba están actualizados.
http://www.youtube.com/watch?v=weMfQGVFEKQ
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions Inc. All rights reserved.