NB: Nvidia telah merilis perbaikan resmi; silakan lihat jawaban ByteCommander ini , jawaban saya sendiri dan / atau jawaban Kaz Wolfe .
Saat bangun Ubuntu 16.04 dari Suspend, gangguan grafis berikut ini muncul di semua jendela, menu konteks, dan yang serupa:
Ini saat ini diketahui memengaruhi kartu NVIDIA berikut yang menjalankan driver berpemilik:
- NVIDIA GeForce 610M, versi driver 375.39, 340.102
- NVIDIA GT 630M, driver versi 375.39
- NVIDIA GTX 650, driver versi 375.39
- NVIDIA GT 740M, versi driver 378.13
- NVIDIA GTX 745, versi driver tidak dikenal
- NVIDIA GTX 850M, versi driver 375.39, 378.13
- NVIDIA GT 940M, driver versi 375.39
- NVIDIA GTX 950M, versi driver tidak dikenal
- NVIDIA GTX 960M, versi driver 378.13
- NVIDIA GTX 970, driver versi 375.39
- NVIDIA GTX 970M, driver versi 375.39
- NVIDIA GTX 980 TI, versi driver tidak dikenal
- NVIDIA GTX 1060, versi driver 375.26, 375.39, 378.09
- NVIDIA GTX 1070, driver versi 378.09
Daftar di atas berasal dari laporan dari pengguna lain di sini di AU, utas ini , dan utas ini .
NB: Ini bukan berarti daftar eksklusif. Ini mungkin mempengaruhi hampir semua kartu Nvidia.
Selanjutnya, masalah ini telah direplikasi pada instalasi bersih di mana satu-satunya perubahan adalah pembaruan perangkat lunak dan pemasangan driver NVIDIA terbaru.
Apa yang sedang terjadi, dan bagaimana cara mengatasinya?
nvidia
graphics
suspend
visual-artifacts
Android Dev
sumber
sumber
lspci -k | grep -iEA3 '3d|vga'
yang berisi semua info yang diminta. Terima kasih.nvidia-367
driver yang saya gunakan menjadi paket transisi yang secara otomatis ditingkatkannvidia-375
, yang merupakan salah satu versi yang menyebabkan bug ini. Saatnya mengomeli nvidia dan menulis laporan bug.GeForce GTX 950M
.Jawaban:
NB: Ini adalah solusi sementara sampai Nvidia merilis driver yang ditambal. Gulir ke bawah untuk menemukan jawaban lain dengan perbaikan yang sebenarnya. - Android Dev
Saya memiliki masalah yang sama menggunakan GPU: Nvidia GTX 970 dengan driver nvidia 375.39 di Ubuntu 16.04.2 LTS
Saya telah mengamati ini sejak pemutakhiran driver nvidia baru-baru ini. Karena itu saya curiga ini adalah bug pada driver.
Saya menemukan jawaban di papan nvidia . Ini adalah bug yang dikonfirmasi pada driver dan nvidia tampaknya sudah bekerja di dalamnya. Sementara itu, seseorang dapat memulai kembali compiz dengan
untuk menyingkirkan artefak.
Bug ada di sistem pelacakan bug Ubuntu termasuk skrip penyelesaian untuk memulai kembali compiz secara otomatis setelah resume.
sumber
compiz --replace
tidak berperilaku baik dengan ruang kerja. Ini menempatkan semua jendela dari semua ruang kerja ke dalam ruang kerja pertama :(PEMBARUAN 2:
Nvidia sekarang juga memperbarui
nvidia-375
driver mereka ke versi 375.66 , yang tersedia dari repositori Ubuntu standar dari semua rilis yang saat ini didukung .Itu berarti mulai sekarang, Anda tidak harus mengambil tindakan khusus lagi , kecuali untuk melakukan pembaruan sistem normal seperti biasa. Anda tidak memerlukan paket driver dari
graphics-drivers
PPA jika Anda tidak menginginkannya.Berikut kutipan changelog untuk paket dari repo utama pada 16.04 mengenai bug ini:
MEMPERBARUI:
Nvidia akhirnya memperbaiki masalah ini dan merilis versi driver yang berfungsi:
nvidia-381
Solusi yang dijelaskan dalam jawaban ini telah diperbarui juga dan sekarang menyarankan untuk memutakhirkan ke versi tetap ini alih-alih menurunkan versi ke versi terbaru sebelum bug. Tetap prosedur yang sama, Anda hanya mengganti nama paket.
Penyebab masalah:
Beberapa paket driver grafis Nvidia untuk Ubuntu (yaitu
nvidia-375
dannvidia-378
) bersifat buggy dan menghasilkan artefak putih di sekitar batas jendela yang ditampilkan pada tangkapan layar Anda di pertanyaan. Ini terjadi berulang setiap kali Anda menangguhkan dan bangun dari itu lagi.Hingga sekitar beberapa hari yang lalu,
nvidia-367
paket dalam repositori Xenial berfungsi dengan baik dan andal, tetapi sekarang mereka memperbaruinya dan mengubahnya menjadi paket transisi yang secara otomatis menginstalnvidia-375
versi kereta .Solusi (diperbarui setelah rilis perbaikan bug dari Nvidia):
Solusi saya untuk saat ini adalah menurunkan versi darinvidia-375
ataunvidia-378
kenvidia-370
, yang tampaknya berfungsi dengan baik sejauh ini.Karena Nvidia merilis versi driver baru yang ditingkatkan
nvidia-381
dengan bug ini diperbaiki, kita dapat (dan harus) menginstal yang bukan downgrade.Paket ini tidak tersedia dari repositori standar, tetapi Anda dapat dengan mudah mendapatkannya dari PPA dan mengganti driver Anda saat ini dengan menjalankan perintah di bawah ini:
Setelah Anda menyelesaikan prosedur itu, reboot komputer Anda dan uji apakah Anda masih memiliki masalah. Bagi saya mereka pergi. Semoga berhasil.
sumber
apt
kembali ke keadaan di mana peningkatan lebih lanjut diterima secara otomatis lagi. Anda juga harus terus aktif memeriksa versi baru yang diperbaiki dengan benar, bukan hanya menunggu untuk mendapatkannya secara otomatis - Rawan masalah dan tidak nyaman.nvidia-370
Akan sangat mungkin juga berubah menjadi paket transisi seperti yangnvidia-367
sudah ada, dan oleh karena itu pembaruan akan secara otomatis menginstal versi driver nvidia / tim driver grafis dianggap sebagai penerus yang sesuai. 370 adalah driver terbaru (dan mungkin hanya) yang saat ini didukung yang tidak terpengaruh oleh bug ini, jadi mengapa tidak menggunakannya? Dibandingkan dengan 367 yang digunakan sebelum pemutakhiran memperkenalkan bug ini, ini masih merupakan pemutakhiran. Selain itu, kami tidak menahan paket apa pun atau mengabaikan konfigurasi apt, seperti yang Anda pikirkan.graphics-drivers
akan dilakukan oleh pengelola PPA dengan paket mereka di masa depan, saya hanya dapat membuat asumsi berdasarkan apa yang mereka lakukan di masa lalu. Dan selama 370 didukung, tidak perlu bertindak, bahkan ketika mereka memperbaiki 375 dan 378. Dugaan saya yang kuat adalah bahwa sekali nvidia mencabut 370 (seperti yang baru-baru ini mereka lakukan dengan 367), pengelola PPA akan mengubahnya ke dalam paket transisi, artinya versi yang diperbarui tidak akan berisi kode lagi tetapi menambah ketergantungan pada driver yang lebih baru.Ini
adalahbug pada driver Nvidia.Nvidia telah mampu mereproduksi masalah ini,
dan mereka sedang mengerjakan perbaikan, yang akan dimasukkan dalam rilis driver berikutnya.(Perbaikan sekarang telah dirilis, lihat bagian di bawah).Lihat utas ini di forum pengembang Nvidia untuk informasi lebih lanjut. Bug ini juga telah dilaporkan di Launchpad .
Terima kasih kepada @Stefan untuk keterampilan sluthingnya yang hebat dalam mengungkap informasi ini !
Nvidia akhirnya merilis perbaikan resmi!
Perbaikan berasal dari driver beta 381.09 tangkapan layar yang relevan dari changelog :
Driver ini saat ini tidak ada di repositori mana punSampai perubahan di atas, Anda harus menginstal driver baru secara manual. Perbarui: driver 381.09 sekarang dalam repositori tidak resmi. Anda dapat menginstal driver yang ditambal dari PPA tidak resmi, atau Anda dapat menginstalnya secara manual.UPDATE - TETAP SEKARANG DI RESPO RESMI:
Kudos to @ ubfan1 untuk melaporkan ini ! Lihat bagian di bawah untuk detailnya
1. Menginstal driver [rilis] yang ditambal dari repo resmi (disarankan):
Nvidia mendorong pembaruan ke driver rilis mereka pada 05/04/2017, yang berisi, di antaranya, perbaikan bug yang Anda cari. Driver rilis yang diperbarui telah diberikan versi
375.66
Karena ini
375.66
ada di repositori resmi, memuat driver yang ditambal cukup sederhana.Jika Anda saat ini menggunakan
375.39
versi buggy , maka yang diperlukan hanyalah sederhana:Jika Anda menggunakan driver lawas, maka Anda harus melakukan:
Diikuti dengan beralih ke versi driver baru di Driver Tambahan:
Jika saat ini Anda menggunakan driver yang diinstal secara manual, Anda harus menghapus instalannya, reboot, dan kemudian lakukan langkah-langkah yang diuraikan di atas.
Setelah reboot, Anda akan menemukan bahwa driver Nvidia Anda telah diperbarui
375.66
.2. Jika Anda tidak memerlukan driver yang lebih baru untuk kompatibilitas dengan GPU Anda: *
* Perhatikan bahwa bagian ini telah digantikan oleh bagian # 1
Jika kartu grafis Anda sudah cukup tua dan didukung oleh driver v340, tidak perlu menginstal versi yang lebih baru dari PPA tidak resmi. Untuk orang-orang dengan kartu yang lebih baru seperti GTX 9-series atau 10-series, Anda memerlukan driver yang lebih baru.
Untuk kenyamanan, berikut adalah daftar lengkap kartu yang didukung oleh versi 340 driver:
Jadi, jika GPU Anda didukung oleh 340, maka Anda dapat dengan mudah beralih ke versi 340 di Driver Tambahan. (Versi 340 tidak memiliki bug ini.)
Pastikan untuk reboot setelah mengganti versi driver.
3. Untuk menginstal driver [beta] yang ditambal dari PPA tidak resmi (
disarankan):Jalankan terminal dengan CTRL+ ALT+T
Jalankan perintah ini:
Nyalakan kembali komputer Anda, dan Anda seharusnya bisa melakukannya! Setelah komputer Anda boot ulang, buka Pengaturan Server Nvidia X. Dengan sedikit keberuntungan, Anda akan melihat versi driver baru:
4. Untuk menginstal driver [beta] yang ditambal secara manual ( TIDAK disarankan):
Menginstal driver Nvidia dari
*.run
file biasanya bukan ide yang bagus. Itu cenderung merusak sesuatu. Dengan demikian, lebih baik untuk menginstalnya dari PPA, seperti dijelaskan di atas. Namun demikian, jika Anda berpetualang dan ingin menginstalnya secara manual, ini adalah proses yang bekerja untuk saya dengan Ubuntu 16.04 dan GTX650.Sebelum menginstal driver yang ditambal, Anda HARUS menghapus driver milik Anda saat ini dan beralih ke driver Nouveau:
Pastikan untuk reboot setelah beralih. JIKA ANDA GAGAL UNTUK MENGINSTAL DRIVER PROPRIETER ANDA SAAT INI, DRIVER BARU AKAN BERLATIH DENGAN SATU TUA DAN ANDA AKAN MEMBEBASKAN HAL-HAL!
Unduh file driver yang ditambal dari Nvidia. Inilah tautan langsung.
Simpan file ke folder unduhan Anda
Logout dari sesi GUI Anda (Anda harus berada di layar login sebelum melanjutkan)
Nyalakan
tty1
dengan CTRL+ ALT+F1Login dengan kredensial normal Anda
Jalankan perintah ini:
Terima perjanjian lisensi:
Akan mengeluh bahwa skrip pra-instal yang disediakan distribusi gagal. Tetap lanjutkan:
Pilih Yesketika ditanya apakah Anda ingin mendaftarkan modul kernel dengan dkms:
Pilih Yesketika ditanya apakah Anda ingin menginstal perpustakaan kompatibilitas 32-bit:
Butuh waktu beberapa saat untuk membangun modul kernel, jadi bersabarlah!
Pilih Yesketika ditanya apakah Anda ingin menjalankan
nvidia-xconfig
:Pilih Okuntuk keluar dari penginstal
Hampir sampai! Sekarang jalankan saja perintah-perintah ini:
Setelah komputer Anda boot ulang, buka Pengaturan Server Nvidia X. Dengan sedikit keberuntungan, Anda akan melihat versi driver baru:
sumber
.run
file bukan cara yang disarankan untuk melakukan sesuatu. Tapi, menggunakan driver 340 bukanlah pilihan bagi orang-orang dengan kartu yang lebih baru seperti 10-series. Saya menguji solusi ini di komputer saya sendiri, dan itu berfungsi dengan baik.Masalah ini hadir pada driver 375 dan 378 ...
Mengingat bahwa hanya membunuh proses compiz memperbaiki masalah perbatasan yang buruk, saya telah menguji solusi yang bekerja pada sistem Ubuntu 16.04 saya setiap kali setelah sistem bangun.
Langkah 1:
Saya membuat skrip yang disebut
fixbadborders
dalam direktori/lib/systemd/system-sleep
. Isinya sebagai berikut:Langkah 2:
Diizinkan skrip untuk memiliki izin melaksanakan dengan:
Untuk menghapus skrip ini:
Semua kredit jatuh ke Sun Bear yang membuat komentar skrip ini 13
sumber
NVIDIA telah merilis versi driver yang diperbarui yang telah memperbaiki regresi ini. Driver yang melewati 381.09 sekarang tidak lagi memiliki masalah ini, sampai NVIDIA mengacaukannya lagi.
Sampai saat driver mencapai repositori utama, mereka dapat diunduh dari PPA driver NVIDIA tidak resmi. Melakukan hal ini memastikan bahwa Anda tidak perlu dipusingkan dengan pemasang (yang secara luas dianggap sebagai ide buruk) atau Nouveau. Demikian pula, ini akan memungkinkan driver untuk diinstal / dihapus melalui
apt
bukan setengah-konfigurasi berbahaya installer NVIDIA meninggalkan driver masuk. Selanjutnya, ini tidak akan menyebabkan loop masuk atau kesalahan kecuali Anda memiliki sistem aneh. Untuk menginstal, jalankan:Driver lama akan secara otomatis dihapus dan yang baru akan dimuat. Tindak lanjuti dengan me-reboot komputer Anda (karena driver NVIDIA perlu dimasukkan ke dalam kernel), dan semuanya akan berfungsi dengan baik. Anda dapat memeriksa apakah driver diinstal dengan benar dengan menjalankan perintah di bawah ini:
Pastikan untuk mengembalikan tambalan yang dijelaskan dalam posting ini sebelum Anda memperbarui ke driver terbaru. Misalnya, jika Anda menginstal versi tambalan seperti dijelaskan di bawah ini, jalankan perintah ini untuk kembali ke versi normal:
Perhatikan bahwa Anda perlu
ppa-purge
diinstal, yang dapat dilakukan seperti:Jika memperbarui bukanlah suatu pilihan (terlalu tua kartu, kebijakan perusahaan, dll):
Kai-Heng Feng dari Launchpad telah berbaik hati untuk mengunggah versi Unity ke PPA-nya sendiri (
ppa:kaihengfeng/lp1292830
) yang seharusnya menambal masalah ini. Untuk mengatasi masalah ini, cukup tambahkan PPA-nya dengan menjalankan perintah ini:Setelah selesai, reboot sistem Anda atau mulai ulang X11 dengan logout lalu kembali.
Atau, Anda juga dapat melakukan salah satu dari yang berikut:
Jika Anda menjalankan NVIDIA Prime, Anda dapat bertukar ke kartu Intel, yang akan menyelesaikan masalah ini. Namun, perlu diketahui bahwa hal itu akan mencegah sistem dari menggunakan daya grafis penuh.
Menurut beberapa komentar pada laporan bug , penurunan versi ke driver NVIDIA 367.57 harus menyelesaikan masalah sepenuhnya. Karena ini tidak lagi ada dalam PPA, Anda harus mengunduhnya langsung dari NVIDIA (64-bit) (32-bit) (32-bit ARM) .
sumber
graphics-drivers/ppa
PPA, paket itu adalah "paket transisi untuknvidia-375
, jadi menginstalnya akan secara otomatis membuat Anda mendapatkan versi kereta 375. Jika Anda tahu sumber ke mana mendapatkan dari pengemudi 367 lama, Anda harus memasukkannya ke dalam jawaban AndaSolusi yang diajukan oleh Victor A. berfungsi dengan baik. Namun, Anda harus memperhatikan bahwa skrip yang ditempatkan
/lib/systemd/system-sleep/
dijalankan ketika komputer tidur dan ketika bangun. Mengingat bahwa kita hanya menginginkan yang berikutnya, menggunakan skrip yang diusulkan memperlambat proses akan tidur tidak perlu. Saya merekomendasikan yang berikut ini:Tapi peringatan. Skrip ini (dan juga yang diusulkan oleh Victor A.) akan menonaktifkan layar prompt kata sandi saat bangun, sehingga merupakan risiko keamanan.
sumber
Masalah ini juga telah diperbaiki pada driver Nvidia 375.66, yang ada di repositori normal, dan harus diinstal oleh pembaruan normal.
sumber
Ini bukan solusi lengkap tetapi mungkin lebih baik daripada menggunakan
compiz --replace
atau memulai kembali compiz dan mengacaukan ruang kerja Anda.Ketika saya melanjutkan dari penangguhan, saya melakukan ini:
Ini akan memuat ulang tekstur yang tampaknya rusak di GPU. Jika ada cara untuk secara otomatis memaksa tekstur tema dimuat ulang pada resume, itu mungkin solusi permanen.
sumber
Ada cara lain untuk menyelesaikan masalah ini. (Saya tidak merekomendasikannya jika Anda memiliki banyak proses yang berjalan.)
Bunuh saja Xorg setelah bangun komputer.
Temukan PID Xorg dengan:
Ketika Anda menemukan pid dari Xorg, tekan Ctrl + C untuk menghentikan proses "atas".
Pergi ke root dan bunuh prosesnya dengan:
Setelah itu, login ke akun Anda.
Peringatan: ini akan menutup semua aplikasi Anda. Firefox tidak membuat masalah tentang ini, itu hanya akan mengembalikan semua tab Anda, tetapi saya tidak dapat menjamin aplikasi lain, jadi simpan sebelum melakukan proses ini.
sumber
Saya mencoba mengubah driver ke perbaikan bug yang diperbarui, tetapi itu mengacaukan kemampuan saya untuk melakukan pembelajaran yang mendalam dengan tensorflow, jadi saya kembali ke perangkat lunak kereta yang asli.
Ini terjadi setiap kali saya membangunkan Ubuntu dari tidur. Saya baru saja membuka terminal CTRL+ ALT+ Tdan ketik
Layar me-reset dan kesalahan hilang. Hanya butuh beberapa detik. Anda bahkan bisa menamainya di
~/.bashrc
likealias kc='killall compiz'
sehingga Anda hanya perlu mengetikkankc
saat ingin menjalankan perintah.sumber