Vraag Vreemde artefacten langs vensterranden nadat de computer uit de slaapmodus is gehaald


NB: Nvidia heeft een officiële oplossing vrijgegeven; alsjeblieft zie ByteCommander's antwoord, mijn eigen antwoord en / of Kaz Wolfe's antwoord.


Bij het ontwaken Ubuntu 16.04 van Suspend, verschijnen de volgende grafische glitches rond alle vensters, contextmenu's en dergelijke:

enter image description here


Het is bekend dat dit van invloed is op de volgende NVIDIA-kaarten die worden gebruikt   de gepatenteerde stuurprogramma's:

  • NVIDIA GeForce 610M, driverversie 375.39, 340.102
  • NVIDIA GT 630M, driverversie 375.39
  • NVIDIA GTX 650, driverversie 375.39
  • NVIDIA GT 740M, driverversie 378.13
  • NVIDIA GTX 745, onbekende stuurprogrammaversie
  • NVIDIA GTX 850M, driverversie 375.39, 378.13
  • NVIDIA GT 940M, driverversie 375.39
  • NVIDIA GTX 950M, onbekende stuurprogrammaversie
  • NVIDIA GTX 960M, driverversie 378.13
  • NVIDIA GTX 970, driverversie 375.39
  • NVIDIA GTX 970M, driverversie 375.39
  • NVIDIA GTX 980 TI, onbekende versie van stuurprogramma
  • NVIDIA GTX 1060, driverversie 375.26, 375.39, 378.09
  • NVIDIA GTX 1070, stuurprogrammaversie 378.09

De bovenstaande lijst hierboven is afkomstig van rapporten van andere gebruikers   hier op AU, deze draad, en deze draad.

NB: dit is geenszins een exclusieve lijst. Het beïnvloedt waarschijnlijk bijna alle Nvidia-kaarten.

Verder is dit probleem gerepliceerd in een schone installatie, waarbij de enige wijziging een software-update en de installatie van de nieuwste NVIDIA-stuurprogramma's was.


Wat is er aan de hand en hoe kan dit worden opgelost?


117
2018-03-24 00:41


oorsprong


Welk grafisch stuurprogramma gebruik je en welk videokaartmodel heb je? Onlangs had ik hetzelfde probleem met mijn 940M-kaart en de enkele versies van het eigen stuurprogramma van nvidia nadat ik de laptop opnieuw had opgeschort en wakker had gemaakt. alsjeblieft Bewerk de vraag en voeg de uitvoer toe van lspci -k | grep -iEA3 '3d|vga' welke alle gevraagde info bevat. Bedankt. - Byte Commander
Oh, eigenlijk heb ik ook dit probleem nog een keer, omdat de nvidia-367 driver die ik gebruikte, werd een overgangspakket dat automatisch wordt geüpgraded naar nvidia-375, wat een van de versies was die deze fout veroorzaakte. Tijd om nvidia na te jagen en bugrapporten te schrijven. - Byte Commander
dat is inderdaad een kopie, maar probeer te googlen zoiets als 'rare dingen om de hoek' ... In elk geval hebben die vragen slechte antwoorden, terwijl de oplossing hieronder werkt als een charme. - Ivan
@taylorswift - Het lijkt erop dat minstens 41 anderen ook dit probleem hebben: bugs.launchpad.net/ubuntu/+source/nvidia-graphics-drivers-375/... Ik denk dat we gewoon moeten wachten tot Nvidia het repareert. - Android Dev
Ook beïnvloedt GeForce GTX 950M. - conualfy


antwoorden:


NB: Dit was een tijdelijke oplossing totdat Nvidia een gepatchte driver uitbracht. Blader naar beneden om de andere antwoorden met de daadwerkelijke oplossing te vinden. - Android Dev


Ik heb hetzelfde probleem met GPU: Nvidia GTX 970 met nvidia 375.39 driver op Ubuntu 16.04.2 LTS

Ik heb dit gezien sinds een recente upgrade van de nvidia-driver. Ik vermoed dus dat het een fout in de bestuurder is.

Ik vond een antwoord op het nvidia-bord. Het is een bevestigde bug in de driver en nvidia werkt er blijkbaar al aan. In de tussentijd kan men compiz starten met

compiz --replace

om zich te ontdoen van de artefacten.

De bug zit in het Ubuntu-bugvolgsysteem inclusief een tijdelijke oplossing om compiz na hervatten automatisch opnieuw te starten.


77
2018-03-24 07:50



Geweldig speurwerk, bedankt! :) - Android Dev
Een andere oplossing zou zijn om te downgraden naar de vorige driverversie: askubuntu.com/a/896544/657603 - Antoine Dusséaux
Thx voor een oplossing. Ik weet het niet zeker, maar omdat ik dit probleem heb en ik ook een ander probleem heb: mijn laptop wordt niet altijd op de juiste manier opgeschort na een uur nadat het is ingesteld. - Skalár Wag
compiz --replace gedraagt ​​zich niet netjes met werkruimtes. Het plaatst alle vensters van alle werkruimten in de eerste werkruimte :( - AlikElzin-kilaka
U moet de terminal geopend houden met deze opdracht. Als u de terminal sluit, wordt de compiz opnieuw gestart. Dit zal werken tot de volgende opschorting, het is geen echte oplossing, ik kan niet echt functioneel zijn met het uitvoeren van dit commando een paar keer per dag. Ging naar de bovenstaande oplossing en veranderde de driver. - conualfy


UPDATE 2:

Nvidia heeft nu ook hun nvidia-375 drivers voor versie 375,66, dat is beschikbaar via de standaard Ubuntu-repositories van alle momenteel ondersteunde releases.

Dat betekent vanaf nu je zou geen speciale acties meer hoeven te ondernemen, behalve voor het doen van de normale systeemupdates zoals altijd. U hebt het driverpakket niet nodig van de graphics-drivers PPA als je ze niet wilt.

Dit is het changelog-fragment voor het pakket van de hoofdreposities op 16.04 met betrekking tot deze bug:

$ 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.
  [...]

BIJWERKEN:

Nvidia heeft dit probleem eindelijk verholpen en heeft een nieuwe werkende driverversie uitgebracht: nvidia-381

De oplossing die in dit antwoord wordt beschreven, is ook bijgewerkt en doet nu de suggestie om te upgraden naar deze vaste versie in plaats van te downgraden naar de nieuwste versie vóór de bug. Het blijft echter dezelfde procedure, je schakelt gewoon de pakketnamen uit.


Probleem oorzaak:

Enkele van de eigen Nvidia grafische driverpakketten voor Ubuntu (namelijk nvidia-375 en nvidia-378) zijn met fouten en produceren de witte artefacten rond vensterranden die worden weergegeven in uw schermafbeeldingen in de vraag. Dit gebeurt reproduceerbaar elke keer dat je dit opschort en weer wakker wordt.

Tot ongeveer een paar dagen geleden, de nvidia-367 pakket in de repository van Xenial werkte prima en betrouwbaar, maar nu hebben ze het bijgewerkt en geconverteerd naar een overgangspakket dat de buggy automatisch installeert nvidia-375 versie in plaats daarvan.

Oplossing (bijgewerkt na bugfix-release van Nvidia):

Zorg ervoor dat je echt een Nvidia grafische kaart hebt, die het probleem veroorzaakt, en niet een van een ander merk dat zich op een vergelijkbare manier misdraagt. Het installeren van Nvidia-stuurprogramma's voor niet-Nvidia grafische kaarten heeft geen zin.

U kunt dit controleren door de uitvoer van de onderstaande opdracht te controleren:

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

Mijn oplossing voor nu is om te downgraden van nvidia-375 of nvidia-378 naar nvidia-370, wat tot nu toe prima lijkt te werken.
Toen Nvidia een nieuwe bijgewerkte driverversie uitbracht nvidia-381 met deze bug gerepareerd, kunnen we die in plaats van downgraden (en moeten) installeren.

Dit pakket is niet verkrijgbaar bij de standaard repositories, maar u kunt het eenvoudig verkrijgen via een PPA en uw huidige stuurprogramma vervangen door de onderstaande opdrachten uit te voeren:

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

sudo apt install nvidia-370


58
2018-03-24 19:48



Voor algemene gebruikers zou ik de snelle niet-stuurprogramma-veranderende oplossing willen hier in plaats van de stuurprogramma's te downgraden. Gezien een oplossing zullen worden vrijgelaten (en vermoedelijk niet te ver van nu), het is echt tijdelijk ongemak. Als u de stuurprogramma's downgradet, moet u echter onthouden dat u deze moet terugdraaien apt terug naar een staat waar verdere upgrades automatisch opnieuw worden ontvangen. Je moet ook actief blijven controleren of de nieuwe, goed gefixeerde versie wordt vrijgegeven in plaats van alleen te wachten om hem automatisch te krijgen - Probleemloos en lastig. - Jason C
@JasonC Nee nvidia-370 zal zeer waarschijnlijk ook in een overgangspakket veranderen nvidia-367 is dat al, en daarom zou die update automatisch de driverversie nvidia installeren / het grafische drivers-team als geschikte opvolger. De 370 is het nieuwste (en misschien enige) momenteel ondersteunde stuurprogramma dat niet wordt beïnvloed door deze fout, dus waarom zou u het niet gebruiken? In vergelijking met de 367 die al in gebruik was voordat de upgrade deze bug introduceerde, is het nog steeds een upgrade. Bovendien houden we geen pakketten tegen of overschrijven we geen apt-configuratie, zoals je lijkt te denken. - Byte Commander
@ByteCommander Ik zal mijn commentaar onder twee voorwaarden verwijderen. 1) Zolang u er 100% zeker van bent zullen verander in een overgangspakket, ik zal je geloven (ik ben niet 100% zeker van mijn verklaring); of als u niet 100% zeker bent, voeg dan een vermelding van het risico toe aan het antwoord, en 2) Als u een vermelding toevoegt van hoe dit toekomstige updates niet zal beïnvloeden als het een overgangspakket wordt, en wat u één keer moet doen de oplossing is vrijgegeven, tot het antwoord. - Jason C
@JasonC Het is niet nodig om je reactie te verwijderen. Ik kan om voor de hand liggende redenen niet garanderen wat de beheerders van de graphics-drivers PPA zal in de toekomst met hun pakketten doen, ik kan gewoon veronderstellingen maken op basis van wat ze in het verleden hebben gedaan. En zolang 370 wordt ondersteund, is het niet nodig om actie te ondernemen, zelfs als ze de 375 en 378 repareren. Mijn sterke gok is dat zodra nvidia de 370 afkeert (zoals ze onlangs met de 367 deden), de PPA-beheerders het zullen veranderen in een overgangspakket, wat betekent dat de bijgewerkte versie geen code meer bevat maar een afhankelijkheid toevoegt aan de nieuwere driver. - Byte Commander
@ Matatsmath, ik weet het niet. De tijd zal het leren. Misschien wordt het nooit toegevoegd aan de repositories van "oudere" Ubuntu-versies die voor dat driverpakket werden vrijgegeven. Ik denk niet dat het mogelijk is om daar een juist antwoord op te geven voordat het daadwerkelijk is gebeurd. - Byte Commander


Deze is was een fout in de Nvidia-stuurprogramma's.

Nvidia heeft het probleem kunnen reproduceren, en ze werken aan een oplossing, die zal worden opgenomen in hun volgende stuurprogramma-release. (De oplossing is nu vrijgegeven, zie de onderstaande sectie).

Zien deze thread op de Nvidia-ontwikkelaarsforums voor meer informatie. Deze bug is ook geweest gerapporteerd op Launchpad.

Dankzij @Stefan voor zijn geweldige sletterige vaardigheden in het blootleggen van deze informatie!


Nvidia heeft eindelijk een officiële oplossing vrijgegeven!

  • De oplossing is te danken aan beta-stuurprogramma 381.09 Relevante screenshot van de changelog: enter image description here

  • Dit stuurprogramma bevindt zich momenteel niet in reposities

  • Tot de bovenstaande wijzigingen moet u het nieuwe stuurprogramma handmatig installeren Bijwerken: de 381.09-driver bevindt zich nu in een niet-officiële repository. U kunt het gepatchte stuurprogramma installeren vanaf de niet-officiële PPA, of u kunt het handmatig installeren.

  • UPDATE - NU VASTLEGGEN IN OFFICIËLE REPO:

    Een pluim voor @ ubfan1 voor dit melden! Zie het onderstaande gedeelte voor meer informatie


1. Installeren van het gepatchte [release] stuurprogramma van de officiële repo (aanbevolen):

Nvidia heeft op 05/04/2017 een update naar hun releaseschrijfprogramma gestuurd, met daarin onder andere de bugfix die u zoekt. Het bijgewerkte releasestuurprogramma heeft de versie gekregen 375.66

Sinds dit 375.66 bevindt zich in de officiële repository en het laden van de gepatchte driver is vrij eenvoudig.

  • Als je op dit moment in de buggy zit 375.39 versie, dan is alles wat nodig is een simpele:

    sudo apt-get update
    sudo apt-get upgrade
    

  • Als u zich in de oude driver bevindt, moet u een:

    sudo apt-get update
    

    Gevolgd door over te schakelen naar de nieuwe stuurprogrammaversie in Extra stuurprogramma's:

    enter image description here


  • Als u momenteel een handmatig geïnstalleerd stuurprogramma gebruikt, moet u het verwijderen, opnieuw opstarten en vervolgens de hierboven beschreven stappen uitvoeren.

Na het rebooten zou je moeten constateren dat je Nvidia-stuurprogramma is bijgewerkt naar 375.66.


2. Als u het nieuwere stuurprogramma niet nodig hebt voor compatibiliteit met uw GPU: *

* Merk op dat deze sectie is vervangen door sectie # 1

Als uw grafische kaart oud genoeg is om door de v340 van de driver te worden ondersteund, hoeft u geen nieuwere versie van een niet-officiële PPA te installeren. Voor mensen met nieuwere kaarten zoals de GTX 9-serie of 10-serie heb je echter een nieuwere driver nodig.

Voor het gemak is hier een volledige lijst met de kaarten die worden ondersteund door versie 340 van de driver:

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

Dus, als uw GPU wordt ondersteund door 340, dan kunt u eenvoudig overschakelen naar versie 340 in Aanvullende stuurprogramma's. (Versie 340 bevat deze bug niet.)

enter image description here

Zorg ervoor dat u opnieuw opstart na het omschakelen van de stuurprogrammaversie.


3. De gepatchte [beta] -driver installeren vanuit een niet-officiële PPA (aanbevolen):

  1. Start een terminal op met CTRL+ALT+T

  2. Voer deze opdrachten uit:

    sudo -i
    add-apt-repository ppa:graphics-drivers/ppa
    apt-get update
    apt-get install nvidia-381
    
  3. Herstart je computer en jij moeten wees goed om te gaan! Nadat uw computer opnieuw is opgestart, opent u de Nvidia X Server-instellingen. Met een beetje geluk ziet u de nieuwe stuurprogrammaversie:

    enter image description here


4. Naar handmatig installeer de gepatchte [beta] driver (NIET adviseren):

De Nvidia-stuurprogramma's installeren vanaf de *.run bestand is over het algemeen geen erg goed idee. Het heeft de neiging om dingen te breken. Het is dus beter om ze te installeren vanaf een PPA, zoals hierboven beschreven. Niettemin, als je avonturen hebt en ze handmatig wilt installeren, is dit het proces dat werkte voor mij met Ubuntu 16.04 en een GTX650.

Voordat u de gepatchte driver installeert, u MOET verwijder uw huidige eigen stuurprogramma en schakel over naar de Nouveau-driver:

enter image description here

Zorg ervoor dat u opnieuw opstart na het overschakelen. ALS JE DE HUIDIGE EIGENAARS BESTUURDER NIET KUNT VERVANGEN, ZAL DE NIEUWE BESTUURDER CONFLICTEN MET DE OUDE EN JE BREINT DINGEN!

  1. Download het gepatchte stuurprogramma van Nvidia. Hier is een directe link.

  2. Sla het bestand op in uw downloadmap

  3. Uitloggen uit uw GUI-sessie (u zou op het inlogscherm moeten eindigen voordat u doorgaat)

  4. Vuur op tty1 met CTRL+ALT+F1

  5. Log in met uw normale inloggegevens

  6. Voer deze opdrachten uit:

    sudo service lightdm stop
    cd Downloads
    chmod +x NVIDIA-Linux-x86_64-381.09.run
    sudo ./NVIDIA-Linux-x86_64-381.09.run
    
  7. Accepteer de licentieovereenkomst:

    enter image description here

  8. Het zal klagen dat het door distributie geleverde pre-installatie script niet lukte. Ga toch verder:

    enter image description here

  9. kiezen Ja wanneer u wordt gevraagd of u de kernelmodule met dkms wilt registreren:

    enter image description here

  10. kiezen Ja wanneer wordt u gevraagd of u de 32-bits compatibiliteitsbibliotheken wilt installeren:

    enter image description here

  11. Het zal een tijdje duren om de kernelmodule te bouwen, dus wees geduldig!

    enter image description here

  12. kiezen Ja wanneer je wordt gevraagd of je wilt rennen nvidia-xconfig:

    enter image description here

  13. kiezen OK om het installatieprogramma af te sluiten

  14. Bijna daar! Voer nu gewoon deze opdrachten uit:

    rm ~/.Xauthority
    rm ~/.config/dconf/unity
    sudo shutdown -r now
    
  15. Nadat uw computer opnieuw is opgestart, opent u de Nvidia X Server-instellingen. Met een beetje geluk ziet u de nieuwe stuurprogrammaversie:

    enter image description here


36
2018-04-07 20:55



NOTITIE: stap 14 werd gebruikt toen Unity-bureaublad van antwoord niet werd weergegeven zoals is besproken in de chatroom van Ask Ubuntu. Het is misschien niet nodig, maar als uw Unity-bureaublad niet wordt weergegeven, gebruikt u die stap als oplossing. - Sergiy Kolodyazhnyy
Sorry maar ik moet ruzie maken met deze oplossing. Het leidde me naar een fout waardoor ik niet in staat was om in te loggen en incompatibiliteit met wijn geïnstalleerde Windows-software. Een dergelijk inlogprobleem is gebruikelijk als u .run-bestanden van de nvidia-site installeert in plaats van de beschikbare bronnen binnen ubuntu te gebruiken. Een veel eenvoudigere manier om dit probleem op te lossen zou het gebruik van de versie 340 zijn, die direct beschikbaar is tussen de kiesbare stuurprogramma's in het menu Software en Updates. Het werkte in elk geval alles voor me. - Giorgio Vitanza
@GiorgioVitanza - Ik weet dat het installeren van de .run bestanden zijn niet echt de aanbevolen manier om dingen te doen. Maar het gebruik van de 340-driver is geen optie voor mensen met een nieuwere kaart zoals de 10-serie. Ik testte deze oplossing op mijn eigen computer en het werkte prima. - Android Dev
@GiorgioVitanza Probeer mijn antwoord - het installeert stuurprogramma's van de PPA's, die een stuk compacter zouden moeten zijn dan de run-bestanden. - Kaz Wolfe
@GiorgioVitanza - Nu de bestuurder in een PPA zit, heb ik mijn antwoord bijgewerkt met beide methoden. - Android Dev


Dit probleem is aanwezig in 375 en 378 stuurprogramma's ...


Gezien het simpele feit dat het doden van een compiz-proces het slechte grensprobleem oplost, heb ik een oplossing getest die werkt op mijn Ubuntu 16.04-systeem elke keer nadat het systeem is ontwaakt.

Stap 1:

Ik heb een script gemaakt met de naam fixbadborders in de directory /lib/systemd/system-sleep. Het bevatte het volgende:

#!/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=)

Stap 2:

Staat toe dat het script execute permissie heeft met:

sudo chmod +x fixbadborders

Om dit script te verwijderen:

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

Alle credits gaan naar Zon beer wie heeft dit script gemaakt opmerking 13


7
2018-03-25 15:41



Het is beter om vragen dubbel te markeren in plaats van dezelfde oplossing steeds opnieuw te posten - Zanna
Het nadeel is dat mijn inlogscherm nooit wordt weergegeven als je in de slaapstand komt :( - Hesam


NVIDIA heeft een bijgewerkte driverversie uitgebracht die deze regressie heeft opgelost. Elke bestuurder na 381.09 zal dit probleem nu niet meer hebben, totdat NVIDIA opnieuw een fout maakt.

Totdat de driver de hoofdrepository's bereikt, kunnen ze worden gedownload van de niet-officiële NVIDIA-driver PPA. Hierdoor zorgt u ervoor dat u niet hoeft te rotzooien met het installatieprogramma (wat algemeen als een slecht idee wordt beschouwd) of Nouveau. Op dezelfde manier kunnen de stuurprogramma's worden geïnstalleerd / gedeïnstalleerd apt in plaats van de gevaarlijke halve configuratie laat het NVIDIA-installatieprogramma de stuurprogramma's achter. Verder zal dit niet leiden tot inloglussen of fouten tenzij u een raar systeem hebt. Om te installeren, voer:

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

De oude stuurprogramma's worden automatisch verwijderd en de nieuwe worden geladen. Follow-up door je computer opnieuw op te starten (omdat NVIDIA-stuurprogramma's in de kernel moeten worden gebakken), en alles zou goed moeten werken. U kunt controleren of de stuurprogramma's correct zijn geïnstalleerd door de onderstaande opdracht uit te voeren:

nvidia-settings --version

Vergeet alle patches die in dit bericht worden beschreven, niet terug voor je update naar de nieuwste stuurprogramma's. Als u bijvoorbeeld de gepatchte versie van Unity hebt geïnstalleerd zoals hieronder wordt beschreven, voert u deze opdracht uit om terug te keren naar de normale versie:

sudo ppa-purge ppa:kaihengfeng/lp1292830 

Let op dat je nodig hebt ppa-purge geïnstalleerd, wat als volgt kan worden gedaan:

sudo apt install ppa-purge

Als bijwerken geen optie is (te oud van een kaart, bedrijfsbeleid, enz.):

Kai-Heng Feng van Launchpad is zo vriendelijk geweest om een ​​versie van Unity te uploaden naar zijn eigen PPA (ppa:kaihengfeng/lp1292830) die dit probleem moet oplossen. Om dit probleem op te lossen, voegt u gewoon zijn PPA toe door deze opdrachten uit te voeren:

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

Nadat u klaar bent, start u uw systeem opnieuw op of start u X11 opnieuw op door uit te loggen en vervolgens weer in te schakelen.

U kunt ook een van de volgende dingen doen:

  • Schakel over naar de Intel-kaart
    Als u NVIDIA Prime gebruikt, kunt u overschakelen naar de Intel-kaart, waardoor dit probleem wordt opgelost. Houd er echter rekening mee dat het systeem geen volledige grafische kracht kan gebruiken.
  • Downgraden van stuurprogramma's
    Volgens enkele opmerkingen over het bugrapport, downgraden naar NVIDIA-stuurprogramma 367.57 zou het probleem volledig moeten oplossen. Omdat dit niet langer aanwezig is in de PPA's, moet u het rechtstreeks downloaden van NVIDIA (64-bit)  (32-bit)  (32-bits ARM).

6
2018-03-28 05:59



367 lijkt niet langer te bestaan, zowel in de officiële Ubuntu repos als in de graphics-drivers/ppa PPA, dat pakket is een "overgangspakket voor nvidia-375, dus als u het installeert, krijgt u automatisch de 375-versie met fouten. Als u een bron weet waar de oude 367-driver vandaan komt, moet u deze opnemen in uw antwoord. - Byte Commander
@ByteCommander gedaan - Kaz Wolfe
Ter info: als je het hebt gemist, bevindt de gepatchte driver zich nu in de officiële repo. - Android Dev


De oplossing voorgesteld door Victor A. werkt prima. Houd er echter rekening mee dat de scripts zijn geplaatst in /lib/systemd/system-sleep/ worden uitgevoerd wanneer de computer in de sluimerstand gaat en wanneer hij wakker wordt. Aangezien we alleen het laatste willen, maakt het gebruik van het voorgestelde script het doorgaan naar slaapproces onnodig langzamer. Ik raad de volgende aan:

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

Een waarschuwing echter. Dit script (evenals datgene voorgesteld door Victor A.) zal het wachtwoordpromptscherm bij wake-up uitschakelen en vormt daarmee een veiligheidsrisico.


3
2018-03-28 04:08





Dit probleem is ook verholpen in het stuurprogramma Nvidia 375.66, dat zich in de normale opslagplaatsen bevindt, en moet worden geïnstalleerd door de normale updates.


3
2017-07-01 19:35



Leuke speurtocht! Ik heb mijn antwoord bijgewerkt om deze nieuwe ontwikkeling weer te geven en heeft je gecrediteerd voor het ontdekken dat er nu een gepatchte versie is in de officiële repo :) - Android Dev


Dit is geen volledige oplossing, maar het is misschien beter dan gebruiken compiz --replace of anders compiz herstarten en je werkruimtes verpesten.

Wanneer ik de opschorting hervat, doe ik dit:

  • Systeem -> Voorkeuren -> Uiterlijk
  • Verander het thema in een ander thema
  • Ga terug naar het originele thema

Hiermee worden de beschadigde structuren in de GPU opnieuw geladen. Als er een manier is om de thematexturen automatisch te forceren om opnieuw te worden geladen bij het hervatten, kan dat een permanente oplossing zijn.


2
2017-07-01 16:54



Nvidia heeft een gepatchte driver uitgebracht, dit is geen probleem meer - Android Dev


Er is een andere manier om dit probleem op te lossen. (Ik raad het niet aan als u veel processen uitvoert.)

Vermoord gewoon Xorg na het wakker worden van de computer.

Vind de PID van Xorg door:

top

Wanneer je de pid van de Xorg vindt, druk je op Ctrl + C om het "bovenste" proces te stoppen.

Ga naar root en kill het proces door:

sudo su
kill [pid]

Log daarna in op uw account.

Waarschuwing: hiermee worden al uw toepassingen gesloten. Firefox maakt hier geen probleem van, het herstelt gewoon al je tabbladen, maar ik kan andere apps niet garanderen, dus bewaar ze voordat je dit proces doet.


1
2018-03-30 04:42



Overigens, om de standaardmanier te sluiten, in plaats van alleen de taak te annuleren (Ctrl + C), kun je gewoon op 'q' drukken. - anonymous2