ฉันวางแผนวันผ่อนคลายด้วย Portal 2 แต่เริ่ม Steam (เป็นครั้งแรกในสองสามสัปดาห์) ฉันได้รับการต้อนรับด้วยข้อความต่อไปนี้ใน terminal:
Error: API mismatch: the NVIDIA kernel module has version 270.41.19,
but this NVIDIA driver component has version 270.41.06. Please make
sure that the kernel module and all NVIDIA driver components
have the same version.
ฉันจะยอมรับว่าไม่รู้จริง ๆ ว่ามันกำลังพูดถึงเรื่องอะไรเมื่อมันบอกว่าคนขับ verion ของมีnvidia-current
270.41.19
ฉันคิดว่าเป็นไดรเวอร์และโมดูลทั้งหมดในที่เดียว
ฉันใช้ X-SWAT PPA และฉันสังเกตว่าnvidia-settings
แพคเกจนั้นได้รับการ275.09.07
ปรับปรุง เนื่องจากนี่เป็นเพียงแอปพลิเคชันการตั้งค่าฉันไม่คิดว่าสิ่งนี้ไม่ตรงกันกับสิ่งนี้ มันไม่ใช่เวอร์ชันเดียวกับปัญหาที่กำลังอธิบาย
ฉันไม่ควรลบกลับไปที่ไดรเวอร์ Nvidia มาตรฐานเพราะมันน้อยกว่าความเสถียรใน GTX580 ของฉัน ฉันจะยอมรับคำตอบที่ใช้การตั้งค่าด้วยตนเองและทำให้คอมไพล์ใหม่เมื่อเคอร์เนล recompiles (เช่นตัวช่วยสร้าง DKMS บางตัว) แต่มันต้องทำงาน ฉันไม่ต้องการกลับไปที่โหมดข้อความทุกครั้งที่ฉันรีสตาร์ทหลังจากอัพเกรดเคอร์เนล
แก้ไข: Minecraft ทำงานโดยไม่มีการร้องเรียนเพียงครั้งเดียวเกี่ยวกับรุ่นไดรเวอร์ เงามัวตายด้วยข้อผิดพลาดแบบเดียวกันเมื่อเข้าสู่เกม
แก้ไข:นี่คือสิ่งที่ฉันกำลังจัดการกับในแง่ของไฟล์ 32 บิต พวกเขาดูเหมือนจะเป็นเวอร์ชั่นที่ถูกต้อง
ls -l /usr/lib32/nvidia-current/ | awk '{ print $8 " " $9 " " $10 }'
libcuda.so -> libcuda.so.270.41.19
libcuda.so.1 -> libcuda.so.270.41.19
libcuda.so.270.41.19
libGL.la
libGL.so -> libGL.so.1
libGL.so.1 -> libGL.so.270.41.19
libGL.so.270.41.19
libnvcuvid.so -> libnvcuvid.so.1
libnvcuvid.so.1 -> libnvcuvid.so.270.41.19
libnvcuvid.so.270.41.19
libnvidia-cfg.so -> libnvidia-cfg.so.1
libnvidia-cfg.so.1 -> libnvidia-cfg.so.270.41.19
libnvidia-cfg.so.270.41.19
libnvidia-compiler.so -> libnvidia-compiler.so.1
libnvidia-compiler.so.1 -> libnvidia-compiler.so.270.41.19
libnvidia-compiler.so.270.41.19
libnvidia-glcore.so.270.41.19
libnvidia-ml.so -> libnvidia-ml.so.1
libnvidia-ml.so.1 -> libnvidia-ml.so.270.41.19
libnvidia-ml.so.270.41.19
libnvidia-tls.so.270.41.19
libnvidia-wfb.so.1 -> libnvidia-wfb.so.270.41.19
libnvidia-wfb.so.270.41.19
libOpenCL.so -> libOpenCL.so.1
libOpenCL.so.1 -> libOpenCL.so.1.0
libOpenCL.so.1.0 -> libOpenCL.so.1.0.0
libOpenCL.so.1.0.0
libXvMCNVIDIA_dynamic.so.1 -> libXvMCNVIDIA.so.270.41.19
libXvMCNVIDIA.so -> libXvMCNVIDIA.so.270.41.19
libXvMCNVIDIA.so.1 -> libXvMCNVIDIA.so.270.41.19
libXvMCNVIDIA.so.270.41.19
แก้ไข 2:ฉันอาจพบบางสิ่ง
แอบซุ่มอยู่ในความ/usr/lib32/
ถูกต้อง (ไม่ใช่ส่วนย่อยnvidia-current
) ฉันพบสิ่งต่อไปนี้:
ls -l /usr/lib32/ | awk '{ print $8 " " $9 " " $10 }' | grep 270
libcuda.so.1 -> libcuda.so.270.41.06
libcuda.so.270.41.06
libGL.so.1 -> libGL.so.270.41.06
libGL.so.270.41.06
libnvidia-compiler.so.270.41.06
libnvidia-glcore.so.270.41.06
libnvidia-tls.so.270.41.06
libvdpau.so.1 -> libvdpau.so.270.41.06
libvdpau.so.270.41.06
libvdpau_trace.so -> vdpau/libvdpau_trace.so.270.41.06
ด้วยเหตุผลบางอย่างทุกอย่างใน/usr/lib32/nvidia-current/
รุ่นที่ถูกต้อง แต่มีจำนวนของ cruft ใน/usr/lib32/
ที่อาจทำลายพรรค
แก้ไข 3: การพยายามติดตามว่าแพ็คเกจใดเป็นเจ้าของไฟล์เหล่านี้ล้มเหลว:
find /usr/lib32 -iname '*270.41.06*' -exec dpkg -S "{}" \;
dpkg-query: no path found matching pattern /usr/lib32/libnvidia-compiler.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/libGL.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/vdpau/libvdpau_nvidia.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/vdpau/libvdpau_trace.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/libvdpau.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/tls/libnvidia-tls.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/libnvidia-tls.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/libcuda.so.270.41.06.
dpkg-query: no path found matching pattern /usr/lib32/libnvidia-glcore.so.270.41.06.
มีคำแนะนำเกี่ยวกับวิธีจัดการกับเวอร์ชันที่ใช้งานไม่ได้เหล่านี้อย่างไร ลบออกไหม ลบ symlink ไป./nvidia-current/
เป็นเวอร์ชั่นแล้วหรือไม่
/usr/lib32
บิตห้องสมุดพื้นที่ของผู้ใช้อาจจะเป็นที่ใดที่หนึ่งภายใต้ ตรวจสอบว่ามีลักษณะเหมือนรุ่นเดียวกันกับรุ่น 64 บิตหลัก หากพวกเขาแตกต่างกันค้นหาแพคเกจเป็นเจ้าของพวกเขาและมองหาการปรับปรุง