コンピューターをスリープモードから復帰させた後、ウィンドウの境界に沿った奇妙なアーティファクト


118

注:Nvidiaは公式の修正プログラムをリリースしました。ByteCommanderの答え私自身の答え、および/またはKaz Wolfeの答えをご覧ください。


Ubuntu 16.04をSuspendから起動すると、すべてのウィンドウ、コンテキストメニューなどに次のグラフィカルな不具合が表示されます。

ここに画像の説明を入力してください


これは現在、独自のドライバーを実行している次のNVIDIAカードに影響を与えることが知られています。

  • NVIDIA GeForce 610M、ドライバーバージョン375.39、340.102
  • NVIDIA GT 630M、ドライバーバージョン375.39
  • NVIDIA GTX 650、ドライバーバージョン375.39
  • NVIDIA GT 740M、ドライバーバージョン378.13
  • NVIDIA GTX 745、不明なドライバーバージョン
  • NVIDIA GTX 850M、ドライバーバージョン375.39、378.13
  • NVIDIA GT 940M、ドライバーバージョン375.39
  • NVIDIA GTX 950M、不明なドライバーバージョン
  • NVIDIA GTX 960M、ドライバーバージョン378.13
  • NVIDIA GTX 970、ドライバーバージョン375.39
  • NVIDIA GTX 970M、ドライバーバージョン375.39
  • NVIDIA GTX 980 TI、不明なドライバーバージョン
  • NVIDIA GTX 1060、ドライバーバージョン375.26、375.39、378.09
  • NVIDIA GTX 1070、ドライバーバージョン378.09

上記のリストは、AU、このスレッド、およびこのスレッドに関する他のユーザーからのレポートに基づいています。

注意:これは決して排他的なリストではありません。ほぼすべてのNvidiaカードに影響します。

さらに、この問題は、ソフトウェアの更新と最新のNVIDIAドライバーのインストールのみが変更されたクリーンインストールでも再現されています。


何が起こっており、どのように解決できますか?


使用しているグラフィックスドライバーと使用しているグラフィックスカードのモデルは何ですか?最近、ラップトップをサスペンドしてウェイクアップした後、940Mカードとnvidia独自のドライバーのいくつかのバージョンで同じ問題が発生しました。してください編集質問をしての出力を追加lspci -k | grep -iEA3 '3d|vga'要求されたすべての情報が含まれています。ありがとう。
バイトコマンダー

1
ああ、実際に私もこの問題を抱えています再びので、nvidia-367私が使用するドライバが自動的にアップグレード移行用パッケージになったnvidia-375このバグの原因となったバージョンの一つでした、。nvidiaをナグし、バグレポートを作成する時間です。
バイトコマンダー

2
それは確かにダブですが、「コーナーの周りの奇妙なもの」のようなものをグーグルで試してみてください...とにかくこれらの質問の答えは貧弱ですが、以下の解決策は魅力的です。
イヴァン

1
@taylorswift-少なくとも41人がこの問題を抱えているようです。bugs.launchpad.net/ubuntu/+source/nvidia-graphics-drivers-375/ Nvidiaが修正するのを待つ必要があると思います。
Androidデベロッパー

にも影響しGeForce GTX 950Mます。
17

回答:


77

注意:これは、Nvidiaがパッチを適用したドライバーをリリースするまでの一時的な回避策でした。下にスクロールして、実際の修正を含む他の回答を見つけます。-Android Dev


GPUを使用して同じ問題があります:Ubuntu 16.04.2 LTS上のnvidia 375.39ドライバーを搭載したNvidia GTX 970

nvidiaドライバーの最近のアップグレード以来、これを観察しています。したがって、これはドライバーのバグだと思われます。

NVIDIAの掲示板で答えを見つけました。これは、ドライバーの確認済みのバグであり、nvidiaはすでにそれに取り組んでいるようです。それまでの間、compizを再起動できます

compiz --replace

アーティファクトを取り除くために。

このバグは、再開後にcompizを自動的に再起動する回避策スクリプトを含むUbuntuバグ追跡システムにあります。


別の解決策は、以前のドライバーバージョンにダウングレードすることです。askubuntu.com
AntoineDusséaux17年

回避策のためのThx。よくわかりませんが、この問題があり、別の問題もあるので、設定した1時間後にラップトップが常に正しく停止するわけではありません。
スカラーワグ

スリープから復帰すると、パスワードを要求する前に自動的にログインされますが、とにかくそれを修正しますか?
ハテムジェイバー

2
compiz --replaceワークスペースではうまく動作しません。すべてのワークスペースのすべてのウィンドウを最初のワークスペースに配置します:(
AlikElzin-kilaka

1
このコマンドで端末を開いたままにする必要があります。ターミナルを閉じると、compizが再起動します。これは次のサスペンドまで機能しますが、実際のソリューションではありません。このコマンドを1日に数回実行しても実際には機能しません。上記のソリューションに進み、ドライバーを変更しました。
17

58

更新2:

Nvidiaは現在、nvidia-375ドライバーをバージョン375.66に更新しました。これは、現在サポートされているすべてのリリースの標準Ubuntuリポジトリから入手できます

つまり、これからは、通常のシステム更新を常に行うことを除いて、特別なアクションを実行する必要はありません。不要なgraphics-drivers場合、PPAのドライバーパッケージは必要ありません。

このバグに関する16.04のメインリポジトリからのパッケージの変更ログの抜粋を次に示します。

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

更新:

Nvidiaはついにこの問題を修正し、新しいドライバーバージョンをリリースしました。 nvidia-381

この回答で説明されているソリューションも更新されており、バグの前に最新バージョンにダウングレードするのではなく、この修正バージョンにアップグレードすることをお勧めします。ただし、手順は同じですが、パッケージ名を変更するだけです。


問題の原因:

Ubuntu用のプロプライエタリなNvidiaグラフィックドライバーパッケージの一部(nvidia-375およびnvidia-378)はバグが多く、問題のスクリーンショットに表示されるウィンドウの境界の周りに白いアーティファクトを生成します。これは、サスペンドして再開するたびに再現可能に発生します。

数日前までは、nvidia-367Xenialのリポジトリ内のパッケージは正常かつ確実に機能していましたが、現在は更新し、nvidia-375代わりにバグのあるバージョンを自動的にインストールする移行パッケージに変換しました。

解決策(Nvidiaからのバグ修正リリース後に更新):

問題を引き起こしているNvidiaグラフィックカードを実際に使用していることを確認してください。偶然同じような動作をする別のブランドのものではありません。Nvidia以外のグラフィックカードにNvidiaドライバーをインストールしても効果はありません。

これを確認するには、次のコマンドの出力を確認します。

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

今の私のソリューションは、ダウングレードすることであるnvidia-375nvidia-378nvidia-370、これまで正常に動作するようですこれは、。
Nvidia nvidia-381がこのバグが修正された新しいアップグレードされたドライバーバージョンをリリースしたので、ダウングレードする代わりにそのドライバーをインストールできます(およびインストールする必要があります)。

このパッケージは標準リポジトリからは入手できませんが、PPAから簡単に入手でき、以下のコマンドを実行することで現在のドライバーを置き換えることができます。

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

sudo apt install nvidia-370

sudo apt install nvidia-381

その手順を完了したら、コンピューターを再起動して、まだ問題があるかどうかをテストします。私にとっては、彼らはいなくなりました。幸運を。


1
一般ユーザーの場合、ここではドライバーをダウングレードするよりも、ドライバーを変更しない迅速な回避策をお勧めします。修正リリースされることを考えると(おそらく今からそれほど遠くないはずです)、実際には一時的な不快感です。ただし、ドライバーをダウングレードする場合はapt、さらにアップグレードが自動的に受信される状態に戻すことを忘れないでください。また、自動的に取得されるのを待つのではなく、リリースされる新しい適切に修正されたバージョンを積極的にチェックし続ける必要があります。問題が発生しやすく不便です。
ジェイソンC

1
@JasonCいいえ。これnvidia-370nvidia-367既にあるように暫定的なパッケージに変わる可能性が非常に高いため、その更新はドライバーバージョンnvidia /グラフィックスドライバーチームが適切な後継者と見なすように自動的にインストールします。370は、このバグの影響を受けない、現在サポートされている最新の(そしておそらく唯一の)ドライバーです。このバグを導入するアップグレードの前に使用されていた367と比較して、それはまだアップグレードです。さらに、皆さんが考えているように、パッケージを保留したり、apt構成をオーバーライドしたりすることもありません。
バイトコマンダー

1
@ByteCommander 2つの条件下でコメントを削除します。1)移行パッケージに変わること 100%確信している限り、あなたを信じます(私の声明に100%確信はありません)。または、100%自信がない場合は、回答にリスクの説明を追加します。2)これが移行パッケージになった場合に今後の更新にどのように影響しないかについての説明を追加します。答えは、修正がリリースされます。
ジェイソンC

1
@JasonCコメントを削除する必要はありません。明白な理由で、graphics-driversPPA のメンテナーが将来パッケージで何をするかを保証することはできません。過去に何をしたかに基づいて推測することができます。そして、370がサポートされている限り、375と378を修正する場合でも、行動する必要はありません。つまり、更新されたバージョンにはコードが含まれなくなりますが、新しいドライバーに依存関係が追加されます。
バイトコマンダー

2
@Matsmath知らない。時間だけが教えてくれます。たぶん、そのドライバーパッケージの前にリリースされた「古い」Ubuntuバージョンのリポジトリに追加されることはありません。それが実際に起こる前に、それに対する正確な答えを与えることは不可能だと思います。
バイトコマンダー

36

これ Nvidiaドライバーのバグでした。

Nvidiaはこの問題を再現できており、次のドライバーリリースに含まれる修正プログラムに取り組んでいます。(修正は現在リリースされています。以下のセクションを参照してください)。

詳細については、Nvidia開発者フォーラムのこのスレッドを参照してください。このバグはLaunchpadでも報告されています。

@Stefanこの情報明らかにする際の優れたスキルをありがとう!


Nvidiaはついに公式修正をリリースしました!

  • 修正は、変更ログからのベータドライバ381.09の関連するスクリーンショットのおかげです。 ここに画像の説明を入力してください

  • このドライバーは現在どのリポジトリにもありません

  • 上記の変更が行われるまで、新しいドライバーを手動でインストールする必要があります。アップデート: 381.09ドライバーは現在、非公式リポジトリにあります。非公式のPPAからパッチを適用したドライバーをインストールするか、手動でインストールできます。

  • 更新-公式リポジトリで今すぐ修正:

    これ報告してくれ@ ubfan1に称賛を!詳細については、以下のセクションを参照してください


1.公式リポジトリからパッチを適用した[リリース]ドライバーをインストールする(推奨):

Nvidiaは、2017年5月4日にリリースドライバーの更新をプッシュしました。これには、特に探しているバグ修正が含まれています。更新されたリリースドライバーにはバージョンが与えられています375.66

これ375.66は公式リポジトリにあるため、パッチを適用したドライバーのロードは非常に簡単です。

  • 現在、バグのある375.39バージョンを使用している場合、必要なのは簡単です:

    sudo apt-get update
    sudo apt-get upgrade
    

  • レガシードライバを使用している場合は、次を実行する必要があります。

    sudo apt-get update
    

    その後、追加ドライバーで新しいドライバーバージョンに切り替えます。

    ここに画像の説明を入力してください


  • 現在手動でインストールしたドライバーを使用している場合は、ドライバーをアンインストールしてから再起動し、上記の手順を実行する必要があります。

再起動後、Nvidiaドライバーがに更新されていることがわかります375.66


2. GPUとの互換性のために新しいドライバーが必要ない場合:*

*このセクションはセクション#1に置き換えられていることに注意してください。

グラフィックカードが十分に古く、v340ドライバーでサポートされている場合は、非公式のPPAから新しいバージョンをインストールする必要はありません。ただし、GTX 9シリーズや10シリーズなどの新しいカードをお持ちの場合は、新しいドライバーが必要です。

便宜上、ドライバーのバージョン340でサポートされているカードの完全なリストを以下に示します。

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

したがって、GPUが340でサポートされている場合、追加ドライバーでバージョン340に切り替えることができます。(バージョン340にはこのバグはありません。)

ここに画像の説明を入力してください

ドライバのバージョンを切り替えた後、必ず再起動してください。


3.パッチを適用した[ベータ]ドライバーを非公式のPPAからインストールするには(推奨):

  1. CTRL+ ALT+で端末を起動しますT

  2. 次のコマンドを実行します。

    sudo -i
    add-apt-repository ppa:graphics-drivers/ppa
    apt-get update
    apt-get install nvidia-381
    
  3. コンピューターを再起動すれ、準備完了です!コンピューターの再起動後、Nvidia Xサーバー設定を開きます。運が良ければ、新しいドライバーバージョンが表示されます。

    ここに画像の説明を入力してください


4. パッチを適用した[ベータ]ドライバーを手動でインストールするには(推奨しません):

*.runファイルからNvidiaドライバーをインストールすることは、一般的にあまり良い考えではありません。それは物事を壊す傾向があります。したがって、上記のようにPPAからインストールすることをお勧めします。それでも、冒険をしていて手動でインストールしたい場合、これがUbuntu 16.04とGTX650でうまくいったプロセスです。

パッチを当てたドライバをインストールする前に、しなければならないあなたの現在のプロプライエタリドライバをアンインストールしてヌーボードライバに切り替えます。

ここに画像の説明を入力してください

切り替え後は必ず再起動してください。現在の専有ドライバーをアンインストールしなかった場合、新しいドライバーは古いドライバーと競合し、問題が発生します!

  1. パッチを適用したドライバーファイルをNvidiaからダウンロードします。これが直接リンクです。

  2. ファイルをダウンロードフォルダーに保存します

  3. GUIセッションからログアウトします(続行する前にログイン画面で終了する必要があります)

  4. アップ火災tty1CTRL+ ALT+F1

  5. 通常の資格情報でログインします

  6. 次のコマンドを実行します。

    sudo service lightdm stop
    cd Downloads
    chmod +x NVIDIA-Linux-x86_64-381.09.run
    sudo ./NVIDIA-Linux-x86_64-381.09.run
    
  7. ライセンス契約に同意します。

    ここに画像の説明を入力してください

  8. ディストリビューションが提供するプレインストーラースクリプトが失敗したと文句を言います。とにかく続けます:

    ここに画像の説明を入力してください

  9. Yesカーネルモジュールをdkmsに登録するかどうかを尋ねられたら選択します。

    ここに画像の説明を入力してください

  10. Yes32ビット互換ライブラリをインストールするかどうかを尋ねられたら選択します。

    ここに画像の説明を入力してください

  11. カーネルモジュールのビルドにはしばらく時間がかかるため、しばらくお待ちください!

    ここに画像の説明を入力してください

  12. Yes実行するかどうか尋ねられたら選択しますnvidia-xconfig

    ここに画像の説明を入力してください

  13. Okインストーラーの終了を選択します

  14. もうすぐ!次のコマンドを実行してください:

    rm ~/.Xauthority
    rm ~/.config/dconf/unity
    sudo shutdown -r now
    
  15. コンピューターの再起動後、Nvidia Xサーバー設定を開きます。運が良ければ、新しいドライバーバージョンが表示されます。

    ここに画像の説明を入力してください


1
:Ask Ubuntuチャットルームで説明したように、回答のUnityデスクトップが表示されなかった場合は、ステップ14が使用されました。必要ではないかもしれませんが、Unityデスクトップが表示されない場合は、そのステップを解決策として使用してください。
セルギーコロディアズニー

申し訳ありませんが、この解決策について議論する必要があります。エラーが発生して、ログインできず、ワインがインストールされたWindowsソフトウェアとの互換性が失われました。このようなログインの問題は、ubuntu内で利用可能なソースを使用する代わりに、nvidiaサイトから.runファイルをインストールする場合に一般的です。この問題を修正するはるかに簡単な方法は、バージョン340を使用することです。バージョン340は、[ソフトウェアと更新]メニューで選択可能なドライバー間で使用できます。少なくともそれは私のためにすべてを修正しました。
ジョルジオヴィタンザ

@GiorgioVitanza- .runファイルをインストールすることは、実際には推奨される方法ではないことを知っています。しかし、340ドライバーを使用することは、10シリーズのような新しいカードを持っている人にとっては選択肢ではありません。私は自分のコンピューターでこのソリューションをテストしましたが、うまくいきました。
Androidデベロッパー

@GiorgioVitanza私の答えを試してください-実行ファイルよりもはるかに互換性のあるPPAからドライバーをインストールします。
カズウルフ

@GiorgioVitanza-ドライバーがPPAになったので、両方の方法を含めるように回答を更新しました。
Androidデベロッパー

7

この問題は375および378ドライバーに存在します...


compizプロセスを強制終了するだけで境界の問題が解決することを考えると、システムが起動するたびにUbuntu 16.04システムで動作するソリューションをテストしました。

ステップ1:

fixbadbordersディレクトリにというスクリプトを作成しました/lib/systemd/system-sleep。次のものが含まれていました。

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

ステップ2:

スクリプトに次の実行許可を与えました。

sudo chmod +x fixbadborders

このスクリプトを削除するには:

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

すべてのクレジットは、このスクリプトコメント13を作成したSun Bearに送られます。


同じソリューションを何度も投稿するのではなく、質問に重複としてフラグを
付ける方が良い-Zanna

3
短所は、スリープ状態からデスクトップにアクセスしたときにログイン画面が表示されないことです。(
Hesam

6

NVIDIAは、この回帰を修正した更新されたドライバーバージョンをリリースしました。381.09を過ぎたドライバーは、NVIDIAが再び混乱するまで、この問題は発生しなくなります。

ドライバーがメインリポジトリに到達するまで、非公式のNVIDIAドライバーPPAからダウンロードできます。これにより、インストーラー(広く悪い考えと見なされている)またはNouveauをいじる必要がなくなります。同様に、それはドライバが通過アンインストール/インストールできるようになりますapt。代わりに、NVIDIAインストーラがでドライバを残し、危険な半構成にさらに、これはなりません、あなたが奇妙なシステムを持っていない限り、任意のログインループやエラーを引き起こします。インストールするには、次を実行します。

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

古いドライバーは自動的にアンインストールされ、新しいドライバーが読み込まれます。コンピューターを再起動して(NVIDIAドライバーをカーネルに焼き付ける必要があるため)、すべてが正常に機能するはずです。以下のコマンドを実行して、ドライバーが正しくインストールされたことを確認できます。

nvidia-settings --version

最新のドライバーに更新する前に、この投稿記載されているパッチを必ず元に戻してください。たとえば、以下に説明するようにパッチを適用したバージョンのUnityをインストールした場合、このコマンドを実行して通常のバージョンに戻します。

sudo ppa-purge ppa:kaihengfeng/lp1292830 

以下のppa-purgeようにインストールする必要があることに注意してください。

sudo apt install ppa-purge

更新がオプションではない場合(カード、会社のポリシーなどが古すぎる):

LaunchpadのKai-Heng Fengは、ppa:kaihengfeng/lp1292830この問題にパッチを当てる必要があるUnityのバージョンを自分のPPA()にアップロードするのに十分親切です。この問題を解決するには、次のコマンドを実行してPPAを追加します。

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

完了したら、システムを再起動するか、ログアウトしてから再度ログインしてX11を再起動します。

または、次のいずれかを実行することもできます。

  • Intelカードに切り替える
    NVIDIA Primeを実行している場合は、Intelカードに切り替えてこの問題を解決できます。ただし、システムがフルグラフィックスパワーを使用するのを防ぐことに注意してください。
  • ドライバーのダウングレードバグレポートに関するいくつかのコメントに
    よると、NVIDIAドライバー367.57にダウングレードすると、問題が完全に解決するはずです。これはPPAには存在しないため、NVIDIA (64ビット)(32ビット)(32ビットARM)から直接ダウンロードする必要があります。

367は、Ubuntuの公式リポジトリとgraphics-drivers/ppaPPAの両方に存在しなくなったようです。そのパッケージはの移行パッケージなnvidia-375ので、インストールするとバグのある375バージョンが自動的に取得されます。古い367ドライバーの場合、回答に含める必要があります
バイトコマンダー

@ByteCommander行わ
カズウォルフ

参考までに、パッチを適用したドライバーは公式リポジトリにあります。
Androidデベロッパー

3

Victor A.が提案した解決策は問題なく機能します。ただし、/lib/systemd/system-sleep/コンピューターがスリープ状態になったときとスリープ状態が解除されたときに、配置されたスクリプトが実行されることに注意してください。後者のみが必要な場合、提案されたスクリプトを使用すると、スリープ状態に入るプロセスが不必要に遅くなります。以下をお勧めします:

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

しかし、警告。このスクリプト(およびVictor A.が提案したスクリプト)は、ウェイクアップ時にパスワードプロンプト画面を無効にし、セキュリティリスクを構成します。


3

この問題は、通常のリポジトリにあるNvidia 375.66ドライバーでも修正されており、通常のアップデートでインストールする必要があります。


いいね!この新しい開発を反映するように回答を更新し、公式リポジトリにパッチが適用されたバージョンがあることを発見したことを評価しました:)
Android Dev

2

これは完全なソリューションではありませんが、compiz --replacecompiz を使用するか、そうでなければcompizを再起動してワークスペースを台無しにするよりも良いかもしれません。

サスペンドから再開するとき、これを行います:

  • システム->設定->外観
  • テーマを別のテーマに変更する
  • 元のテーマに戻す

これにより、GPUの破損したテクスチャのように見えるものがリロードされます。再開時にテーマテクスチャを自動的にリロードする方法がある場合、それは永続的な解決策かもしれません。



1

この問題を解決する別の方法があります。(多数のプロセスを実行している場合はお勧めしません。)

コンピューターを起動した後、Xorgを強制終了します。

XorgのPIDを見つけるには:

top

XorgのPIDが見つかったら、Ctrl + Cを押して「トップ」プロセスを停止します。

ルートに移動し、次の方法でプロセスを強制終了します。

sudo su
kill [pid]

その後、アカウントにログインします。

警告:これにより、すべてのアプリケーションが閉じられます。Firefoxはこれについて問題を起こしません。すべてのタブを復元するだけですが、他のアプリを保証することはできませんので、このプロセスを行う前にそれらを保存してください。


2
ちなみに、タスクをキャンセルするだけでなく(Ctrl + C)、標準の方法でトップを閉じるには、「q」を押すだけです。
匿名2

0

ドライバーを最新のバグ修正に変更しようとしましたが、テンソルフローでディープラーニングを実行する能力を台無しにしていたため、元のバグのあるソフトウェアに戻りました。

これは、Ubuntuがスリープ状態から復帰するたびに発生します。ターミナルを開いてCTRL+ ALT+ Tと入力するだけです

killall compiz

ディスプレイがリセットされ、グリッチがなくなります。数秒で完了します。別名でエイリアスを作成することも~/.bashrcできるalias kc='killall compiz'のでkc、コマンドを実行するときに入力するだけです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.