Drivers nvidia en Debian

Logo de nVidiaAhi va mi primera guía enfocada a esta distribución de Linux. Es relativamente larga pero muy detallada precisamente para poder abarcar la mayor cantidad de casos particulares y excepciones que pueden surgir.

Un saludo a los amiguetes de esDebian, que me ayudaron bastante antes de conseguir hacer funcionar mi tarjeta nvidia y decidirme a escribir esta guía.

Se da por sabido que esta guía, así como todo lo que escribo y publico en esta web, está cubierto por la licencia a pie de página, así que… ¡viva el copyleft!.

Para usar una tarjeta gráfica con GPU nVidia existen dos alternativas: usar el driver libre “nv” que facilita xorg o usar el driver propietario de nVidia. Yo siempre recomiendo usar las alternativas libres, pero para obtener el máximo rendimiento no nos quedará otro remedio que usar los drivers propietarios.

Antes que nada aclarar que se presupone que todos los comandos precedidos del símbolo almohadilla (#) se ejecutan con privilegios de superusuario y que la guía es tan larga no porque sea difícil, sino para poder abarcar la mayor cantidad de casos particulares y excepciones y que, pasito a pasito, le sea válida a la mayoría de los usuarios.

Hasta ahí, todo claro, ¿no?. Bien, si has buscado un poco antes de llegar aquí habrás comprobado como existen multitud de métodos para realizar esta tarea, pero para Debian, el mejor y más conveniente es usar el asistente de módulos (vaya un descubrimiento).

El proceso necesita de cuatro pasos:

  1. Tener el código fuente del kernel que estés usando en /usr/src/linux
  2. Instalar el paquete nvidia-glx
  3. Ejecutar modules-assistant
  4. Reconfigurar xorg

Vamos a explicarlos uno por uno

1.Tener el código fuente del kernel que estés usando en /usr/src/linux

Ésto es necesario para que el driver de nvidia se compile correcta y específicamente para tu sistema. Aquí un ejemplo:

 # uname -a Linux mkstation 2.6.17-2-amd64 #1 SMP Wed Sep 13 17:49:33 CEST 2006 x86_64 GNU/Linux # apt-get install linux-headers-2.6.17-2-amd64 # rm /usr/src/linux # ln -s /usr/src/linux/linux-headers-2.6.17-2-amd64 /usr/src/linux

Primero hemos comprobado la versión de nuestro kernel.
Segundo hemos instalado el código fuente de esa versión.
Luego hemos eliminado el enlace simbólico actual
Y finalmente hemos vuelto a crear dicho enlace apuntando al kernel correcto

2.Instalar el paquete nvidia-glx

Aquí tendremos que detenernos un poco. La cosa está así: a día de hoy el paquete no existe en testing pero sí en stable y unstable. No sé cómo estará está situación en el momento en que tú sigas esta guía, así que empezaremos de cero:

Comprobamos si tenemos habilitada la rama non-free en nuestro sources.list

# cat /etc/apt/sources.list |grep non-free

Si no aparece nada es que tendremos que añadirlos. Basta con añadir “non-free” a continuación de main en los repositorios que usemos. En mi caso, para que sirva de referencia, están así:

deb ftp://ftp.fi.debian.org/debian/ testing main contrib non-free deb-src ftp://ftp.fi.debian.org/debian/ testing main contrib non-free

Ahora comprobamos si tenemos disponible el paquete nvidia-glx:

# apt-get install nvidia-glx

Si lo tenemos disponible, genial, APT se pondrá a instalarlo todo automáticamente y aquí acaba el paso 2. Pero si da un error parecido a este nos tocará hacerlo a mano:

 Leyendo lista de paquetes... Hecho Creando árbol de dependencias... Hecho E: No se pudo encontrar el paquete nvidia-glx

Hay varias formas de hacerlo manualmente, pero para mí la más segura es bajar e instalar uno por uno los paquetes que hagan falta. A día de hoy son nvidia-glx, nvidia-kernel, nvidia-kernel-common y linux-image. Pero si esto dejara de ser así, basta con intentar instalar nvidia-glx e ir bajando dependencias conforme las pida. Para instalar paquetes desde sus archivos .deb, tienes que usar el comando dpkg, por ejemplo:

# dpkg -i nvidia-glx_1.0.8776-1_amd64.deb

El paquete linux-image es necesario para que nos deje instalar estos paquetes, por supuesto puedes seguir usando tu kernel actual. Siempre podrás eliminarlo cuando acabe todo el proceso si no quieres arrancarlo accidentalmente al iniciar el PC.

Para encontrar los paquetes .deb basta con entrar en cualquier “mirror” (por ejemplo ftp.fi.debian.org/debian) y navegar por las ramas que encontrarás dentro del directorio “pool”. Asegúrate de que todos los paquetes tienen la misma versión que nvidia-glx.

3.Ejecutar modules-assistant

A partir de aquí todo es muchísimo más fácil y rápido. Si has realizado bien todos los pasos anteriores, ejecutando el siguiente comando deberías tener listo tu nuevo y flamante módulo de nvidia.

# module-assistant auto-install nvidia

Si en este punto no te funciona, deberías revisar el mensaje de error que te devuelva para saber a qué punto volver.

4.Reconfigurar xorg

Wow, esto es aún más fácil que el anterior paso. Ahora sólo tienes que abrir (con permisos de superusuario) el archivo /etc/X11/xorg.conf y buscar una línea parecida a Driver «nv» dentro de la sección “Device” y sustituir “nv” por “nvidia”.

Y ya está.

Ahora, para que todo empiece a funcionar, debes parar y volver a arrancar el servidor X. Ojo, no basta con volver a la pantalla de login, así que pulsa Ctrl + Alt + F1 e ingresa como superusuario. Luego ejecuta el siguiente comando:

# /etc/init.d/xdm restart

Reiniciar el sistema entero consigue el mismo resultado pero es innecesario.

Y si todo ha ido bien, antes siquiera de entrar ya habrás visto el bonito logo de nvidia, síntoma de que todo está funcionando ya. ¡Enhorabuena!

Previous Post Next Post

8 Comments

  • Reply Tae 23 octubre, 2006 at 19:35

    Veo que usaste apt. Existe un frontend en consola para él que tiene la ventaja de recordar las dependencias, de esta forma si desinstalas algo las dependencias serán automáticamente quitadas. Se llama aptitude y se usa casi igual que apt:

    aptitude install <nombre-paquete>

  • Reply Elfo 24 octubre, 2006 at 00:43

    Cuánto tiempo sin comentar por aquí. Te dejo solo y te me pasas a Debian, si es que… :p A mí me paso lo contrario, después de mucho tiempo con Debian y de estar enamorado de ella me pasé a Gentoo por probar algo nuevo, y seguramente sea el SO que invada mi portátil dentro de poco… O no… Ya veremos :p

    Enhorabuena por la guía, sigue así.

    ¡Un saludo!

    P.D. Tal y como dice Tae, te recomiendo que utilices aptitude, conseguirás mejores resultados a la hora de administrar el sistema.

  • Reply Zarem 24 octubre, 2006 at 14:08

    Me lo explica?? No he entendido ná!! jajajajaja. Pa que me meteré a leer estas cosas, aunque escrito por ti leería hasta… (estaba buscando algo soporifero.. pero esta guia sieve :-P). Jajajajaja

  • Reply Yorus 24 octubre, 2006 at 19:44

    Buena guía, si señor. Los pasos son muy similares además a Ubuntu, otro sabor de Debian.

    Zarem, es lo que tiene Membris, que tan pronto pasa de escribir cosas demasiados profundas para los frikis y otras veces cosas demsiado frikis para la gente más profunda ;).

  • Reply Zarem 24 octubre, 2006 at 21:28

    Gracias Yorus por la aclaración, jeje.
    Pero me temo que hay pocas cosas que no sepa del murcianico, lo que pasa es que me encanta chincharle ;-). Y a él le vuelve loquito… a que si bichi?? jajajaja.

  • Reply TilT 29 octubre, 2006 at 13:35

    MembrisH… tú no tenías una x300?

  • Reply Membris Khan 2 noviembre, 2006 at 03:04

    *Tae* y *Elfo*, he probado aptitude pero no he encontrado ninguna ventaja a usar los apt-get y apt-cache de toda la vida, quizás no le he dedicado el tiempo suficiente…

    *Yorus* hacía mucho tiempo que nadie me definía tan bien jeje.

    *Zarem* me conoces bien, si, pero de ahi a que me guste que me chinches… dejémoslo en que no me molesta :p

    *Tilt* mi X300 está vendida, su lugar la ocupa una GeForce 7300

  • Reply Tae 2 noviembre, 2006 at 03:43

    ¿El mejor manejo de las dependencias no es una ventaja? Cierto que es la única que hasta el momento le he encontrado, pero para mi es más que suficiente :)

  • Leave a Reply

    Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.