ฉันจะอัพเดตโมดูล nvidia ของฉันหลังจากอัพเดตเคอร์เนลได้อย่างไร


16

ทุกครั้งที่มีการอัพเดตเคอร์เนลไดรเวอร์กราฟิก nvidia จะหยุดทำงานเพราะไม่มีโมดูลเคอร์เนลที่ถูกต้อง

วิธี ubuntu คือการ 'คอมไพล์ใหม่' โมดูล nvidia สำหรับเคอร์เนลใหม่

ไม่ควรทำโดยอัตโนมัติ ฉันกำลังทรมานบั๊กหรือไม่?

คำตอบ:


5

หากคุณติดตั้งไดรเวอร์ NVIDIA เป็นแพ็คเกจอูบุนตูควรทำการอัปเดตโดยอัตโนมัติหลังจากการอัพเกรดเคอร์เนลแต่ละครั้ง

คุณสามารถติดตั้งไดร์เวอร์แพคเกจการใช้เครื่องมือในแดชบอร์ดหรือการติดตั้งแพคเกจAdditional Driversnvidia-current

หากคุณติดตั้งไดรเวอร์ nvidia โดยตรงจากเว็บไซต์ของพวกเขามันอาจจะเหมาะสมที่จะลบออกก่อนที่จะติดตั้งแพ็คเกจนี้ - ฉันไม่แน่ใจว่ามันจะตรวจจับความขัดแย้งได้ดีเพียงใด

หากคุณติดตั้งแพคเกจจากที่เก็บ ubuntu คุณสามารถลองกำหนดค่าใหม่ด้วยdpkg-reconfigureแต่ฉันสงสัยว่าการสร้างโมดูล nvidia จะถูกกระตุ้นโดยการติดตั้งเคอร์เนลใหม่และฉันไม่แน่ใจว่าจะเรียกใช้วิธีนี้ได้อย่างไร การถอนการติดตั้งและการติดตั้งแบบเดิมอาจใช้งานได้ดี ( sudo apt-get remove nvidia-current; sudo apt-get install nvidia-current)


ฉันติดตั้งไดรเวอร์ nvidia ผ่านแพ็คเกจ Ubuntu แต่การอัพเดทเคอร์เนลไม่ได้เรียกการคอมไพล์ใหม่ของโมดูล nvidia ของฉัน ขอบคุณสำหรับเคล็ดลับของคุณ
fazineroso

4

สำหรับฉัน dpkg-reconfigure จะสร้างไดรเวอร์ Nvidia ด้วยเคอร์เนลล่าสุด จากนั้นต้องรีบูตเพื่อให้มีผล ตัวอย่างของฉันด้านล่างใช้การอัปเดต nvidia-304 ที่เก่ากว่า

sudo dpkg-reconfigure nvidia-304-updates

แก้ไข: ฉันจัดการเพื่อให้สิ่งนี้เป็นอัตโนมัติโดยการเขียนสคริปต์zz-dkpg-reconfigure-nvidiaที่ทำงานหลังจากอัพเดตเคอร์เนล

#!/bin/bash
#
# Reconfigure nvidia driver

DRIVER=nvidia-304-updates

dpkg-reconfigure $DRIVER > /var/log/dpkg-reconfigure-nvidia.log 2>&1

exit 0

ฉันติดตั้งสคริปต์ข้างต้นด้วยการเรียกใช้

sudo install zz-dkpg-reconfigure-nvidia /etc/kernel/postinst.d

ใช้งานได้กับ Ubuntu 14.04 เคอร์เนลการอัพเดท 3.13.0-29 ถึง 3.13.0-36


4

เมื่อคุณติดตั้งไดรเวอร์ไบนารีของ NVIDIA คุณอาจยังไม่ได้ติดตั้งแพ็คเกจ dkms Dkmsทำให้แน่ใจว่าทุกครั้งที่คุณอัพเดตเคอร์เนลโมดูลที่สนับสนุนจะถูกคอมไพล์ใหม่:

sudo apt-get install dkms

คุณอาจจำเป็นต้องติดตั้งไดรเวอร์ไบนารีของ NVIDIA อีกครั้งในภายหลังและอนุญาตให้ใช้ DKMS ในระหว่างการติดตั้งเนื่องจากจำเป็นต้องลงทะเบียนกับมัน


ฉันพบปัญหาเดียวกันและเพิ่งรู้ว่าฉันยังไม่ได้ติดตั้งdkmsหลังจากอ่านคำตอบนี้
yaobin

3

หากคุณต้องการสร้างโมดูลเคอร์เนลใหม่เท่านั้นคุณอาจต้องดำเนินการ

sudo apt-get install --reinstall nvidia-current

หากคุณติดตั้ง nvidia-current ไว้หรือหากคุณติดตั้ง nvidia-331 ไว้สิ่งนี้จะทำงาน:

sudo apt-get install --reinstall nvidia-331

ไม่จำเป็นต้องเพิ่ม repo หรือติดตั้งซอฟต์แวร์ใหม่ :-)


1

โปรดทราบว่าไม่แนะนำให้ติดตั้งเคอร์เนลอัพเกรดหรือไดรเวอร์จากที่เก็บที่ไม่สนับสนุนอย่างเป็นทางการ! ทำตามคำแนะนำเหล่านี้ด้วยความเสี่ยงของคุณเองและหากคุณรู้ว่าคุณกำลังทำอะไร!

หากคุณติดตั้งเคอร์เนลที่อยู่ข้างหน้าคลังเก็บ Ubuntu ปัจจุบันอย่างเป็นทางการ (เช่นเคอร์เนล 3.4 หรือ 3.5) คุณอาจไม่ประสบความสำเร็จในการติดตั้งไดรเวอร์ nvidia เพียงอย่างเดียว

วิธีเดียวที่ฉันพบเพื่อให้ไดรเวอร์ nvidia กลับมาทำงานได้อีกครั้งคือการเพิ่ม ppa ต่อไปนี้ในที่เก็บของคุณ ในประเภทอาคาร:

sudo add-apt-repository ppa:xorg-edgers/ppa

หลังจากนั้นทำและsudo apt-get updatesudo apt-get install nvidia-current

นั่นควรทำเคล็ดลับ sudo apt-get upgradeถ้าไม่ทำงานเพิ่มเติม

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.