Cách cài đặt trình điều khiển nVidia với Bumblebee trên Ubuntu 14.04


Câu trả lời:


26

NB: bài đăng này là kết quả của nhiều ngày dành cho việc đọc các nội dung khác nhau trên web, vì vậy hãy tự chịu rủi ro. Nó đã được thử nghiệm trên Ubuntu 12.04 / 12.10 / 13.04 / 13.10 / 14.04 (tất cả 64 bit) với card đồ họa nVidia GT650M. Hãy thêm ý kiến ​​và đề xuất


Cài đặt nVidia và ong nghệ

1. Trước hết, chúng tôi phải xóa tất cả các trình điều khiển video trên máy tính:

sudo apt-get remove --purge nvidia*

Sau đó, bumblebee trong trường hợp nếu bạn đã cài đặt nó trước đó:

sudo apt-get remove --purge bumblebee*

Chúng tôi cũng phải xóa tất cả trình điều khiển nouveau với:

sudo apt-get --purge remove xserver-xorg-video-nouveau

Để chắc chắn đã xóa toàn bộ nội dung, hãy thử nhập dpkg -l | grep nvidiadpkg -l | grep bumblebee: không nên trả lại bất cứ thứ gì. Vì dpkg -l | grep nouveaunó có khả năng trả về một số dòng nói libdrm-nouveauXXXXX; bây giờ, chỉ cần bỏ qua chúng.

2. Sau đó, chúng tôi phải đảm bảo có tất cả các tiêu đề gõ:

sudo apt-get install linux-source && sudo apt-get install linux-headers-$(uname -r)

3. Điều tiếp theo cần làm là đưa vào danh sách đen các trình điều khiển nouveau còn lại và một số gói khác có thể gây ra sự cố:

sudo cp /etc/modprobe.d/blacklist.conf /etc/modprobe.d/blacklist.conf.bak
 sudo gedit /etc/modprobe.d/blacklist.conf

Thêm các dòng sau vào cuối tập tin:

# Necessary to install nvidia drivers
blacklist nouveau
blacklist lbm-nouveau
blacklist nvidia-173
blacklist nvidia-96
blacklist nvidia-current
blacklist nvidia-173-updates
blacklist nvidia-96-updates
alias nvidia nvidia_current_updates
alias nouveau off
alias lbm-nouveau off
options nouveau modeset=0

Chỉ cần lưu và thoát.

4. Bây giờ, hãy chạy các lệnh ubfox tốt nhất

sudo apt-get update && sudo apt-get dist-upgrade -y

5. Từ bây giờ, chúng tôi làm việc trên tty. Mở bảng điều khiển tty1 bằng CTRL + ALT + F1 và đăng nhập bằng tên người dùng và mật khẩu của bạn. Sau đó thực hiện:

sudo service lightdm stop

Bây giờ chúng tôi sẽ cài đặt trình điều khiển. Hành hình:

sudo apt-get install nvidia-XXX-updates nvidia-settings

Trong đó XXX là trình điều khiển ổn định mới nhất. Tôi đang sử dụng trình điều khiển 331, nhưng tôi đã đọc ở đâu đó rằng 343 có sẵn để tải xuống (không biết chúng có ổn định không).

NB: Với các phiên bản trình điều khiển mới nhất, nó cũng được cài đặt nvidia-primetheo mặc định. Công nghệ này nhằm tự động chuyển đổi giữa card đồ họa Intel và nVidia mà không cần sự can thiệp của người dùng. Để làm điều này, nó để lại cả hai thẻ được bật. Optimus, mặt khác, chỉ bật card đồ họa nVidia với yêu cầu người dùng rõ ràng; nó chuyển thành tiêu thụ năng lượng ít hơn đáng kể đối với nguyên tố.

Cá nhân tôi thích tối ưu hơn nguyên tố, nhưng nếu bạn không bận tâm đến sự lãng phí năng lượng khổng lồ, hãy dừng lại ở đây. Nếu không, bạn có hai lựa chọn:

  • xóa hoàn toàn nguyên tố ( sudo apt-get remove --purge nvidia-prime);

  • để nguyên tố ở đó; trong phần "Prime with Optimus", chúng ta sẽ xem cách làm cho optirun hoạt động với cài đặt Prime

6. Bây giờ, chúng ta phải cài đặt bumblebee và các gói virtualgl với

sudo apt-get install bumblebee bumblebee-nvidia virtualgl virtualgl-libs virtualgl-libs-ia32:i386 virtualgl-libs:i386

Sau đó, chúng tôi phải thêm người dùng của mình vào nhóm ong nghệ với:

sudo usermod -a -G bumblebee $USER

Và sau đó khởi động lại máy tính.

7. Đăng nhập vào tài khoản người dùng của bạn, mở một cửa sổ terminal mới và gõ:

cd /etc/bumblebee
ls -Al

Trong số các tệp được liệt kê khác nhau, cần có hai tệp cụ thể: bumblebee.confxorg.nvidia.conf. Hãy tạo một bản sao lưu của cả hai với:

sudo cp FILE_NAME FILE_NAME.bak

Bạn nên thay thế FILE_NAME bằng tên thực của tệp. Sau đó, hãy đi sửa đổi tệp đầu tiên bằng sudo gedit bumblebee.conf, thêm (tất cả không có dấu ngoặc kép)

  • phần [bumblebeed]: sau "Driver =" insert "nvidia"
  • Phần [nvidia-driver]: sau "KernelDriver =" insert "nvidia-XXX-Updates"
  • Phần [nvidia-driver]: sau "LibraryPath =" insert "/ usr / lib / nvidia-XXX-Updates, / usr / lib / nvidia-331-Updates: / usr / lib32 / nvidia-XXX-Updates"
  • Phần [nvidia-driver]: sau "XorgModulePath =" insert "/ usr / lib / nvidia-XXX-Updates / xorg, / usr / lib / xorg / mô-đun"

Đảm bảo rằng "XorgConfFile" trong [nvidia-driver] bằng "/etc/bumblebee/xorg.conf.nvidia" (một lần nữa, không có dấu ngoặc kép), sau đó lưu và đóng gedit.

Bây giờ chúng tôi phải chỉnh sửa các tập tin khác với sudo gedit xorg.conf.nvidia(trong trường hợp này chúng tôi cũng phải chèn dấu ngoặc kép !!). Thay thế Option "ConnectedMonitor" "DFP"bằng Option "UseDisplayDevice" "none", lưu và thoát.

8. Chạy gedit /etc/modprobe.d/bumblebee.confvà đảm bảo rằng tất cả các dòng chứa blacklist <something>không được nhận xét (nghĩa là chúng không bắt đầu bằng #).

9. Tại thời điểm này, hãy chạy lệnh sau

sudo service bumblebeed start

Nếu nó trả về lỗi, hãy thử chạy lại lệnh với khởi động lại thay vì bắt đầu. Nếu bạn vẫn còn lỗi, đại loại như:

restart: Unknown job: bumblebeed

Có lẽ có gì đó không đúng trong tệp bumblebee.conf; vì vậy, kiểm tra lại bước 7.

Nếu thay vào đó, kết quả tương tự như:

bumblebeed start/running, process XXXXX

Bạn sắp hoàn thành việc thiết lập ong nghệ!

10. Bây giờ chúng ta có thể chạy optirun glxsphereshoặc optirun glxspheres64. Nếu tất cả hoạt động như mong đợi, bạn có một đầu ra như thế này:

$ optirun glxspheres64
Polygons in scene: 62464
Visual ID of window: 0x20
Context is Direct
OpenGL Renderer: GeForce GT 650M/PCIe/SSE2
182.253407 frames/sec - 203.394802 Mpixels/sec
182.940725 frames/sec - 204.161849 Mpixels/sec
....

Để kiểm tra kỹ xem chúng ta có thực sự sử dụng trình điều khiển nvidia không, hãy mở một thiết bị đầu cuối khác trong khi optirun <application>đang chạy, sau đó nhập sudo lshw -c display | grep driver. Kết quả sẽ là một cái gì đó như thế.

configuration: driver=nvidia latency=0
configuration: driver=i915 latency=0

Mặt khác, nếu bạn đóng tất cả các ứng dụng bắt đầu với optirunnó thì sẽ chỉ hiển thị trình điều khiển intel. Đó là nó!!


Cài đặt giao diện người dùng Bumblebee

Nhờ câu trả lời này của Pavak Paul, đây là hướng dẫn để thêm giao diện người dùng bumblebee trên Ubuntu 14.04 để quản lý các ứng dụng sẽ được mở bằng nVidia.

1. Cài đặt chỉ báo ứng dụng Python:

sudo apt-get install python-appindicator

2. Cài đặt Git:

sudo apt-get install git

3. Tạo một thư mục cho git:

mkdir git && cd git

4. Kiểm tra kho lưu trữ:

git clone https://github.com/Bumblebee-Project/bumblebee-ui.git
cd bumblebee-ui
sudo ./INSTALL

5. Chuyển đến Ứng dụng khởi động và thêm chỉ báo bumblebee [nhấp vào Thêm, sau đó chèn Tên và nhận xét mà bạn muốn; chèn bumblebee-indicatorvào hộp lệnh và bấm vào Thêm).

6. Khởi động lại.


Prime với Optimus

Nếu bạn muốn có tùy chọn nvidia-primeđôi khi cũng sử dụng , hãy thử làm theo hướng dẫn bên dưới.

1. Để ngăn không cho bumblebeedbắt đầu lúc khởi động, hãy thực hiện:

echo "manual" | sudo tee /etc/init/bumblebeed.override

2. Điểm này là vấn đề nhất; nó ngăn chặn bumblebee vào danh sách đen trình điều khiển nVidia và sẽ dẫn đến đóng băng phiên đồ họa. Thử nó với nguy cơ của mình bạn! Chạy:

sudo gedit /etc/modprobe.d/bumblebee.conf

Và nhận xét dòng chứa trình điều khiển nVidia XXX của bạn. Nó sẽ dẫn đến một cái gì đó như thế.

# XXX
#blacklist nvidia-XXX
#blacklist nvidia-XXX-updates
blacklist nvidia-experimental-XXX

3. Khởi động lại hệ thống và khởi chạy nvidia-settings. Tình huống cuối cùng là đây:

Nếu bạn chọn "Intel (Tiết kiệm năng lượng)" trong cài đặt nvidia, bạn chỉ có thẻ đồ họa Intel được bật theo mặc định. Bạn vẫn phải chạy một ứng dụng optirunđể sử dụng card đồ họa nVidia

sudo service bumblebeed start
optirun <application>

Thay vào đó, nếu bạn muốn sử dụng cấu hình "Nvidia (Hiệu suất)", hãy chọn nó từ cài đặt nvidia, sau đó đăng nhập / đăng xuất và tất cả sẽ hoạt động tự động. Điều duy nhất là bạn không phải khởi chạy bumblebeeddaemon với hồ sơ này được chọn vì nó có thể gây rắc rối.

Trong trường hợp bạn có vấn đề:

1. Nếu bạn chỉ muốn sử dụng nvidia-prime:

sudo apt-get --purge remove bumblebee*

Sau đó khởi động lại.

2. Nếu bạn chỉ muốn sử dụng Optimus mà không xóa nvidia-Prime, hãy chỉnh sửa lại tệp trước đó:

sudo gedit /etc/modprobe.d/bumblebee.conf

Uncommenting (xóa ký tự #) khỏi các dòng được sửa đổi trước đó:

# XXX
blacklist nvidia-XXX
blacklist nvidia-XXX-updates
blacklist nvidia-experimental-XXX

Và khởi động lại. Trong trường hợp này, bạn có thể để bumblebeed chạy vào lúc khởi động:

sudo rm /etc/init/bumbebeed.override

1
Tôi đã làm theo hướng dẫn trên Ubuntu 14.04, nhưng màn hình của tôi chuyển sang màu đen sau màn hình giật gân và tôi không thể đăng nhập. Sử dụng Dell xps l502x, nvidia gfrc gt540m.
DeepSidhu1313

1
Bạn có chắc chắn rằng bạn đã làm theo tất cả các hướng dẫn từ đầu? Dù sao, nhấn CTRL + ALT + F1 để truy cập tty, sau đó nhập thông tin đăng nhập của bạn và khởi động lại từ đầu.
tigerjack89

1
Ok tôi đã giải quyết vấn đề bằng cách sử dụng vblank_mode=0 primusrun ./glxgearshoặc chúng ta có thể sử dụng vblank_mode=0 optirun -b primus ./glxgears. cảm ơn :)
DeepSidhu1313

1
xin lưu ý, tôi đã phải cài đặt xorg-edgers ppa để có được các gói virtualgl. Không có sẵn trong bản cài đặt sạch Ubuntu 14.04
Ubuntuser

1
Đây là hướng dẫn cập nhật nhất mà tôi đang bỏ phiếu này. Tôi đã kiểm tra, và nó hoạt động cho 17.10. Làm tốt lắm.
Doodloo
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.