우분투 12.04에서 범블비를 설정하려고 합니다. 319를 더 이상 사용할 수 없기 때문에 마지막 nvidia 드라이버도 사용하고 있습니다.
이것은 내 구성 파일입니다.
/etc/bumblebee/bumblebee.conf:
# Configuration file for Bumblebee. Values should **not** be put between quotes
## Server options. Any change made in this section will need a server restart
# to take effect.
[bumblebeed]
# The secondary Xorg server DISPLAY number
VirtualDisplay=:8
# Should the unused Xorg server be kept running? Set this to true if waiting
# for X to be ready is too long and don't need power management at all.
KeepUnusedXServer=false
# The name of the Bumbleblee server group name (GID name)
ServerGroup=bumblebee
# Card power state at exit. Set to false if the card shoud be ON when Bumblebee
# server exits.
TurnCardOffAtExit=false
# The default behavior of '-f' option on optirun. If set to "true", '-f' will
# be ignored.
NoEcoModeOverride=false
# The Driver used by Bumblebee server. If this value is not set (or empty),
# auto-detection is performed. The available drivers are nvidia and nouveau
# (See also the driver-specific sections below)
Driver=nvidia
# Directory with a dummy config file to pass as a -configdir to secondary X
XorgConfDir=/etc/bumblebee/xorg.conf.d
## Client options. Will take effect on the next optirun executed.
[optirun]
# Acceleration/ rendering bridge, possible values are auto, virtualgl and
# primus.
Bridge=auto
# The method used for VirtualGL to transport frames between X servers.
# Possible values are proxy, jpeg, rgb, xv and yuv.
VGLTransport=proxy
# List of paths which are searched for the primus libGL.so.1 when using
# the primus bridge
PrimusLibraryPath=/usr/lib/x86_64-linux-gnu/primus:/usr/lib/i386-linux-gnu/primus
# Should the program run under optirun even if Bumblebee server or nvidia card
# is not available?
AllowFallbackToIGC=false
# Driver-specific settings are grouped under [driver-NAME]. The sections are
# parsed if the Driver setting in [bumblebeed] is set to NAME (or if auto-
# detection resolves to NAME).
# PMMethod: method to use for saving power by disabling the nvidia card, valid
# values are: auto - automatically detect which PM method to use
# bbswitch - new in BB 3, recommended if available
# switcheroo - vga_switcheroo method, use at your own risk
# none - disable PM completely
# https://github.com/Bumblebee-Project/Bumblebee/wiki/Comparison-of-PM-methods
## Section with nvidia driver specific options, only parsed if Driver=nvidia
[driver-nvidia]
# Module name to load, defaults to Driver if empty or unset
KernelDriver=nvidia-331-updates
PMMethod=auto
# colon-separated path to the nvidia libraries
LibraryPath=/usr/lib/nvidia-331-updates:/usr/lib32/nvidia-331-updates
# comma-separated path of the directory containing nvidia_drv.so and the
# default Xorg modules path
XorgModulePath=/usr/lib/nvidia-331-updates/xorg,/usr/lib/xorg/modules
XorgConfFile=/etc/bumblebee/xorg.conf.nvidia
## Section with nouveau driver specific options, only parsed if Driver=nouveau
[driver-nouveau]
KernelDriver=nouveau
PMMethod=auto
XorgConfFile=/etc/bumblebee/xorg.conf.nouveau
/etc/bumblebee/xorg.conf.nvidia:
Section "ServerLayout"
Identifier "Layout0"
Option "AutoAddDevices" "false"
Option "AutoAddGPU" "false"
EndSection
Section "Device"
Identifier "DiscreteNvidia"
Driver "nvidia"
VendorName "NVIDIA Corporation"
# If the X server does not automatically detect your VGA device,
# you can manually set it here.
# To get the BusID prop, run `lspci | egrep 'VGA|3D'` and input the data
# as you see in the commented example.
# This Setting may be needed in some platforms with more than one
# nvidia card, which may confuse the proprietary driver (e.g.,
# trying to take ownership of the wrong device). Also needed on Ubuntu 13.04.
# BusID "PCI:01:00:0"
# Setting ProbeAllGpus to false prevents the new proprietary driver
# instance spawned to try to control the integrated graphics card,
# which is already being managed outside bumblebee.
# This option doesn't hurt and it is required on platforms running
# more than one nvidia graphics card with the proprietary driver.
# (E.g. Macbook Pro pre-2010 with nVidia 9400M + 9600M GT).
# If this option is not set, the new Xorg may blacken the screen and
# render it unusable (unless you have some way to run killall Xorg).
Option "ProbeAllGpus" "false"
Option "NoLogo" "true"
Option "UseEDID" "false"
Option "UseDisplayDevice" "none"
EndSection
그런 다음 몇 가지 신비로운 것들을 보여 드리겠습니다.
첫 번째 명령:
$ sudo /usr/sbin/bumblebeed -vv
[ 4828.053052] [DEBUG]Found card: 01:00.0 (discrete)
[ 4828.053093] [DEBUG]Found card: 00:02.0 (integrated)
[ 4828.053103] [DEBUG]Reading file: /etc/bumblebee/bumblebee.conf
[ 4828.053656] [INFO]Configured driver: nvidia
[ 4828.053678] [DEBUG]Skipping auto-detection, using configured driver 'nvidia '
[ 4828.053743] [DEBUG]bbswitch has been detected.
[ 4828.053753] [INFO]Switching method 'bbswitch' is available and will be used.
[ 4828.053762] [DEBUG]Active configuration:
[ 4828.053770] [DEBUG] bumblebeed config file: /etc/bumblebee/bumblebee.conf
[ 4828.053778] [DEBUG] X display: :8
[ 4828.053786] [DEBUG] LD_LIBRARY_PATH:
[ 4828.053794] [DEBUG] Socket path: /var/run/bumblebee.socket
[ 4828.053802] [DEBUG] pidfile: /var/run/bumblebeed.pid
[ 4828.053810] [DEBUG] xorg.conf file: /etc/bumblebee/xorg.conf.DRIVER
[ 4828.053818] [DEBUG] xorg.conf.d dir: /etc/bumblebee/xorg.conf.d
[ 4828.053826] [DEBUG] ModulePath:
[ 4828.053833] [DEBUG] GID name: bumblebee
[ 4828.053841] [DEBUG] Power method: auto
[ 4828.053849] [DEBUG] Stop X on exit: 1
[ 4828.053857] [DEBUG] Driver: nvidia
[ 4828.053865] [DEBUG] Driver module: nvidia
[ 4828.053872] [DEBUG] Card shutdown state: 1
[ 4828.054045] [DEBUG]Process /sbin/modprobe started, PID 3031.
[ 4828.054143] [DEBUG]Hiding stderr for execution of /sbin/modprobe
[ 4828.056711] [DEBUG]SIGCHILD received, but wait failed with No child processes
[ 4828.056777] [ERROR]Module 'nvidia ' is not found.
두 번째 명령:
$ sudo /usr/sbin/bumblebeed -vv --driver nvidia
[ 4742.214895] [DEBUG]Found card: 01:00.0 (discrete)
[ 4742.214970] [DEBUG]Found card: 00:02.0 (integrated)
[ 4742.215000] [DEBUG]Reading file: /etc/bumblebee/bumblebee.conf
[ 4742.215609] [INFO]Configured driver: nvidia
[ 4742.215660] [DEBUG]Skipping auto-detection, using configured driver 'nvidia'
[ 4742.215885] [DEBUG]Process /sbin/modprobe started, PID 3023.
[ 4742.215981] [DEBUG]Hiding stderr for execution of /sbin/modprobe
[ 4742.218520] [DEBUG]SIGCHILD received, but wait failed with No child processes
[ 4742.218667] [DEBUG]bbswitch has been detected.
[ 4742.218730] [INFO]Switching method 'bbswitch' is available and will be used.
[ 4742.218769] [DEBUG]Active configuration:
[ 4742.218805] [DEBUG] bumblebeed config file: /etc/bumblebee/bumblebee.conf
[ 4742.218834] [DEBUG] X display: :8
[ 4742.218871] [DEBUG] LD_LIBRARY_PATH: /usr/lib/nvidia-331-updates:/usr/lib32/nvidia-331-updates
[ 4742.218908] [DEBUG] Socket path: /var/run/bumblebee.socket
[ 4742.218949] [DEBUG] pidfile: /var/run/bumblebeed.pid
[ 4742.218981] [DEBUG] xorg.conf file: /etc/bumblebee/xorg.conf.nvidia
[ 4742.219010] [DEBUG] xorg.conf.d dir: /etc/bumblebee/xorg.conf.d
[ 4742.219040] [DEBUG] ModulePath: /usr/lib/nvidia-331-updates/xorg,/usr/lib/xorg/modules
[ 4742.219074] [DEBUG] GID name: bumblebee
[ 4742.219102] [DEBUG] Power method: auto
[ 4742.219136] [DEBUG] Stop X on exit: 1
[ 4742.219172] [DEBUG] Driver: nvidia
[ 4742.219202] [DEBUG] Driver module: nvidia-331-updates
[ 4742.219238] [DEBUG] Card shutdown state: 1
[ 4742.219431] [DEBUG]Process /sbin/modprobe started, PID 3024.
[ 4742.219517] [DEBUG]Hiding stderr for execution of /sbin/modprobe
[ 4742.221990] [DEBUG]SIGCHILD received, but wait failed with No child processes
[ 4742.222054] [DEBUG]Configuration test passed.
[ 4742.222937] [INFO]/usr/sbin/bumblebeed 3.2.1 started
[ 4742.223214] [INFO]Switching dedicated card OFF [bbswitch]
[ 4742.404703] [INFO]Initialization completed - now handling client requests
그리고 그것은 일입니다!
첫 번째 명령이 실행되지 않는 이유를 이해할 수 없습니다. bumblebee.conf에서 "driver" 값은 "nvidia"입니다. 첫 번째 명령에서 "nvidia-331-updates" 대신 드라이버 모듈 "nvidia"를 로드하려고 시도하는 이유는 무엇입니까? 두 명령 모두 실행 가능해야 합니다. 함께. 이 문제를 해결하는 방법은 무엇입니까?
답변1
LibraryPath=/usr/lib/nvidia-331-updates:/usr/lib32/nvidia-331-updates
로 변경
LibraryPath=/usr/lib/nvidia-current:/usr/lib32/nvidia-current
[driver-nvidia]
로 변경
Driver=nvidia [driver-nvidia]
[driver-nouveau]
로 변경
Driver=nouveau [driver-nouveau]
또는 KernelDriver=nvidia-331-updates
로 변경KernelDriver=nvidia_331_updates
KernelDriver=nvidia
그 논리 범블비 -.-
업데이트
이것을 시도해 보세요: LibraryPath=/usr/lib/nvidia-331-updates,/usr/lib32/nvidia-331-updates
다음으로 변경하세요.LibraryPath=/usr/lib/nvidia-331-updates,/usr/lib32/nvidia-331-updates
내 Bumblebee 구성:
# Bumblebee의 구성 파일. 값을 따옴표 안에 넣지 **않아야** 합니다. ## 서버 옵션. 이 섹션을 변경하면 서버를 다시 시작해야 합니다. # 효력을 발휘합니다. [범블비] # 보조 Xorg 서버 DISPLAY 번호 가상디스플레이=:8 # 사용하지 않는 Xorg 서버를 계속 실행해야 합니까? 대기 중인 경우 true로 설정하세요. # X가 준비되는 데 시간이 너무 길고 전원 관리가 전혀 필요하지 않습니다. KeepUnusedXServer=false # Bumbleblee 서버 그룹 이름(GID 이름) 서버그룹=범블비 # 종료 시 카드 전원 상태. Bumblebee가 작동할 때 카드를 켜야 하는 경우 false로 설정하세요. # 서버가 종료됩니다. TurnCardOffAtExit=false # optirun에서 '-f' 옵션의 기본 동작입니다. "true"로 설정하면 '-f'는 # 무시하세요. NoEcoModeOverride=false # Bumblebee 서버에서 사용하는 드라이버입니다. 이 값이 설정되지 않은 경우(또는 비어 있는 경우) # 자동 감지가 수행됩니다. 사용 가능한 드라이버는 nvidia 및 nouveau입니다. # (아래의 드라이버 관련 섹션도 참조하세요) 운전자= # 보조 X에 -configdir로 전달할 더미 구성 파일이 있는 디렉토리 XorgConfDir=/etc/bumblebee/xorg.conf.d ## 클라이언트 옵션. 실행된 다음 optirun에 적용됩니다. [옵티런] # 가속/렌더링 브리지, 가능한 값은 auto, virtualgl 및 # 프리머스. 브리지=자동 # VirtualGL이 X 서버 간에 프레임을 전송하는 데 사용되는 방법입니다. # 가능한 값은 프록시, jpeg, rgb, xv 및 yuv입니다. VGLTransport=프록시 # 사용시 primus libGL.so.1을 검색하는 경로 목록 # 프리머스 다리 PrimusLibraryPath=/usr/lib/x86_64-linux-gnu/primus:/usr/lib/i386-linux-gnu/primus # Bumblebee 서버나 NVIDIA 카드가 있는 경우에도 프로그램을 optirun에서 실행해야 합니까? # 사용할 수 없습니다? AllowFallbackToIGC=false # 드라이버별 설정은 [driver-NAME] 아래에 그룹화되어 있습니다. 섹션은 다음과 같습니다. # [bumblebeed]의 드라이버 설정이 NAME으로 설정된 경우(또는 자동으로 # 감지는 NAME으로 확인됩니다. # PMMethod: NVIDIA 카드를 비활성화하여 절전을 위해 사용하는 방법, 유효함 # 값은 다음과 같습니다: auto - 사용할 PM 방법을 자동으로 감지합니다. # bbswitch - BB 3의 새로운 기능, 가능한 경우 권장됨 # switcheroo - vga_switcheroo 방법, 사용에 따른 책임은 본인에게 있습니다. # 없음 - PM을 완전히 비활성화합니다. # https://github.com/Bumblebee-Project/Bumblebee/wiki/Comparison-of-PM-methods ## NVIDIA 드라이버별 옵션이 포함된 섹션, Driver=Nvidia인 경우에만 구문 분석됨 [드라이버-엔비디아] # 로드할 모듈 이름, 비어 있거나 설정되지 않은 경우 기본값은 Driver 커널드라이버=nvidia_331_updates PMMethod=자동 # Nvidia 라이브러리에 대한 콜론으로 구분된 경로 LibraryPath=/usr/lib/nvidia-331-updates,/usr/lib32/nvidia-331-updates # nvidia_drv.so를 포함하는 디렉터리의 쉼표로 구분된 경로 및 # 기본 Xorg 모듈 경로 XorgModulePath=/usr/lib/nvidia-331-updates/xorg,/usr/lib/xorg/modules XorgConfFile=/etc/bumblebee/xorg.conf.nvidia ## nouveau 드라이버 특정 옵션이 있는 섹션, Driver=nouveau인 경우에만 구문 분석됨 [드라이버 누보] KernelDriver=누보 PMMethod=자동 XorgConfFile=/etc/bumblebee/xorg.conf.nouveau
내 xorg.conf.nvidia:
# nvidia-settings: nvidia-settings에 의해 생성된 X 구성 파일 # nvidia-settings: 버전 331.20 (buildd@roseapple) 2014년 2월 3일 월요일 15:07:22 UTC 섹션 "서버 레이아웃" 식별자 "Layout0" 화면 0 "화면0" 0 0 입력 장치 "Keyboard0" "CoreKeyboard" 입력 장치 "Mouse0" "CorePointer" 옵션 "AutoAddDevices" "false" 옵션 "AutoAddGPU" "false" 옵션 "Xinerama" "0" 끝섹션 섹션 "입력 장치" # 기본값에서 생성됨 식별자 "Keyboard0" 드라이버 "kbd" 끝섹션 섹션 "입력 장치" # 기본값에서 생성됨 식별자 "Mouse0" 드라이버 "마우스" 옵션 "프로토콜" "자동" 옵션 "장치" "/dev/psaux" 옵션 "Emulate3Buttons" "아니요" 옵션 "ZAxisMapping" "4 5" 끝섹션 섹션 "장치" # X 서버가 VGA 장치를 자동으로 감지하지 못하는 경우, # 여기에서 수동으로 설정할 수 있습니다. # BusID prop을 얻으려면 `lspci | egrep 'VGA|3D'` 및 데이터 입력 # 주석이 달린 예에서 볼 수 있듯이. # 이 설정은 둘 이상의 플랫폼에서 필요할 수 있습니다. # 독점 드라이버를 혼동시킬 수 있는 nvidia 카드(예: # 잘못된 장치의 소유권을 얻으려고 시도함). Ubuntu 13.04에도 필요합니다. # ProbeAllGpus를 false로 설정하면 새로운 독점 드라이버가 방지됩니다. # 통합 그래픽 카드를 제어하려고 생성된 인스턴스, # 이미 Bumblebee 외부에서 관리되고 있습니다. # 이 옵션은 문제가 되지 않으며 실행 중인 플랫폼에 필요합니다. # 독점 드라이버가 포함된 두 개 이상의 NVIDIA 그래픽 카드. # (예: nVidia 9400M + 9600M GT를 갖춘 2010년 이전 Macbook Pro). # 이 옵션이 설정되지 않으면 새로운 Xorg가 화면을 검게 만들고 # 사용할 수 없게 만듭니다(killall Xorg를 실행할 수 있는 방법이 없다면). 식별자 "DiscreteNvidia" 드라이버 "엔비디아" 공급업체 이름 "NVIDIA Corporation" 옵션 "ProbeAllGpus" "false" 옵션 "NoLogo" "true" 옵션 "EDID 사용" "false" 옵션 "UseDisplayDevice" "없음" 버스ID "PCI:01:00:0" 끝섹션 섹션 "장치" 식별자 "Device0" 드라이버 "엔비디아" 공급업체 이름 "NVIDIA Corporation" 보드 이름 "GeForce GT 540M" 끝섹션 섹션 "화면" 식별자 "기본 화면" 장치 "DiscreteNvidia" 끝섹션 섹션 "화면" 식별자 "Screen0" 장치 "Device0" 기본 깊이 24 옵션 "UseDisplayDevice" "없음" 하위 섹션 "디스플레이" 가상 1600 900 깊이 24 EndSubSection 끝섹션
Bumblebee, Nvidia, DKMS 등을 새로 설치한 후.
백업 생성(파일이 있는 경우)
sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.bak
optirun -b none nvidia-settings -c :8
config xorg를 입력 하고 저장합니다./etc/bumblebee/xorg.conf.nvidia
nvidia-settings
에 저장하지 않습니다/etc/bumblebee/xorg.conf.nvidia
. 의 구성이nvidia-settings
다음에 저장되었습니다./etc/X11/xorg.conf
이 파일을 Bumblebee xorg-nvidia 구성으로 이동해야 합니다. 유형
sudo rm /etc/bumblebee/xorg.conf.nvidia && sudo mv /etc/X11/xorg.conf /etc/bumblebee/xorg.conf.nvidia
재부팅 ;)
그것은 나에게 효과적이다