Había planeado un día de relajación con Portal 2, pero al iniciar Steam (por primera vez en un par de semanas) recibí el siguiente mensaje en la terminal:
Error: API mismatch: the NVIDIA kernel module has version 270.41.19,
but this NVIDIA driver component has version 270.41.06. Please make
sure that the kernel module and all NVIDIA driver components
have the same version.
Confieso que realmente no sé de qué está hablando cuando dice conductor. La versión de nvidia-current
es 270.41.19
. Pensé que era el controlador y el módulo, todo en uno.
Utilizo el X-SWAT PPA y he notado que el nvidia-settings
paquete ha aumentado 275.09.07
. Como esta es solo una aplicación de configuración, no creo que este desajuste tenga nada que ver con esto. Tampoco es la misma versión que el problema que se describe.
Prefiero no volver al controlador estándar de Nvidia, ya que es menos estable en mi GTX580. Acepto una respuesta que toma la configuración manual y hace que se vuelva a compilar cuando el kernel se vuelve a compilar (es decir, algunas herramientas de DKMS) pero tiene que funcionar. No quiero volver al modo de texto cada vez que reinicio después de una actualización del kernel.
Editar: Minecraft funciona sin una sola queja sobre las versiones del controlador. Penumbra muere con aproximadamente el mismo error al ingresar a un juego.
Editar: Esto es lo que estoy tratando en términos de archivos de 32 bits. Todos parecen estar en la versión correcta.
ls -l /usr/lib32/nvidia-current/ | awk '{ print $8 " " $9 " " $10 }'
libcuda.so -> libcuda.so.270.41.19
libcuda.so.1 -> libcuda.so.270.41.19
libcuda.so.270.41.19
libGL.la
libGL.so -> libGL.so.1
libGL.so.1 -> libGL.so.270.41.19
libGL.so.270.41.19
libnvcuvid.so -> libnvcuvid.so.1
libnvcuvid.so.1 -> libnvcuvid.so.270.41.19
libnvcuvid.so.270.41.19
libnvidia-cfg.so -> libnvidia-cfg.so.1
libnvidia-cfg.so.1 -> libnvidia-cfg.so.270.41.19
libnvidia-cfg.so.270.41.19
libnvidia-compiler.so -> libnvidia-compiler.so.1
libnvidia-compiler.so.1 -> libnvidia-compiler.so.270.41.19
libnvidia-compiler.so.270.41.19
libnvidia-glcore.so.270.41.19
libnvidia-ml.so -> libnvidia-ml.so.1
libnvidia-ml.so.1 -> libnvidia-ml.so.270.41.19
libnvidia-ml.so.270.41.19
libnvidia-tls.so.270.41.19
libnvidia-wfb.so.1 -> libnvidia-wfb.so.270.41.19
libnvidia-wfb.so.270.41.19
libOpenCL.so -> libOpenCL.so.1
libOpenCL.so.1 -> libOpenCL.so.1.0
libOpenCL.so.1.0 -> libOpenCL.so.1.0.0
libOpenCL.so.1.0.0
libXvMCNVIDIA_dynamic.so.1 -> libXvMCNVIDIA.so.270.41.19
libXvMCNVIDIA.so -> libXvMCNVIDIA.so.270.41.19
libXvMCNVIDIA.so.1 -> libXvMCNVIDIA.so.270.41.19
libXvMCNVIDIA.so.270.41.19
Edición 2: podría haber encontrado algo.
Al acecho en /usr/lib32/
apropiado (no el nvidia-current
subdirectorio) encontré lo siguiente:
ls -l /usr/lib32/ | awk '{ print $8 " " $9 " " $10 }' | grep 270
libcuda.so.1 -> libcuda.so.270.41.06
libcuda.so.270.41.06
libGL.so.1 -> libGL.so.270.41.06
libGL.so.270.41.06
libnvidia-compiler.so.270.41.06
libnvidia-glcore.so.270.41.06
libnvidia-tls.so.270.41.06
libvdpau.so.1 -> libvdpau.so.270.41.06
libvdpau.so.270.41.06
libvdpau_trace.so -> vdpau/libvdpau_trace.so.270.41.06
Por alguna razón, todo /usr/lib32/nvidia-current/
está en la versión correcta, pero hay un montón de cosas /usr/lib32/
que pueden estar arruinando la fiesta.
Edición 3: Falló el intento de rastrear qué paquete posee estos archivos:
find /usr/lib32 -iname '*270.41.06*' -exec dpkg -S "{}" \;
dpkg-query: no path found matching pattern /usr/lib32/libnvidia-compiler.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/libGL.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/vdpau/libvdpau_nvidia.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/vdpau/libvdpau_trace.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/libvdpau.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/tls/libnvidia-tls.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/libnvidia-tls.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/libcuda.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/libnvidia-glcore.so.270.41.06.
¿Algún consejo sobre cómo debo lidiar con estas versiones rotas? ¿Borra los? ¿Eliminar y luego vincular a ./nvidia-current/
versiones?
/usr/lib32
. Compruebe si se parecen a la misma versión que las primarias de 64 bits. Si difieren, averigüe qué paquete los posee y busque una actualización.Respuestas:
Hacer lo siguiente me lo resolvió en Ubuntu 12.04 de 64 bits con el kernel 3.0.29. Espero eso ayude.
fuente
dpkg --get-selections | grep nvidia
para encontrar los otros paquetes de nvidia que debe purgarAl descubrir que había una carga de archivos viejos que se desmoronaron / usr / lib32 / los saqué del camino con el siguiente comando:
Y reinició X. Esto rompió todo en 3D. Huzzah Usando un comentario anterior, pude ver que había cuatro enlaces rotos:
En lugar de reemplazar manualmente los enlaces de cuatro archivos, fui a Elrond, señor de Rivendell y le encargué que estableciera una comunidad que pudiera atrapar a Morhdorh, subir al Monte Doom y crearme un comando para traerme (y con eso nos significa a todos) y en la oscuridad nos atan.
Suficiente de eso. Aquí está el único comando:
¿No es ella espectacular? Y funcionó. Ahora tengo 4 nuevos enlaces simbólicos brillantes:
Luego verifiqué si todo había funcionado. Antes de reiniciar pensé que debería verificar si los enlaces eran correctos:
Excelente. Entonces el megacomando solo hizo dos enlaces correctamente. Después de buscar un poco más, parece que los
libvdpau
archivos realmente viven/usr/lib32/nvidia-current/vdpau/
. No te metas en este momento:Al menos están correctamente conectados (aunque un poco desgarbados). Es hora de probar.
Editar: Esto funcionó, pero aprendí de mi lucha: Mantenlo simple.
fuente
también solo haz esto:
y entonces:
¡todo está bien!
fuente
Tuve este problema una vez, y es sorprendentemente fácil de solucionar.
Lo siguiente se basa en la memoria irregular, ¡así que tenga cuidado!
Primero necesita ver que las bibliotecas de nvidia en / usr / lib32 / match:
Según lo que describió, lo más probable es que no coincidan con estos. Si este es el caso, debe eliminarlos (con cuidado, use un administrador de archivos, no intente ejecutar rm -rf !!!!!!!!! ) y luego reinstale nvidia-current :).
Esto debería darle las versiones correctas de las bibliotecas y un sistema de trabajo.
fuente
Tuve este problema que afectaba mi lanzador SWTOR en vino. Al leer lo anterior, decidí probar y hacer cosas a través de la interfaz de usuario de Ubuntu. Aquí está la solución simple que funcionó para mí;
Elimine y vuelva a instalar controladores adicionales a través de la interfaz de usuario:
fuente
Después de algunas pruebas encontré que los paquetes:
funciona para todos los núcleos 3.2.0- * y 3.8.0- *,
mientras que los paquetes:
funciona solo para Kernel 3.8.0- *.
Ubuntu jockey todavía recomienda la versión 319 también cuando el kernel 3.2.0- * solo está presente. Entonces un error aquí.
Además los comandos:
o
instale el controlador solo para una versión de kernel para cada versión menor y elimínelo para todas las demás.
Entonces, en mi caso, tengo los siguientes núcleos instalados:
Tengo el controlador solo para:
mientras se inicia con los otros núcleos, los resultados del controlador no están instalados.
Me parece que en algún lugar del paquete hay una indicación incorrecta para construir e instalar solo para algunos núcleos.
En cualquier lugar, emitir el siguiente comando soluciona la situación:
hasta el próximo apt-get install nvidia-current o reconfigure
Hilo: Actualización del controlador de Nvidia : las versiones mixtas de 304.88 y 319.32 están relacionadas con lo mismo, pero no tenía suficiente crédito para publicar allí.
fuente
Esto me sucedió después de instalar el último controlador experimental de Nvidia. Todavía quería probar el último controlador si es posible en lugar de volver a un controlador anterior, así que esto es lo que funcionó para mí:
fuente
Eliminar todos los paquetes de nvidia y volver a instalarlo es, de hecho, la forma más fácil de solucionarlo.
En primer lugar, eliminé todos los paquetes de nvidia con el siguiente comando:
Luego hice un reinicio solo por curiosidad, para ver cómo se vería mi interfaz gráfica: baja resolución y lenta, como se esperaba.
Después de abrir un shell, ejecuto el siguiente comando para instalar nvidia:
Todo funciona de nuevo. Buena suerte.
fuente