NB: Nvidia ha lanzado una solución oficial; vea la respuesta de ByteCommander , mi propia respuesta y / o la respuesta de Kaz Wolfe .
Al activar Ubuntu 16.04 desde Suspend, aparecen las siguientes fallas gráficas en todas las ventanas, menús contextuales y similares:
Actualmente se sabe que esto afecta las siguientes tarjetas NVIDIA que ejecutan los controladores propietarios:
- NVIDIA GeForce 610M, versión del controlador 375.39, 340.102
- NVIDIA GT 630M, versión del controlador 375.39
- NVIDIA GTX 650, versión del controlador 375.39
- NVIDIA GT 740M, versión del controlador 378.13
- NVIDIA GTX 745, versión desconocida del controlador
- NVIDIA GTX 850M, versión del controlador 375.39, 378.13
- NVIDIA GT 940M, versión del controlador 375.39
- NVIDIA GTX 950M, versión desconocida del controlador
- NVIDIA GTX 960M, versión del controlador 378.13
- NVIDIA GTX 970, versión del controlador 375.39
- NVIDIA GTX 970M, versión del controlador 375.39
- NVIDIA GTX 980 TI, versión desconocida del controlador
- NVIDIA GTX 1060, versión del controlador 375.26, 375.39, 378.09
- NVIDIA GTX 1070, versión del controlador 378.09
La lista anterior se ha obtenido de informes de otros usuarios aquí en AU, este hilo y este hilo.
NB: Esto no significa una lista exclusiva. Probablemente afecta a casi todas las tarjetas de Nvidia.
Además, este problema se ha replicado en una instalación limpia donde el único cambio fue una actualización de software y la instalación de los últimos controladores NVIDIA.
¿Qué está pasando y cómo se puede resolver?
nvidia
graphics
suspend
visual-artifacts
Android Dev
fuente
fuente
lspci -k | grep -iEA3 '3d|vga'
la cual contiene toda la información solicitada. Gracias.nvidia-367
controlador que utilicé se convirtió en un paquete de transición que se actualiza automáticamentenvidia-375
, que era una de las versiones que causaban este error. Es hora de regañar a nvidia y escribir informes de errores.GeForce GTX 950M
.Respuestas:
NB: Esta fue una solución temporal hasta que Nvidia lanzó un controlador parcheado. Desplácese hacia abajo para encontrar las otras respuestas con la solución real. - Android Dev
Tengo el mismo problema con la GPU: Nvidia GTX 970 con el controlador nvidia 375.39 en Ubuntu 16.04.2 LTS
He observado esto desde una actualización reciente del controlador nvidia. Por lo tanto, sospecho que es un error en el controlador.
Encontré una respuesta en la pizarra de nvidia . Es un error confirmado en el controlador y, aparentemente, nvidia ya está trabajando en ello. Mientras tanto, uno puede reiniciar compiz con
para deshacerse de los artefactos.
El error se encuentra en el sistema de seguimiento de errores de Ubuntu, que incluye una secuencia de comandos de solución alternativa para reiniciar automáticamente compiz después de reanudar.
fuente
compiz --replace
no se comporta bien con espacios de trabajo. Pone todas las ventanas de todos los espacios de trabajo en el primer espacio de trabajo :(ACTUALIZACIÓN 2:
Nvidia ahora también actualizó sus
nvidia-375
controladores a la versión 375.66 , que está disponible en los repositorios estándar de Ubuntu de todas las versiones compatibles actualmente .Eso significa que, de ahora en adelante, ya no debería tener que realizar ninguna acción especial , excepto hacer las actualizaciones normales del sistema como siempre. No necesita el paquete de controladores del
graphics-drivers
PPA si no los quiere.Aquí está el extracto del registro de cambios para el paquete de los repositorios principales en 16.04 con respecto a este error:
ACTUALIZAR:
Nvidia finalmente ha solucionado este problema y lanzó una nueva versión de controlador que funciona:
nvidia-381
La solución descrita en esta respuesta también se ha actualizado y ahora sugiere actualizar a esta versión fija en lugar de degradar a la última versión antes del error. Sin embargo, sigue siendo el mismo procedimiento, solo cambia los nombres de los paquetes.
Causa del problema:
Algunos de los paquetes de controladores gráficos de Nvidia patentados para Ubuntu (a saber,
nvidia-375
ynvidia-378
) tienen errores y producen los artefactos blancos alrededor de los bordes de las ventanas que se muestran en las capturas de pantalla de la pregunta. Esto sucede de manera reproducible cada vez que suspende y despierta de nuevo.Hasta hace unos días, el
nvidia-367
paquete en el repositorio de Xenial funcionaba bien y de manera confiable, pero ahora lo actualizaron y lo convirtieron en un paquete de transición que instala automáticamente lanvidia-375
versión con errores .Solución (actualizada después del lanzamiento de corrección de errores de Nvidia):
Mi solución por ahora es degradar desdenvidia-375
onvidia-378
hacianvidia-370
, lo que parece funcionar bien hasta ahora.Como Nvidia lanzó una nueva versión mejorada del controlador
nvidia-381
con este error corregido, podemos (y deberíamos) instalarlo en lugar de degradarlo.Este paquete no está disponible en los repositorios estándar, pero puede obtenerlo fácilmente de un PPA y reemplazar su controlador actual con él ejecutando los siguientes comandos:
Después de que termine ese procedimiento, reinicie su computadora y pruebe si todavía tiene algún problema. Para mí se habían ido. Buena suerte.
fuente
apt
a un estado en el que las actualizaciones adicionales se reciban automáticamente nuevamente. También tendrá que seguir buscando activamente la nueva versión correctamente reparada que se lanzará en lugar de solo esperar para obtenerla automáticamente: problema propenso e inconveniente.nvidia-370
muy probable que también se convierta en un paquete de transición comonvidia-367
ya lo es, y por lo tanto esa actualización instalará automáticamente la versión del controlador nvidia / el equipo de controladores de gráficos considera el sucesor adecuado. El 370 es el controlador más reciente (y tal vez solo) actualmente compatible que no se ve afectado por este error, entonces, ¿por qué no usarlo? En comparación con el 367 que estaba en uso antes de la actualización que presenta este error, sigue siendo una actualización. Además, no estamos reteniendo ningún paquete ni anulando ninguna configuración adecuada, como parece pensar.graphics-drivers
harán los encargados del mantenimiento de la PPA con sus paquetes en el futuro, solo puedo hacer suposiciones basadas en lo que hicieron en el pasado. Y mientras el 370 sea compatible, no hay necesidad de actuar, incluso cuando arreglen el 375 y el 378. Mi fuerte conjetura es que una vez que NVIDIA desaproveche el 370 (como lo hicieron recientemente con el 367), los encargados del mantenimiento de la PPA lo cambiarán. en un paquete de transición, lo que significa que la versión actualizada no contendrá más código, sino que agregará una dependencia al controlador más nuevo.Esto
sefue un error de los controladores de Nvidia.Nvidia ha podido reproducir el problema,
y están trabajando en una solución, que se incluirá en su próxima versión del controlador.(La solución se ha lanzado ahora, consulte la sección a continuación).Consulte este hilo en los foros de desarrolladores de Nvidia para obtener más información. Este error también se ha informado en Launchpad .
¡Gracias a @Stefan por sus excelentes habilidades para descubrir esta información !
¡Nvidia finalmente ha lanzado una solución oficial!
La solución viene por cortesía del controlador beta 381.09 Captura de pantalla relevante del registro de cambios :
Este controlador no está actualmente en ningún repositorioHasta que cambie lo anterior, deberá instalar el nuevo controlador manualmente. Actualización: el controlador 381.09 ahora está en un repositorio no oficial. Puede instalar el controlador parcheado desde el PPA no oficial, o puede instalarlo manualmente.ACTUALIZACIÓN - ARREGLAR AHORA EN REPO OFICIAL:
¡Felicitaciones a @ ubfan1 por informar de esto ! Vea la sección a continuación para más detalles.
1. Instalación del controlador parcheado [lanzamiento] desde el repositorio oficial (recomendado):
Nvidia lanzó una actualización de su controlador de lanzamiento el 05/04/2017, que contiene, entre otras cosas, la corrección de errores que está buscando. La versión actualizada del controlador recibió la versión
375.66
Como se
375.66
encuentra en el repositorio oficial, cargar el controlador parcheado es bastante simple.Si actualmente está en la
375.39
versión con errores , todo lo que se debe requerir es simple:Si está en el controlador heredado, entonces debe realizar:
Luego, cambie a la nueva versión del controlador en Controladores adicionales:
Si actualmente está utilizando un controlador instalado manualmente, debe desinstalarlo, reiniciarlo y luego realizar los pasos descritos anteriormente.
Después de reiniciar, debería encontrar que su controlador Nvidia ha sido actualizado
375.66
.2. Si no necesita el controlador más nuevo para la compatibilidad con su GPU: *
* Tenga en cuenta que esta sección ha sido reemplazada por la sección # 1
Si su tarjeta gráfica es lo suficientemente antigua como para que sea compatible con la v340 del controlador, no es necesario instalar una versión más nueva de un PPA no oficial. Sin embargo, para las personas con tarjetas más nuevas como la serie GTX 9 o 10, necesitará un controlador más nuevo.
Para mayor comodidad, aquí hay una lista completa de las tarjetas compatibles con la versión 340 del controlador:
Entonces, si su GPU es compatible con 340, simplemente puede cambiar a la versión 340 en Controladores adicionales. (La versión 340 no tiene este error).
Asegúrese de reiniciar después de cambiar la versión del controlador.
3. Para instalar el controlador parcheado [beta] desde un PPA no oficial (
recomendado):Enciende una terminal con CTRL+ ALT+T
Ejecute estos comandos:
Reinicie su computadora, ¡y debería estar listo! Después de que tu computadora se reinicie, abre la Configuración del servidor Nvidia X. Con suerte, verá la nueva versión del controlador:
4. Para instalar manualmente el controlador parcheado [beta] ( NO recomendado):
Instalar los controladores de Nvidia desde el
*.run
archivo generalmente no es una muy buena idea. Tiende a romper cosas. Por lo tanto, es mejor instalarlos desde un PPA, como se describió anteriormente. Sin embargo, si eres aventurero y quieres instalarlo manualmente, este es el proceso que funcionó para mí con Ubuntu 16.04 y una GTX650.Antes de instalar el controlador parcheado, DEBE desinstalar su controlador propietario actual y cambiar al controlador Nouveau:
Asegúrese de reiniciar después de cambiar. ¡SI NO DESINSTALA SU CONDUCTOR PROPIETARIO ACTUAL, EL NUEVO CONDUCTOR CONFLICTARÁ CON EL ANTIGUO Y USTED ROMPERÁ LAS COSAS!
Descargue el archivo del controlador parcheado de Nvidia. Aquí hay un enlace directo.
Guarde el archivo en su carpeta de descargas
Cierre sesión en su sesión de GUI (debe terminar en la pantalla de inicio de sesión antes de continuar)
Arranca
tty1
con CTRL+ ALT+F1Inicie sesión con sus credenciales normales
Ejecute estos comandos:
Acepte el acuerdo de licencia:
Se quejará de que el script de preinstalador proporcionado por la distribución falló. De todas maneras, continúe:
Seleccione Yescuando se le pregunte si desea registrar el módulo del núcleo con dkms:
Seleccione Yescuando se le pregunte si desea instalar las bibliotecas de compatibilidad de 32 bits:
Tomará un tiempo construir el módulo del kernel, ¡así que tenga paciencia!
Seleccione Yescuando se le pregunte si desea ejecutar
nvidia-xconfig
:Seleccione Okpara salir del instalador
¡Casi allí! Ahora solo ejecuta estos comandos:
Después de que tu computadora se reinicie, abre la Configuración del servidor Nvidia X. Con suerte, verá la nueva versión del controlador:
fuente
.run
archivos no es realmente la forma recomendada de hacer las cosas. Pero, usar el controlador 340 no es una opción para personas con una tarjeta más nueva como la serie 10. Probé esta solución en mi propia computadora, y funcionó bien.Este problema está presente en los controladores 375 y 378 ...
Dado que simplemente matar el proceso de compiz soluciona el problema del borde malo, he probado una solución que funciona en mi sistema Ubuntu 16.04 cada vez que el sistema se activa.
Paso 1:
Creé un script llamado
fixbadborders
en el directorio/lib/systemd/system-sleep
. Contenía lo siguiente:Paso 2:
Permitió que el script tenga permiso de ejecución con:
Para eliminar este script:
Todos los créditos van a Sun Bear, quien creó este guión comentario 13
fuente
NVIDIA ha lanzado una versión actualizada del controlador que ha solucionado esta regresión. Cualquier controlador pasado 381.09 ya no tendrá este problema, hasta que NVIDIA vuelva a fallar.
Hasta el momento en que el controlador llegue a los repositorios principales, se pueden descargar del controlador PPA no oficial de NVIDIA. Hacer esto garantiza que no necesitará meterse con el instalador (que se considera una mala idea) o con Nouveau. Del mismo modo, permitirá que los controladores se instalen / desinstalen en
apt
lugar de la configuración media peligrosa en la que el instalador de NVIDIA deja los controladores. Además, esto no causará ningún bucle de inicio de sesión o errores a menos que tenga un sistema extraño. Para instalar, ejecute:Los controladores antiguos se desinstalarán automáticamente y los nuevos se cargarán. Continúe reiniciando su computadora (ya que los controladores NVIDIA deben integrarse en el núcleo), y todo debería funcionar bien. Puede verificar que los controladores se instalaron correctamente ejecutando el siguiente comando:
Asegúrese de revertir los parches descritos en esta publicación antes de actualizar a los últimos controladores. Por ejemplo, si instaló la versión parcheada de Unity como se describe a continuación, ejecute este comando para volver a la versión normal:
Tenga en cuenta que necesitará
ppa-purge
instalarlo, lo que puede hacerse así:Si la actualización no es una opción (una tarjeta demasiado antigua, la política de la empresa, etc.):
Kai-Heng Feng de Launchpad ha tenido la amabilidad de subir una versión de Unity a su propio PPA (
ppa:kaihengfeng/lp1292830
) que debería solucionar este problema. Para resolver este problema, simplemente agregue su PPA ejecutando estos comandos:Una vez que haya terminado, reinicie su sistema o reinicie X11 cerrando sesión y luego volviendo a iniciarla.
Alternativamente, también puede hacer lo siguiente:
Si está ejecutando NVIDIA Prime, puede cambiar a la tarjeta Intel, lo que resolverá este problema. Sin embargo, tenga en cuenta que evitará que el sistema use la potencia de gráficos completa.
Según algunos comentarios sobre el informe de error , la degradación al controlador NVIDIA 367.57 debería resolver el problema por completo. Como esto ya no está presente en los PPA, deberá descargarlo directamente desde NVIDIA (64 bits) (32 bits) (ARM de 32 bits) .
fuente
graphics-drivers/ppa
PPA, ese paquete es un "paquete de transición paranvidia-375
, por lo que al instalarlo obtendrá automáticamente la versión 375 con errores. Si conoce una fuente de dónde obtener el viejo controlador 367 de, debe incluirlo en su respuesta.La solución propuesta por Victor A. funciona bien. Sin embargo, debe tener en cuenta que los scripts colocados
/lib/systemd/system-sleep/
se ejecutan tanto cuando la computadora se duerme como cuando se despierta. Dado que solo queremos lo posterior, el uso del script propuesto ralentiza el proceso de ir a dormir innecesariamente. Recomiendo el siguiente:Sin embargo, una advertencia. Este script (así como el propuesto por Victor A.) deshabilitará la pantalla de solicitud de contraseña al despertar, lo que constituye un riesgo de seguridad.
fuente
Este problema también se ha solucionado en el controlador Nvidia 375.66, que se encuentra en los repositorios normales, y las actualizaciones normales deberían instalarlo.
fuente
Esta no es una solución completa, pero puede ser mejor que usar
compiz --replace
o reiniciar compiz y estropear sus espacios de trabajo.Cuando reanudo la suspensión, hago esto:
Esto volverá a cargar lo que parecen ser texturas corruptas en la GPU. Si hay una manera de forzar automáticamente que las texturas del tema se vuelvan a cargar en el currículum, esa podría ser una solución permanente.
fuente
Hay otra forma de resolver este problema. (No lo recomiendo si tiene muchos procesos en ejecución).
Simplemente mata a Xorg después de despertar la computadora.
Encuentra el PID de Xorg por:
Cuando encuentre el pid de Xorg, presione Ctrl + C para detener el proceso "superior".
Ir a la raíz y matar el proceso por:
Después de eso, inicie sesión en su cuenta.
Advertencia: esto cerrará todas sus aplicaciones. Firefox no hace ningún problema al respecto, solo restaurará todas sus pestañas, pero no puedo garantizar otras aplicaciones, así que guárdelas antes de realizar este proceso.
fuente
Intenté cambiar el controlador a uno actualizado, pero estaba arruinando mi capacidad de hacer un aprendizaje profundo con Tensorflow, así que volví al software original con errores.
Esto sucede cada vez que despierto Ubuntu de dormir. Acabo de abrir un terminal CTRL+ ALT+ Ty escribo
La pantalla se restablece y la falla desaparece. Solo toma unos segundos. Incluso puedes usar un alias en tu me
~/.bashrc
gustaalias kc='killall compiz'
para que solo tengas que escribirkc
cuando quieras ejecutar el comando.fuente