ไม่สามารถเปลี่ยนจาก Intel เป็น NVIDIA GPU ได้อีกต่อไป


39

[Ubuntu 14.04 64 บิต]

หลังจากสลับระหว่างกราฟิก Intel / NVIDIA และไดรเวอร์ NVIDIA ที่แตกต่างกันตอนนี้ฉันก็ติดอยู่กับ Intel GPU มันไม่เคยมีปัญหาเลยในการสลับระหว่างสอง - ฉันไม่สามารถพูดได้อย่างแน่นอนว่าอะไรเป็นสาเหตุของปัญหา ฉันคิดว่าสิ่งสุดท้ายที่ฉันทำคือเปลี่ยนไปใช้ไดรเวอร์ "X.Org X server" - จากนั้นบางสิ่งก็พัง สลับเป็นส่วนหนึ่งของฉันพยายามที่จะแก้ไขปัญหาปัญหากับการตั้งค่าหน้าจอรอง

ป้อนคำอธิบายรูปภาพที่นี่

ทุกครั้งที่ฉันพยายามเปลี่ยนมาใช้ NVIDIA ฉันจะได้รับข้อความแสดงข้อผิดพลาดที่แสดงออกมากและจากนั้นจะเปลี่ยนกลับเป็น Intel: /

ฉันสามารถใช้ความช่วยเหลือเกี่ยวกับการแก้ไขปัญหาหรือข้อเสนอแนะเกี่ยวกับสิ่งที่จะลอง

จนถึงตอนนี้ฉัน (un / re) ได้ติดตั้งแพกเกจต่างๆ "nvidia-settings" / "nvidia-current" / "nvidia-current-updates" / "nvidia-331" / "nvidia-331-updates" ไม่มีประโยชน์

> lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
01:00.0 VGA compatible controller: NVIDIA Corporation GK107GLM [Quadro K2000M] (rev a1)

/etc/apt/sources.list: สามารถหาได้ที่ pastebin.com


เกี่ยวกับข้อเสนอแนะโดย Qasim:

raffael@raffael-GT60~> sudo prime-select nvidia
[sudo] password for raffael: 
Error: alternatives are not set up properly
Error: nvidia mode can't be enabled
raffael@raffael-GT60~> sudo prime-select intel
Error: alternatives are not set up properly
Error: intel mode can't be enabled

เกี่ยวกับข้อเสนอแนะที่สองโดย Qasim:

sudo apt-get purge nvidia*
[reboot]
sudo apt-get install nvidia-319-updates nvidia-settings-319-updates nvidia-prime
[reboot]
[tried to switch to NVIDIA]

สิ่งแปลก ๆ - นี่ใช้งานได้จริงในครั้งแรก! จากนั้นฉันเปลี่ยนกลับเป็น Intel - ออกจากระบบ / เปิด - เปลี่ยนกลับเป็น NVIDIA - ออกจากระบบ / เปิด -> ระบบล้มเหลว - ข้อผิดพลาดตามที่อธิบายไว้ข้างต้น


เกี่ยวกับข้อเสนอแนะโดย Louis Matthijssen:

raffael@raffael-GT60:~$ sudo update-alternatives --set /etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf /usr/lib/nvidia-331-updates-prime/ld.so.conf
update-alternatives: error: alternative name (/etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf) must not contain '/' and spaces
raffael@raffael-GT60:~$ ls -la /usr/lib/nvidia-331-updates-prime
total 44
drwxr-xr-x   2 root root  4096 Mai  2 22:45 .
drwxr-xr-x 196 root root 32768 Mai  3 10:57 ..
-rw-r--r--   1 root root     0 Apr  4 11:50 alt_ld.so.conf
-rw-r--r--   1 root root    60 Apr  4 11:50 ld.so.conf

ซ้ำอีกครั้งสองครั้ง - ไม่ทำงานอีกครั้ง: /

ตอนนี้ดูเหมือนว่าจะทำงาน:

raffael@raffael-GT60:~$ sudo update-alternatives --set x86_64-linux-gnu_gl_conf /usr/lib/nvidia-331-updates-prime/ld.so.conf 
update-alternatives: using /usr/lib/nvidia-331-updates-prime/ld.so.conf to provide /etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf (x86_64-linux-gnu_gl_conf) in manual mode

raffael@raffael-GT60:~$ sudo update-alternatives --set i386-linux-gnu_gl_conf /usr/lib/nvidia-331-updates-prime/alt_ld.so.conf
update-alternatives: using /usr/lib/nvidia-331-updates-prime/alt_ld.so.conf to provide /etc/ld.so.conf.d/i386-linux-gnu_GL.conf (i386-linux-gnu_gl_conf) in manual mode

หลังจากนั้นฉันสามารถเปลี่ยนเป็น NVIDIA - แต่ไม่ได้เสนอ "การตั้งค่าเซิร์ฟเวอร์ NVIDIA X" เพิ่มเติม - จะรีบูตตอนนี้และดูว่าเกิดอะไรขึ้น ติดตาม: มันเปลี่ยนกลับเป็น Intel หลังจากรีบูตและไม่สามารถเปลี่ยนเป็น NVIDIA ได้ตามปกติ สำหรับฉันดูเหมือนว่าวิธีการของคุณหลุยส์หลอกลวงให้ระบบปฏิบัติการเชื่อว่าใช้ NVIDIA ในขณะที่นี่ไม่ใช่กรณีจริง


2
ฉันมีปัญหาเดียวกันจริง ๆ แล้วปัญหาขยายออกไปและตอนนี้การ์ด Nvidia ของฉันไม่ทำงานใน windows 8.1 ซึ่งหมายความว่ามีผลต่อการกำหนดค่าบางอย่างของระบบปฏิบัติการ :( จริง ๆ แล้วฉันพยายามติดตั้ง Ubuntu แบบสะอาดและไม่ ทำการตั้งค่าการ์ดอีกครั้ง
user5288

คุณโพสต์ของคุณได้/etc/apt/sources.listไหม
davidbaumann

@Raffael ... ฉันได้ลบคำตอบลองลบและติดตั้ง nvidia prime โดย sudo apt-get install nvidia-319-updates nvidia-settings-319-updates nvidia-prime
Qasim

คุณลบ nvidia 1st หรือไม่? @Raffael
Qasim

ฉันสามารถเข้าถึงของผู้ใช้ Teamviewer ได้หรือไม่เพื่อให้ฉันสามารถดูปัญหาได้
Qasim

คำตอบ:


18

เมื่อคุณได้รับข้อผิดพลาดต่อไปนี้:

Error: alternatives are not set up properly

คุณอาจลองตั้งทางเลือกด้วยตัวเอง

เมื่อฉันเปลี่ยนมาใช้ Intel ฉันเห็น:

update-alternatives: using /usr/lib/nvidia-331-prime/ld.so.conf to provide /etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf (x86_64-linux-gnu_gl_conf) in manual mode
update-alternatives: using /usr/lib/nvidia-331-prime/alt_ld.so.conf to provide /etc/ld.so.conf.d/i386-linux-gnu_GL.conf (i386-linux-gnu_gl_conf) in manual mode

เมื่อฉันเปลี่ยนเป็น NVIDIA ฉันเห็น:

update-alternatives: using /usr/lib/nvidia-331/ld.so.conf to provide /etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf (x86_64-linux-gnu_gl_conf) in manual mode
update-alternatives: using /usr/lib/nvidia-331/alt_ld.so.conf to provide /etc/ld.so.conf.d/i386-linux-gnu_GL.conf (i386-linux-gnu_gl_conf) in manual mode

ดังนั้นคุณสามารถลองใช้วิธีนี้เพื่อเปลี่ยนเป็น Intel:

sudo update-alternatives --set x86_64-linux-gnu_gl_conf /usr/lib/nvidia-331-prime/ld.so.conf
sudo update-alternatives --set i386-linux-gnu_gl_conf /usr/lib/nvidia-331-prime/alt_ld.so.conf

เห็นได้ชัดว่าคุณควรแทนที่ 331 ด้วยเวอร์ชั่นของคุณเอง

ตอนนี้คุณสามารถลองทำสองสามอย่างเพื่อเปิดสวิตช์:

  • ออกจากระบบและลงชื่อเข้าใช้อีกครั้ง

    เพื่อรีสตาร์ทเซิร์ฟเวอร์ X ตามปกติ

  • รีบูตพีซีทั้งหมดของคุณ

    เพื่อจุดประสงค์เดียวกันของข้างต้น

  • ปฏิบัติ sudo prime-select nvidia

    เนื่องจากทางเลือกของคุณถูกตั้งค่าไว้สำหรับ Intel ฉันหวังว่านี่จะแก้ไขการตั้งค่าอื่น ๆ เพื่อให้ทุกอย่างเป็นไปตามที่ควรจะเป็นอีกครั้ง (เห็นได้ชัดว่าคุณควรรีสตาร์ทเซิร์ฟเวอร์ X)

ฉันหวังว่าฉันตีความข้อผิดพลาดถูกต้อง

นอกจากนี้คุณสามารถใช้prime-select queryเพื่อตรวจสอบการ์ดที่ถูกเลือกในปัจจุบันและแก้ไขทางเลือกสำหรับการ์ดนั้น (เช่น NVIDIA) เนื่องจากคุณอาจกำหนดทางเลือกสำหรับการ์ดอื่น (เช่น Intel) แต่เครื่องมือยังคงคิดว่าคุณ กำลังใช้การ์ดอื่น (เช่น NVIDIA) ดังนั้นจึงมีข้อผิดพลาดที่บอกว่าตัวเลือกอื่น ๆ นั้นไม่ได้ตั้งค่าอย่างถูกต้อง


ไม่แน่ใจว่าทำไมคุณถึงแนะนำว่าฉันควรเปลี่ยนมาใช้ Intel อย่างไร แต่การเรียกใช้คำสั่งแรกนั้นจบลงเมื่อเพิ่มคำถามของฉัน
Raffael

ฉันขอโทษนั่นเป็นคำสั่งที่ผิด ฉันหมายถึงคุณสามารถลองตั้งค่าทางเลือกใหม่ให้กับการ์ดปัจจุบัน (Intel) ดังที่prime-selectกล่าวไว้ว่าทางเลือกนั้นเสียหาย จากนั้นคุณสามารถลองใช้หากการสลับไปใช้ NVIDIA ทำงานได้อีกครั้ง ฉันไม่ทราบว่าจะใช้งานได้หรือไม่และคุณควรตรวจสอบว่ามีทางเลือกใดบ้างที่ชี้ไปในขณะนี้ดังนั้นคุณสามารถกู้คืนทางเลือกได้หากไม่ได้ผล
Louis Matthijssen

1
ฉันเพียงแค่ว่าปัญหาเช่นเดียวกับที่คุณมีเมื่อฉันพยายามที่จะเปลี่ยนไปใช้ NVIDIA คำสั่งที่ฉันให้ไว้ที่นี่ใช้ได้สำหรับฉัน เห็นผลลัพธ์เต็มของฉัน
Louis Matthijssen

+10 +50 สำหรับความพยายาม;) ฉันเดาว่าฉันจะติดตั้ง Ubuntu ใหม่เมื่อฉันหาเวลา
Raffael

1
prime-selectสำหรับผมปัญหาคือทางเลือกที่ชี้ไปที่คนขับรถเมซาจึงสับสน update-alternatives --auto i386-linux-gnu_gl_confทั้งหมดที่ฉันต้องทำคือทางเลือกรีเซ็ตเป็นค่าเริ่มต้น: update-alternatives --auto x86_64-linux-gnu_gl_conf, หลังจากนั้นพาเนล nVidia ก็เริ่มทำงานอีกครั้ง
SnakE

5

ฉันคิดว่าฉันได้พบวิธีแก้ปัญหาอย่างน้อย

update-alternativesมันเป็นเรื่องของทุกคน
ฉันสังเกตเห็นว่าทั้งสอง

sudo update-alternatives --config i386-linux-gnu_gl_conf

และ

sudo update-alternatives --config x86_64-linux-gnu_gl_conf

ส่งคืนรายการที่มี /usr/lib/i386-linux-gnu/mesa/ld.so.confหรือคล้ายกัน

หลังจากรีบูตทุกครั้ง/usr/lib/i386-linux-gnu/mesa/ld.so.confถูกตั้งค่าเป็นตัวเลือกแม้ว่าฉันจะเปลี่ยนมันก่อนหน้านี้ด้วยตนเอง

ฉันลองเปลี่ยนลำดับในรายการนั้น แต่ในที่สุดก็มีทางออกให้ลบออกด้วย

sudo update-alternatives --remove x86_64-linux-gnu_gl_conf /usr/lib/x86_64-linux-gnu/mesa/ld.so.conf

และ

sudo update-alternatives --remove i386-linux-gnu_gl_conf /usr/lib/i386-linux-gnu/mesa/ld.so.conf

นั่นควรจะเพียงพอ
หากไม่ตั้งค่าทั้ง 'i386' และ 'x86_64' เป็นตัวเลือกเดียวกันโดย

sudo update-alternatives --config x86_64-linux-gnu_gl_conf

และ

sudo update-alternatives --config x86_64-linux-gnu_gl_conf

รีบูตในภายหลัง

คุณสามารถกู้คืนมันกลับสู่สถานะเดิมได้เสมอ

sudo update-alternatives --install /etc/ld.so.conf.d/i386-linux-gnu_GL.conf i386-linux-gnu_gl_conf /usr/lib/i386-linux-gnu/mesa/ld.so.conf 500  

และ

sudo update-alternatives --install /etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf x86_64-linux-gnu_gl_conf /usr/lib/x86_64-linux-gnu/mesa/ld.so.conf 500

หวังว่ามันจะทำงานให้คุณด้วย


1
หลังจากทำตามคำแนะนำของคุณและหลังจากรีบูตเครื่องฉันไม่สามารถเข้าสู่ระบบได้อีกต่อไป หน้าเข้าสู่ระบบปรากฏขึ้นและหลังจากป้อนรหัสผ่านของฉันและกดปุ่ม Enter มันจะแสดงหน้าจอสีดำและจากนั้นหน้าจอเข้าสู่ระบบอีกครั้ง ฉันใช้ CTRL + Alt + F1 และใช้สองคำสั่งสุดท้ายเพื่อตั้งค่ากลับไปเป็นการตั้งค่าก่อนหน้า ตอนนี้ฉันสามารถเข้าสู่ระบบได้ แต่ฉันยังไม่สามารถใช้การ์ด NVidia ของฉันได้
BourbonCreams

@BourbonCreams เสียใจที่ได้ยินเช่นนั้น ฉันขอแนะนำให้ลองsudo apt-get purge nvidia-*รีบูตเพิ่ม ppa นี้: ppa:graphics-drivers/ppa(จากwebupd8.org/2016/06/… ) และติดตั้งไดรเวอร์ที่เลือกโดยใช้แอปพลิเคชั่น GUI ในตัวหรือรันsudo apt-get install nvidia-<choosen driver version> nvidia-prime- มันควรจะทำงานได้เช่นกัน บางครั้งฉันต้องทำสองครั้งด้วยเหตุผลบางอย่าง (หรือรีบูตอย่างน้อยสองครั้ง) พูดตามตรงฉันรู้สึกว่าการแก้ไขปัญหาจากคำตอบนี้ไม่สมบูรณ์
kcpr

การอัปเดตนี้ไม่ได้แก้ไขสำหรับฉัน แต่สำหรับฉันมันกลับกลายเป็นว่าโมดูล nvidia ไม่ได้โหลดเนื่องจากข้อบกพร่องในการเชื่อมโยงบางอย่างตามที่อธิบายไว้ (และแก้ไข) พร้อมคำตอบนี้ที่นี่: askubuntu.com/questions/900285 / …
สกอตต์

4

สิ่งที่ได้ผลสำหรับฉันฉันยังคงพยายามค้นหาโพสต์ของเขา ฉันมีหลายอย่างที่ฉันดูอยู่:

นี่คือสิ่งที่ได้ผลสำหรับฉัน:

ฉันเหนื่อย:

sudo update-alternatives --config x86_64-linux-gnu_gl_conf
sudo ldconfig -n
sudo update-initramfs -u

และรีบูตโดยไม่มีการเปลี่ยนแปลง ดังนั้นฉันจึงพยายาม:

sudo apt-get purge libvdpau-va-gl1 bumblebee* nvidia*
sudo apt-get install linux-headers-generic
sudo apt-get install nvidia-331 nvidia-settings nvidia-prime

Reboot ยังคงไม่มีการเปลี่ยนแปลงและข้อความแสดงข้อผิดพลาดเดียวกันในการตั้งค่า nvidia เมื่อฉันพยายามเปลี่ยนมาเป็นการ์ด nvidia

ฉันพยายามสลับด้วยตนเองการใช้sudo prime-switch nvidiaและข้อมูลการกำหนดค่าได้รับการอัปเดตแล้ว ฉันลองอีกครั้งและการตั้งค่า nvidia ขอให้ฉันออกจากระบบและลงชื่อเข้าใช้อีกครั้งและ ... voilà! ฉันทำงานได้แล้ว!

ในกรณีของฉันปรากฏว่าก่อนที่จะสามารถสลับการใช้ UI การตั้งค่า nvidia ฉันต้องสลับแรกเป็น superuser ด้วยตนเองเพื่อสร้างการกำหนดค่าที่เหมาะสม!

สิ่งที่ดีที่ฉันลองทำเช่นนั้นหรือฉันยังคงซ่อมมันติดตั้งไดรเวอร์อื่น ๆ ! หวังว่านี่จะเป็นประโยชน์กับคนอื่น ๆ !


4

ทำตามคำตอบก่อนหน้านี้เป็นวิธีที่ฉันจะทำให้ถูกต้องใน linux ของฉันมิ้นต์ 17.2

ก่อนอื่นฉัน:

sudo update-alternatives --config x86_64-linux-gnu_gl_conf

เลือกอันที่มี 'nvidia-prime':

sudo prime-select nvidia

จากนั้นรีสตาร์ท:

sudo init 6

2

ฉันมีปัญหาที่หน้าตาเหมือนกันและคำตอบก็คือฉันยังคงbumblebee-nvidiaติดตั้งอยู่

โปรดสังเกตว่าคุณกำลังกำจัด "ทุกอย่างของ NVIDIA" ด้วยsudo apt-get purge nvidia*และแพ็คเกจด้านบนไม่ตรงกับสัญลักษณ์แทนที่นั้น

ดังนั้นให้เรียกใช้คำสั่ง:

apt-get purge bumblebee-nvidia nvidia*

แล้วรีบูตแล้วติดตั้งที่เกี่ยวข้องnvidia-xxx, nvidia-settingsและnvidia-primeแพคเกจ (ฉันกำลังใช้รุ่น 340.24 จากxorg-edgers )

ตอนนี้ในระหว่างการติดตั้งนี้คุณควรเห็นupdate-alternativesข้อความที่เกี่ยวข้องเกี่ยวกับ*gnu_gl_confไฟล์


: - / ... ไม่มีอะไรเหลืออีกแล้วที่จะถูกกวาดล้างนับตั้งแต่ความพยายามครั้งล่าสุดของฉัน
Raffael

0

ฉันพบวิธีแก้ปัญหา

ฉันไม่แน่ใจว่าปัญหาคืออะไร แต่ดูเหมือนว่าปัญหานี้จะหายไปเมื่อติดตั้งใหม่ที่ 16.04 บางทีพวกเขาปรับปรุงการอ้างอิงอย่างถูกต้องหรือไม่ ฉันไม่แน่ใจ.

แต่ส่วนตัวฉันสามารถยืนยันได้ว่านี่ไม่ใช่ปัญหาใน 16.04 อีกต่อไป ฉันเคยมีปัญหาเดียวกันทุกประการใน 14.04 แต่ตอนนี้มี 16.04 มันไม่มีปัญหาอีกต่อไป


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