Question Artefacts étranges le long des bordures de la fenêtre après le réveil de l'ordinateur en mode veille


NB: Nvidia a publié un correctif officiel; s'il te plait regarde La réponse de ByteCommander, ma propre réponse et / ou La réponse de Kaz Wolfe.


En réveillant Ubuntu 16.04 de Suspend, les parasites graphiques suivants apparaissent autour de toutes les fenêtres, menus contextuels et similaires:

enter image description here


Ceci est actuellement connu pour affecter les cartes NVIDIA suivantes en cours d'exécution   les pilotes propriétaires:

  • NVIDIA GeForce 610M, version du pilote 375.39, 340.102
  • NVIDIA GT 630M, version du pilote 375.39
  • NVIDIA GTX 650, version du pilote 375.39
  • NVIDIA GT 740M, version du pilote 378.13
  • NVIDIA GTX 745, version du pilote inconnue
  • NVIDIA GTX 850M, version du pilote 375.39, 378.13
  • NVIDIA GT 940M, version du pilote 375.39
  • NVIDIA GTX 950M, version du pilote inconnue
  • NVIDIA GTX 960M, version du pilote 378.13
  • NVIDIA GTX 970, version du pilote 375.39
  • NVIDIA GTX 970M, version du pilote 375.39
  • NVIDIA GTX 980 TI, version du pilote inconnue
  • NVIDIA GTX 1060, version du pilote 375.26, 375.39, 378.09
  • NVIDIA GTX 1070, version du pilote 378.09

La liste ci-dessus provient de rapports d'autres utilisateurs   ici sur AU, ce fil et ce fil.

NB: Ceci ne signifie pas une liste exclusive. Il affecte probablement presque toutes les cartes Nvidia.

En outre, ce problème a été répliqué sur une installation propre dont le seul changement était une mise à jour logicielle et l'installation des derniers pilotes NVIDIA.


Que se passe-t-il et comment peut-il être résolu?


117
2018-03-24 00:41


origine


Quel pilote graphique utilisez-vous et quel modèle de carte graphique avez-vous? J'ai récemment eu le même problème avec ma carte 940M et certaines versions du pilote propriétaire de nvidia après avoir suspendu et réveillé le portable à nouveau. S'il vous plaît modifier la question et ajouter la sortie de lspci -k | grep -iEA3 '3d|vga' qui contient toutes les informations demandées. Merci. - Byte Commander
Oh, en fait, j'ai aussi ce problème encore, parce que le nvidia-367 pilote que j'ai utilisé est devenu un package de transition qui met automatiquement à niveau vers nvidia-375, qui était l'une des versions à l'origine de ce bogue. Il est temps de nvidia et d'écrire des rapports de bogues. - Byte Commander
c'est en effet un dub mais essayez de google quelque chose comme «des choses bizarres dans les coins»… Quoi qu'il en soit, ces questions ont de mauvaises réponses alors que la solution ci-dessous fonctionne comme un charme. - Ivan
@taylorswift - On dirait qu'au moins 41 autres personnes ont aussi ce problème: bugs.launchpad.net/ubuntu/+source/nvidia-graphics-drivers-375/… Je suppose que nous devrons simplement attendre que Nvidia le répare. - Android Dev
Affecte également GeForce GTX 950M. - conualfy


Réponses:


NB: cette solution était temporaire jusqu'à ce que Nvidia publie un pilote corrigé. Faites défiler vers le bas pour trouver les autres réponses avec le correctif réel. - Android Dev


J'ai le même problème avec GPU: Nvidia GTX 970 avec le pilote nvidia 375.39 sur Ubuntu 16.04.2 LTS

Je l'ai observé depuis une récente mise à jour du pilote nvidia. Je soupçonne donc que c'est un bug dans le pilote.

J'ai trouvé une réponse sur le tableau nvidia. C'est un bug confirmé dans le pilote et nvidia y travaille déjà. En attendant, on peut redémarrer compiz avec

compiz --replace

pour se débarrasser des artefacts.

Le bogue est dans le système de suivi des bogues d'Ubuntu y compris un script de contournement pour redémarrer automatiquement compiz après la reprise.


77
2018-03-24 07:50



Super travail de détective, merci! :) - Android Dev
Une autre solution serait de passer à la version précédente du pilote: askubuntu.com/a/896544/657603 - Antoine Dusséaux
Thx pour la solution de contournement. Je ne suis pas sûr, mais depuis que j'ai ce problème et que j'ai aussi un autre problème: mon ordinateur portable n'est pas toujours suspendu correctement après une heure. - Skalár Wag
compiz --replace ne se comporte pas bien avec les espaces de travail. Il place toutes les fenêtres de tous les espaces de travail dans le premier espace de travail :( - AlikElzin-kilaka
Vous devez garder le terminal ouvert avec cette commande. Si vous fermez le terminal, il redémarrera à nouveau. Cela fonctionnera jusqu'à la prochaine suspension, ce n'est pas une solution réelle, je ne peux pas vraiment être opérationnel avec l'exécution de cette commande plusieurs fois par jour. Nous sommes allés à la solution ci-dessus, en changeant le pilote. - conualfy


MISE À JOUR 2:

Nvidia a également mis à jour son nvidia-375 pilotes à la version 375,66, lequel est disponible à partir des référentiels Ubuntu standard de toutes les versions actuellement prises en charge.

Cela signifie à partir de maintenant, vous ne devriez plus avoir à prendre de mesures spéciales, sauf pour faire les mises à jour système normales comme toujours. Vous n'avez pas besoin du package de pilote de la graphics-drivers PPA si vous ne les voulez pas.

Voici l'extrait de changelog pour le paquet des repos principaux sur 16.04 concernant ce bogue:

$ apt changelog nvidia-375=375.66-0ubuntu0.16.04.1

  [...]
    - Fixed a regression that caused corruption in certain
      applications, such as window border shadows in Unity, after
      resuming from suspend.
  [...]

METTRE À JOUR:

Nvidia a finalement résolu ce problème et publié une nouvelle version du pilote actif: nvidia-381

La solution décrite dans cette réponse a également été mise à jour et suggère maintenant de mettre à niveau vers cette version fixe au lieu de la réduire à la dernière version avant le bogue. La procédure reste la même, il suffit de changer les noms des paquets.


Cause du problème:

Certains des packages de pilotes graphiques Nvidia propriétaires pour Ubuntu (à savoir nvidia-375 et nvidia-378) sont bogués et produisent les artefacts blancs autour des bordures des fenêtres qui apparaissent dans vos captures d'écran de la question. Cela se produit de manière reproductible chaque fois que vous suspendez et que vous vous réveillez à nouveau.

Jusqu'à il y a quelques jours, le nvidia-367 paquet dans le référentiel de Xenial fonctionnait bien et de manière fiable, mais maintenant ils l'ont mis à jour et l'ont converti en un paquet de transition qui installe automatiquement le bogue nvidia-375 version à la place.

Solution (mise à jour après la publication du correctif de Nvidia):

Assurez-vous que vous avez vraiment une carte graphique Nvidia, qui pose problème, et non une autre marque qui se comporte de la même manière. L'installation de pilotes Nvidia pour les cartes graphiques non Nvidia ne fera rien de bon.

Vous pouvez le vérifier en vérifiant la sortie de la commande ci-dessous:

lspci -k | grep -iEA3 '3d|vga'

Ma solution pour le moment est de rétrograder de nvidia-375 ou nvidia-378 à nvidia-370, qui semble bien fonctionner jusqu'à présent.
Comme Nvidia a publié une nouvelle version de pilote mise à niveau nvidia-381 avec ce bogue corrigé, nous pouvons (et devrions) installer celui-ci au lieu de le rétrograder.

Ce package n'est pas disponible à partir des référentiels standard, mais vous pouvez facilement l'obtenir à partir d'un PPA et remplacer votre pilote actuel par les commandes ci-dessous:

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
sudo apt purge nvidia*

sudo apt installer nvidia-370


58
2018-03-24 19:48



Pour les utilisateurs généraux, je préférerais la solution rapide qui ne change pas de pilote ici plutôt que de rétrograder les pilotes. Étant donné qu'un correctif volonté être libéré (et probablement pas aussi loin de maintenant), c'est vraiment juste un inconfort temporaire. Si vous rétrogradez les pilotes, cependant, vous devrez vous rappeler de revenir apt Retour à un état où les nouvelles mises à niveau sont automatiquement reçues à nouveau. Vous devrez également continuer à vérifier activement la sortie de la nouvelle version correctement fixée au lieu d'attendre simplement de l'obtenir automatiquement - Problème et inconvénient. - Jason C
@JasonC No. Le nvidia-370 très probablement aussi se transformer en un paquet de transition tout comme nvidia-367 est déjà, et par conséquent, cette mise à jour installe automatiquement la version du pilote que nvidia / l'équipe des pilotes graphiques considère comme le successeur approprié. Le 370 est le dernier (et peut-être le seul) pilote actuellement pris en charge qui n'est pas affecté par ce bogue, alors pourquoi ne pas l'utiliser? Comparé au 367 qui était utilisé avant la mise à niveau introduisant ce bogue, il s'agit toujours d'une mise à niveau. De plus, comme vous semblez le penser, nous ne retenons aucun paquet ni ne remplacons aucune configuration appropriée. - Byte Commander
@ByteCommander Je vais supprimer mon commentaire sous deux conditions. 1) Tant que vous êtes sûr à 100% volonté transformer en un paquet de transition, je vais vous croire (je ne suis pas à 100% confiant dans ma déclaration); ou si vous n'êtes pas sûr à 100%, ajoutez une mention du risque à la réponse, et 2) Si vous ajoutez une mention indiquant que cela n'affectera pas les futures mises à jour si elle devient un package de transition et que faire une fois le correctif est publié, à la réponse. - Jason C
@JasonC Pas besoin de supprimer votre commentaire. Je peux pour des raisons évidentes ne pas garantir ce que les responsables de la graphics-drivers PPA fera avec leurs paquets à l'avenir, je peux juste faire des hypothèses basées sur ce qu'ils ont fait dans le passé. Et tant que 370 est supporté, il n’ya pas besoin d’agir, même quand ils corrigent les 375 et 378. Une fois que nvidia déprécie le 370 (comme ils l’ont fait récemment avec le 367), je pense dans un package de transition, ce qui signifie que la version mise à jour ne contiendra plus de code mais ajoutera une dépendance au pilote plus récent. - Byte Commander
@Matsmath Je ne sais pas. Seul le temps dira. Peut-être ne sera-t-il jamais ajouté aux référentiels des versions "anciennes" d'Ubuntu qui ont été publiées avant ce package de pilotes. Je ne pense pas qu'il soit possible de donner une réponse précise à cette question avant qu'elle ne se soit réellement produite. - Byte Commander


Ce est était un bogue dans les pilotes Nvidia.

Nvidia a pu reproduire le problème, et ils travaillent sur un correctif, qui sera inclus dans la prochaine version du pilote. (Le correctif a maintenant été publié, voir la section ci-dessous).

Voir ce sujet sur les forums de développeurs Nvidia pour plus d'informations. Ce bug a également été signalé sur Launchpad.

Grâce à @Stefan pour ses grandes compétences de salope en découvrir cette information!


Nvidia a finalement publié un correctif officiel!

  • Le correctif vient courtoisie du pilote bêta 381.09 Capture d'écran pertinente de la changelog: enter image description here

  • Ce pilote n'est actuellement dans aucun référentiel

  • Jusqu'à ce que les modifications ci-dessus, vous devrez installer le nouveau pilote manuellement Mettre à jour: le pilote 381.09 est maintenant dans un référentiel non officiel. Vous pouvez soit installer le pilote corrigé à partir du PPA non officiel, soit l'installer manuellement.

  • UPDATE - CORRECTEZ MAINTENANT EN REPO OFFICIEL:

    Bravo à @ ubfan1 pour signaler cela! Voir la section ci-dessous pour plus de détails


1. Installation du pilote [version] corrigé à partir du dépôt officiel (recommandé):

Nvidia a lancé une mise à jour de son pilote de publication le 05/04/2017, contenant notamment le correctif de bogue que vous recherchez. La version mise à jour du pilote a été donné la version 375.66

Depuis cela 375.66 est dans le dépôt officiel, le chargement du pilote patché est assez simple.

  • Si vous êtes actuellement sur le buggy 375.39 version, alors tout ce qui devrait être requis est un simple:

    sudo apt-get update
    sudo apt-get upgrade
    

  • Si vous êtes sur le pilote hérité, vous devez alors effectuer:

    sudo apt-get update
    

    Suivi en passant à la nouvelle version du pilote dans les pilotes supplémentaires:

    enter image description here


  • Si vous utilisez actuellement un pilote installé manuellement, vous devez le désinstaller, redémarrer puis effectuer les étapes décrites ci-dessus.

Après le redémarrage, vous devriez constater que votre pilote Nvidia a été mis à jour pour 375.66.


2. Si vous n'avez pas besoin du pilote le plus récent pour assurer la compatibilité avec votre GPU: *

* Notez que cette section a été remplacée par la section 1

Si votre carte graphique est suffisamment ancienne pour être prise en charge par la version v340 du pilote, il n'est pas nécessaire d'installer une version plus récente d'un PPA non officiel. Pour les personnes possédant des cartes plus récentes, telles que la série GTX 9 ou la série 10, vous aurez besoin d'un pilote plus récent.

Pour plus de commodité, voici une liste complète des cartes prises en charge par la version 340 du pilote:

GeForce 800M Series (Notebooks):
GeForce GTX 880M, GeForce GTX 870M, GeForce GTX 860M, GeForce GTX 850M, GeForce 845M, GeForce 840M, GeForce 830M, GeForce 825M, GeForce 820M, GeForce 810M

GeForce 700 Series:
GeForce GTX TITAN Z, GeForce GTX TITAN Black, GeForce GTX TITAN, GeForce GTX 780 Ti, GeForce GTX 780, GeForce GTX 770, GeForce GTX 760, GeForce GTX 760 Ti (OEM), GeForce GTX 750 Ti, GeForce GTX 750, GeForce GTX 745, GeForce GT 740, GeForce GT 730, GeForce GT 720, GeForce GT 710, GeForce GT 705

GeForce 700M Series (Notebooks):
GeForce GTX 780M, GeForce GTX 770M, GeForce GTX 765M, GeForce GTX 760M, GeForce GT 755M, GeForce GT 750M, GeForce GT 745M, GeForce GT 740M, GeForce GT 735M, GeForce GT 730M, GeForce GT 720M, GeForce GT 710M, GeForce 720M, GeForce 710M, GeForce 705M

GeForce 600 Series:
GeForce GTX 690, GeForce GTX 680, GeForce GTX 670, GeForce GTX 660 Ti, GeForce GTX 660, GeForce GTX 650 Ti BOOST, GeForce GTX 650 Ti, GeForce GTX 650, GeForce GTX 645, GeForce GT 645, GeForce GT 640, GeForce GT 635, GeForce GT 630, GeForce GT 620, GeForce GT 610, GeForce 605

GeForce 600M Series (Notebooks):
GeForce GTX 680MX, GeForce GTX 680M, GeForce GTX 675MX, GeForce GTX 675M, GeForce GTX 670MX, GeForce GTX 670M, GeForce GTX 660M, GeForce GT 650M, GeForce GT 645M, GeForce GT 640M, GeForce GT 640M LE, GeForce GT 635M, GeForce GT 630M, GeForce GT 625M, GeForce GT 620M, GeForce 610M

GeForce 500 Series:
GeForce GTX 590, GeForce GTX 580, GeForce GTX 570, GeForce GTX 560 Ti, GeForce GTX 560 SE, GeForce GTX 560, GeForce GTX 555, GeForce GTX 550 Ti, GeForce GT 545, GeForce GT 530, GeForce GT 520, GeForce 510

GeForce 500M Series (Notebooks):
GeForce GTX 580M, GeForce GTX 570M, GeForce GTX 560M, GeForce GT 555M, GeForce GT 550M, GeForce GT 540M, GeForce GT 525M, GeForce GT 520M, GeForce GT 520MX

GeForce 400 Series:
GeForce GTX 480, GeForce GTX 470, GeForce GTX 465, GeForce GTX 460 SE v2, GeForce GTX 460 SE, GeForce GTX 460, GeForce GTS 450, GeForce GT 440, GeForce GT 430, GeForce GT 420, GeForce 405

GeForce 400M Series (Notebooks):
GeForce GTX 485M, GeForce GTX 480M, GeForce GTX 470M, GeForce GTX 460M, GeForce GT 445M, GeForce GT 435M, GeForce GT 425M, GeForce GT 420M, GeForce GT 415M, GeForce 410M, GeForce 405M

GeForce 300 Series:
GeForce GT 340, GeForce GT 330, GeForce GT 320, GeForce 315, GeForce 310

GeForce 300M Series (Notebooks):
GeForce GTS 360M, GeForce GTS 350M, GeForce GT 335M, GeForce GT 330M, GeForce GT 325M, GeForce GT 320M, GeForce 320M, GeForce 315M, GeForce 310M, GeForce 305M

GeForce 200 Series:
GeForce GTX 295, GeForce GTX 285, GeForce GTX 280, GeForce GTX 275, GeForce GTX 260, GeForce GTS 250, GeForce GTS 240, GeForce GT 230, GeForce GT 240, GeForce GT 220, GeForce G210, GeForce 210, GeForce 205

GeForce 200M Series (Notebooks):
GeForce GTX 285M, GeForce GTX 280M, GeForce GTX 260M, GeForce GTS 260M, GeForce GTS 250M, GeForce GT 240M, GeForce GT 230M, GeForce GT 220M, GeForce G210M, GeForce G205M

GeForce 100 Series:
GeForce GT 140, GeForce GT 130, GeForce GT 120, GeForce G100

GeForce 100M Series (Notebooks):
GeForce GTS 160M, GeForce GTS 150M, GeForce GT 130M, GeForce GT 120M, GeForce G 110M, GeForce G 105M, GeForce G 103M, GeForce G 102M

GeForce 9 Series:
GeForce 9800 GX2, GeForce 9800 GTX/GTX+, GeForce 9800 GT, GeForce 9600 GT, GeForce 9600 GSO, GeForce 9600 GSO 512, GeForce 9600 GS, GeForce 9500 GT, GeForce 9500 GS, GeForce 9400 GT, GeForce 9400, GeForce 9300 GS, GeForce 9300 GE, GeForce 9300 SE, GeForce 9300, GeForce 9200, GeForce 9100

GeForce 9M Series (Notebooks):
GeForce 9800M GTX, GeForce 9800M GTS, GeForce 9800M GT, GeForce 9800M GS, GeForce 9700M GTS, GeForce 9700M GT, GeForce 9650M GT, GeForce 9650M GS, GeForce 9600M GT, GeForce 9600M GS, GeForce 9500M GS, GeForce 9500M G, GeForce 9400M G, GeForce 9400M, GeForce 9300M GS, GeForce 9300M G, GeForce 9200M GS, GeForce 9100M G

GeForce 8 Series:
GeForce 8800 Ultra, GeForce 8800 GTX, GeForce 8800 GTS 512, GeForce 8800 GTS, GeForce 8800 GT, GeForce 8800 GS, GeForce 8600 GTS, GeForce 8600 GT, GeForce 8600 GS, GeForce 8500 GT, GeForce 8400 GS, GeForce 8400 SE, GeForce 8400, GeForce 8300 GS, GeForce 8300, GeForce 8200, GeForce 8100 /nForce 720a

GeForce 8M Series (Notebooks):
GeForce 8800M GTX, GeForce 8800M GTS, GeForce 8700M GT, GeForce 8600M GT, GeForce 8600M GS, GeForce 8400M GT, GeForce 8400M GS, GeForce 8400M G, GeForce 8200M G, GeForce 8200M

Quadro Series:
Quadro K6000, Quadro K5200, Quadro K5000, Quadro K4000, Quadro K4200, Quadro K2200, Quadro K2000, Quadro K2000D, Quadro K620, Quadro K600, Quadro K420, Quadro 6000, Quadro 5000, Quadro 4000, Quadro 2000, Quadro 2000D, Quadro 600, Quadro 410, Quadro 400

Quadro Series (Notebooks):
Quadro K5100M, Quadro K5000M, Quadro K4100M, Quadro K4000M, Quadro K3100M, Quadro K2100M, Quadro K3000M, Quadro K2000M, Quadro K1100M, Quadro K1000M, Quadro K610M, Quadro K510M, Quadro K500M, Quadro 5010M, Quadro 5000M, Quadro 4000M, Quadro 3000M, Quadro 2000M, Quadro 1000M

Quadro FX Series:
Quadro CX, Quadro FX 370, Quadro FX 370 Low Profile, Quadro FX 380, Quadro FX 380 Low Profile, Quadro FX 570, Quadro FX 580, Quadro FX 1700, Quadro FX 1800, Quadro FX 3700, Quadro FX 3800, Quadro FX 4600, Quadro FX 4700 X2, Quadro FX 4800, Quadro FX 5600, Quadro FX 5800

Quadro FX Series (Notebooks):
Quadro FX 3800M, Quadro FX 3700M, Quadro FX 3600M, Quadro FX 2800M, Quadro FX 2700M, Quadro FX 1800M, Quadro FX 1700M, Quadro FX 1600M, Quadro FX 880M, Quadro FX 770M, Quadro FX 570M, Quadro FX 380M, Quadro FX 370M, Quadro FX 360M

Quadro NVS Series:
Quadro NVS 290, Quadro NVS 295, NVS 510, NVS 315, NVS 310, NVS 300, Quadro NVS 420, Quadro NVS 450

Quadro NVS Series (Notebooks):
NVS 5400M, NVS 5200M, NVS 5100M, NVS 4200M, NVS 3100M, NVS 2100M, Quadro NVS 320M, Quadro NVS 160M, Quadro NVS 150M, Quadro NVS 140M, Quadro NVS 135M, Quadro NVS 130M

Quadro Plex Series:
Quadro Plex Model II, Quadro Plex D Series, Quadro Plex Model IV, Quadro Plex 7000

Quadro Sync Series:
Quadro Sync, Quadro G-Sync II

Quadro SDI:
Quadro SDI

GRID Series:
GRID K2, GRID K520

NVS Series:
Quadro NVS 290, Quadro NVS 295, NVS 510, NVS 315, NVS 310, NVS 300, Quadro NVS 420, Quadro NVS 450

NVS Series (Notebooks):
NVS 5400M, NVS 5200M, NVS 5100M, NVS 4200M, NVS 3100M, NVS 2100M, Quadro NVS 320M, Quadro NVS 160M, Quadro NVS 150M, Quadro NVS 140M, Quadro NVS 135M, Quadro NVS 130M

ION (Desktops):
ION

ION (Notebooks):
ION

ION LE (Desktops):
ION LE

ION LE (Notebooks):
ION LE

Donc, si votre GPU est pris en charge par 340, vous pouvez simplement passer à la version 340 dans Additional Drivers. (La version 340 n'a pas ce bogue.)

enter image description here

Assurez-vous de redémarrer après avoir changé la version du pilote.


3. Installer le pilote [beta] corrigé à partir d’un PPA non officiel (conseillé):

  1. Allumez un terminal avec CTRL+ALT+T

  2. Exécutez ces commandes:

    sudo -i
    add-apt-repository ppa:graphics-drivers/ppa
    apt-get update
    apt-get install nvidia-381
    
  3. Redémarrez votre ordinateur et vous devrait Sois prêt à partir! Après le redémarrage de votre ordinateur, ouvrez Paramètres du serveur Nvidia X. Avec un peu de chance, vous verrez la nouvelle version du pilote:

    enter image description here


4. à manuellement installez le pilote patché [beta] (NE PAS recommander):

Installation des pilotes Nvidia à partir du *.run fichier n'est généralement pas une très bonne idée. Il a tendance à casser les choses. Il est donc préférable de les installer depuis un PPA, comme décrit ci-dessus. Néanmoins, si vous êtes aventureux et que vous souhaitez les installer manuellement, c'est le processus qui a fonctionné pour moi avec Ubuntu 16.04 et une GTX650.

Avant d'installer le pilote corrigé, vous DOIT désinstallez votre pilote propriétaire actuel et passez au pilote Nouveau:

enter image description here

Assurez-vous de redémarrer après la commutation. SI VOUS NE FAITES PAS DÉSINSTALLER VOTRE PILOTE DE PROPRIÉTAIRE ACTUEL, LE NOUVEAU PILOTE CONFLIT AVEC LE VIEUX ET VOUS POUVOIR ENTRAÎNER DES CHOSES!

  1. Téléchargez le fichier de pilote corrigé depuis Nvidia. Voici un lien direct.

  2. Enregistrez le fichier dans votre dossier de téléchargements

  3. Déconnectez-vous de votre session GUI (vous devriez vous retrouver sur l'écran de connexion avant de continuer)

  4. Feu tty1 avec CTRL+ALT+F1

  5. Connectez-vous avec vos identifiants normaux

  6. Exécutez ces commandes:

    sudo service lightdm stop
    cd Downloads
    chmod +x NVIDIA-Linux-x86_64-381.09.run
    sudo ./NVIDIA-Linux-x86_64-381.09.run
    
  7. Acceptez le contrat de licence:

    enter image description here

  8. Il se plaindra que le script de pré-installation fourni par la distribution a échoué. Continuer quand même:

    enter image description here

  9. Sélectionner Oui à la question de savoir si vous souhaitez enregistrer le module du noyau avec dkms:

    enter image description here

  10. Sélectionner Oui à la question de savoir si vous souhaitez installer les bibliothèques de compatibilité 32 bits:

    enter image description here

  11. Il faudra un certain temps pour construire le module du noyau, donc sois patient!

    enter image description here

  12. Sélectionner Oui quand on lui demande si vous souhaitez courir nvidia-xconfig:

    enter image description here

  13. Sélectionner D'accord quitter l'installateur

  14. Presque là! Maintenant, lancez ces commandes:

    rm ~/.Xauthority
    rm ~/.config/dconf/unity
    sudo shutdown -r now
    
  15. Après le redémarrage de votre ordinateur, ouvrez Paramètres du serveur Nvidia X. Avec un peu de chance, vous verrez la nouvelle version du pilote:

    enter image description here


36
2018-04-07 20:55



REMARQUE: l'étape 14 a été utilisée lorsque le bureau Unity de la réponse ne s'est pas affiché comme cela a été discuté dans le salon de discussion Ask Ubuntu. Ce n'est peut-être pas nécessaire, mais si votre bureau Unity n'apparaît pas, utilisez cette étape comme solution. - Sergiy Kolodyazhnyy
Désolé mais je dois discuter avec cette solution. Cela m'a conduit à une erreur qui m'a empêché de se connecter et d'être incompatible avec les logiciels Windows installés. Un tel problème de connexion est courant si vous installez des fichiers .run à partir du site nvidia au lieu d'utiliser les sources disponibles dans ubuntu. Un moyen beaucoup plus simple de résoudre ce problème consisterait à utiliser la version 340, disponible directement entre les pilotes sélectionnés dans le menu Logiciels et mises à jour. Au moins cela a fonctionné pour tout réparer pour moi. - Giorgio Vitanza
@GiorgioVitanza - Je sais que l’installation du .run Les fichiers ne sont pas vraiment la manière recommandée de faire les choses. Cependant, l’utilisation du pilote 340 n’est pas une option pour les personnes ayant une carte plus récente comme la série 10. J'ai testé cette solution sur mon propre ordinateur, et cela a bien fonctionné. - Android Dev
@GiorgioVitanza Essayez ma réponse - il installe les pilotes des PPA, qui devraient être beaucoup plus compatibles que les fichiers run. - Kaz Wolfe
@GiorgioVitanza - Maintenant que le pilote est dans un PPA, j'ai mis à jour ma réponse pour inclure les deux méthodes. - Android Dev


Ce problème est présent dans les pilotes 375 et 378 ...


Étant donné que le simple fait de tuer un processus compiz résout le problème de la frontière, j'ai testé une solution qui fonctionne sur mon système Ubuntu 16.04 chaque fois que le système se réveille.

Étape 1:

J'ai créé un script appelé fixbadborders dans l'annuaire /lib/systemd/system-sleep. Il contenait les éléments suivants:

#!/bin/sh
## This file (or a link to it) must be in the folder /lib/systemd/system-sleep/
## Purpose: Kill compiz after system wakes up from sleep.
## This will fix bad window borders caused by Nvidia driver 375.39.
kill $(ps -C compiz -o pid=)

Étape 2:

Autorisé le script à avoir une autorisation d'exécution avec:

sudo chmod +x fixbadborders

Pour supprimer ce script:

sudo rm /lib/systemd/system-sleep/fixbadborders

Tous les crédits vont à Sun Bear qui a créé ce script commentaire 13


7
2018-03-25 15:41



Mieux vaut marquer les questions comme des doublons plutôt que de poster la même solution encore et encore - Zanna
Son inconvénient est que mon écran de connexion ne s’affiche jamais lorsque vous entrez dans le Desctop de veille :( - Hesam


NVIDIA a publié une version de pilote mise à jour qui a corrigé cette régression. N'importe quel pilote ayant dépassé 381.09 n'aura plus ce problème jusqu'à ce que NVIDIA échoue à nouveau.

Jusqu'à ce que le pilote atteigne les référentiels principaux, ils peuvent être téléchargés à partir du PPA non officiel du pilote NVIDIA. Cela garantit que vous n'aurez pas à vous soucier de l'installateur (qui est largement considéré comme une mauvaise idée) ou du Nouveau. De même, il permettra aux pilotes d'être installés / désinstallés via apt au lieu de la demi-configuration dangereuse, le programme d’installation de NVIDIA laisse les pilotes ne pas provoquer des boucles de connexion ou des erreurs, sauf si vous avez un système étrange. Pour installer, lancez:

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
sudo apt install nvidia-381

Les anciens pilotes seront automatiquement désinstallés et les nouveaux seront chargés. Suivez en redémarrant votre ordinateur (car les pilotes NVIDIA doivent être intégrés au noyau), et tout devrait bien fonctionner. Vous pouvez vérifier que les pilotes ont été installés correctement en exécutant la commande ci-dessous:

nvidia-settings --version

Assurez-vous de restaurer tous les correctifs décrits dans cet article. avant vous mettez à jour les derniers pilotes. Par exemple, si vous avez installé la version corrigée d'Unity comme décrit ci-dessous, exécutez cette commande pour revenir à la version normale:

sudo ppa-purge ppa:kaihengfeng/lp1292830 

Notez que vous aurez besoin de ppa-purge installé, ce qui peut être fait comme ça:

sudo apt install ppa-purge

Si la mise à jour n'est pas une option (trop ancienne d'une carte, politique de l'entreprise, etc.):

Kai-Heng Feng de Launchpad a eu la gentillesse de télécharger une version d'Unity sur son propre PPA (ppa:kaihengfeng/lp1292830) qui devrait corriger ce problème. Pour résoudre ce problème, ajoutez simplement son PPA en exécutant ces commandes:

sudo add-apt-repository ppa:kaihengfeng/lp1292830 
sudo apt update
sudo apt full-upgrade

Une fois que vous avez terminé, redémarrez votre système ou redémarrez X11 en vous déconnectant, puis de nouveau.

Vous pouvez également effectuer l'une des opérations suivantes:

  • Passer à la carte Intel
    Si vous utilisez NVIDIA Prime, vous pouvez basculer sur la carte Intel, ce qui résoudra ce problème. Notez toutefois que cela empêchera le système d'utiliser la puissance graphique complète.
  • Rétrograder les pilotes
    Selon quelques commentaires sur le rapport de bogue, la mise à niveau vers le pilote NVIDIA 367.57 devrait résoudre complètement le problème. Comme il n'est plus présent dans les PPA, vous devrez le télécharger directement depuis NVIDIA. (64 bits)  (32 bits)  (ARM 32 bits).

6
2018-03-28 05:59



367 ne semble plus exister, aussi bien dans les dépôts officiels d'Ubuntu que dans les graphics-drivers/ppa PPA, ce package est un "package transitoire pour nvidia-375, donc l’installation vous donnera automatiquement la version buggy 375. Si vous connaissez une source d'où obtenir l'ancien pilote 367, vous devez l'inclure dans votre réponse. - Byte Commander
@ByteCommander fait - Kaz Wolfe
FYI, si vous l'avez manqué, le pilote patché est maintenant dans le repo officiel. - Android Dev


La solution proposée par Victor A. fonctionne très bien. Cependant, notez que les scripts placés dans /lib/systemd/system-sleep/ sont exécutés à la fois lorsque l'ordinateur s'endort et qu'il se réveille. Étant donné que nous ne voulons que le plus tard, l'utilisation du script proposé ralentit inutilement le processus de mise en veille. Je recommande le suivant:

#!/bin/sh
if [ "$2" = "suspend" ] || [ "$2" = "hybrid-sleep" ]; then
    case "$1" in
        post) kill $(ps -C compiz -o pid=) ;;
    esac
fi

Un avertissement, cependant. Ce script (ainsi que celui proposé par Victor A.) désactivera l'écran d'invite de mot de passe au réveil, constituant ainsi un risque de sécurité.


3
2018-03-28 04:08





Ce problème a également été résolu dans le pilote Nvidia 375.66, qui se trouve dans les référentiels normaux, et doit être installé par les mises à jour normales.


3
2017-07-01 19:35



Belle enquête! J'ai mis à jour ma réponse pour refléter ce nouveau développement et je vous ai reconnu pour avoir découvert qu'il existe maintenant une version corrigée dans le repo officiel :) - Android Dev


Ce n'est pas une solution complète, mais peut-être mieux que d'utiliser compiz --replace ou bien redémarrez compiz et dérangez vos espaces de travail.

Quand je reviens de suspendre, je fais ceci:

  • Système -> Préférences -> Apparence
  • Changer le thème en thème différent
  • Revenir au thème original

Cela rechargera ce qui semble être des textures corrompues dans le GPU. S'il existe un moyen de forcer automatiquement le rechargement des textures de thème lors de la reprise, cela peut être une solution permanente.


2
2017-07-01 16:54



Nvidia a publié un pilote corrigé, ce n'est plus un problème - Android Dev


Il existe un autre moyen de résoudre ce problème. (Je ne le recommande pas si vous avez beaucoup de processus en cours d'exécution.)

Il suffit de tuer Xorg après avoir réveillé l'ordinateur.

Trouvez le PID de Xorg par:

top

Lorsque vous trouvez le pid du Xorg, appuyez sur Ctrl + C pour arrêter le processus "top".

Aller à root et tuer le processus en:

sudo su
kill [pid]

Après cela, connectez-vous à votre compte.

Attention: cela fermera toutes vos applications. Firefox ne pose pas de problème à ce sujet, il restaurera simplement tous vos onglets, mais je ne peux pas garantir d’autres applications, alors sauvegardez-les avant de lancer ce processus.


1
2018-03-30 04:42



Soit dit en passant, pour fermer la méthode standard, plutôt que d'annuler la tâche (Ctrl + C), vous pouvez simplement appuyer sur «q». - anonymous2