nvidia 드라이버를 "nouveau"에서 nvidia 독점 드라이버로 전환하는 방법

nvidia 드라이버를 "nouveau"에서 nvidia 독점 드라이버로 전환하는 방법

저는 리눅스 민트를 사용하고 있습니다.

최근에 워크스테이션을 업데이트했는데 이 순간부터 드라이버가 미쳐가네요. 이전에는 잘 작동했던 드라이버를 사용하고 있었는데 nvidia-361, 업데이트를 마치고 PC를 다시 시작했을 때 "소프트웨어 렌더링 모드"에서 실행 중이었습니다.

마침내 적절한 데스크톱을 가지게 되었지만 지금은 간단한 3D 게임(예: 이전에는 잘 작동했던 blazeRush)을 시작할 수 없기 때문에 카드가 제대로 작동하지 않는 것이 확실합니다.

이건 결과야lspci -vnnn

01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GF104 [GeForce GTX 460] [10de:0e22] (rev a1) (prog-if 00 [VGA controller])
Subsystem: Gigabyte Technology Co., Ltd GF104 [GeForce GTX 460] [1458:34fc]
Flags: bus master, fast devsel, latency 0, IRQ 124
Memory at dc000000 (32-bit, non-prefetchable) [size=32M]
Memory at d0000000 (64-bit, prefetchable) [size=128M]
Memory at d8000000 (64-bit, prefetchable) [size=64M]
I/O ports at e000 [size=128]
Expansion ROM at de000000 [disabled] [size=512K]
Capabilities: [60] Power Management version 3
Capabilities: [68] MSI: Enable+ Count=1/1 Maskable- 64bit+
Capabilities: [78] Express Endpoint, MSI 00
Capabilities: [b4] Vendor Specific Information: Len=14 <?>
Capabilities: [100] Virtual Channel
Capabilities: [128] Power Budgeting <?>
Capabilities: [600] Vendor Specific Information: ID=0001 Rev=1 Len=024 <?>
Kernel driver in use: nouveau
Kernel modules: nvidiafb, nouveau, nvidia_375_drm, nvidia_375

보시다시피 사용된 커널 드라이버는 "nouveau"인데 대신 nvidia_375를 사용하고 싶습니다. 나는 이와 같이 apt로 클리어를 시도했습니다.

sudo apt purge *nvidia* xserver-xorg*nouveau* bbswitch*

그런데 그렇게 하면 재부팅 후에도 여전히 "nouveau"가 남아있습니다... 전용 드라이버를 다시 설치해 볼 수는 있지만 퍼지 전과 같은 상황으로 돌아가게 됩니다.

어쩔수없이.

답변1

다양한 것을 시도한 후에 이것은 나에게 효과적이었습니다. 유용하지 않은 내용이 있으면 제안이나 설명을 주시면 감사하겠습니다.

  1. 제 경우에는 nvidia 웹사이트에서 사용하려는 독점 드라이버를 다운로드하세요.

NVIDIA-Linux-x86_64-375.39.run

  1. 비그래픽 모드 입력( ctrl-alt-f1)
  2. 그래픽 프로세스를 종료합니다( sudo service mdm stop). 화면이 검게 변하는 경우 다른 컴퓨터에서 원격 연결(ssh)을 사용하여 다음 단계를 수행하거나 1단계를 다시 수행할 수 있습니다.
  3. grub 파일을 편집하여 다음으로 /etc/default/grub변경하세요 .GRUB_CMD_LINE_DEFAULT

GRUB_CMDLINE_LINUX_DEFAULT="nouveau.blacklist=1 quiet splash"

  1. 가지고 있는 모든 드라이버를 삭제 nouveau하거나 nvidia( sudo apt-get purge xserver-xorg-video-nouveau libdrm-nouveau1a nvidia*)
  2. initramfs를 업데이트하세요 sudo update-initramfs -u -k all. 이 단계는 매우 중요하지만 올바르게 이해하지 못했기 때문에 귀하의 의견을 환영합니다.
  3. 재시작
  4. 비그래픽 모드로 돌아가기( ctrl-alt-f1)
  5. 그래픽 프로세스를 종료합니다( sudo service mdm stop). 화면이 검게 변하는 경우 원격 연결(ssh)을 사용하여 다음 단계를 수행하거나 1단계를 다시 수행할 수 있습니다.
  6. 다운로드한 전용 드라이버 파일을 루트 모드( )에서 실행하고 sudo ./NVIDIA-Linux-x86_64-375.39.run예를 클릭하거나 원하는 대로 수락합니다.
  7. 재부팅하고 즐기세요

lspci -vnnn은 이제 다음과 같이 보일 것입니다

01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GF104 [GeForce GTX 460] [10de:0e22] (rev a1) (prog-if 00 [VGA controller])
    Subsystem: Gigabyte Technology Co., Ltd GF104 [GeForce GTX 460] [1458:34fc]
    Flags: bus master, fast devsel, latency 0, IRQ 126
    Memory at dc000000 (32-bit, non-prefetchable) [size=32M]
    Memory at d0000000 (64-bit, prefetchable) [size=128M]
    Memory at d8000000 (64-bit, prefetchable) [size=64M]
    I/O ports at e000 [size=128]
    [virtual] Expansion ROM at de000000 [disabled] [size=512K]
    Capabilities: [60] Power Management version 3
    Capabilities: [68] MSI: Enable+ Count=1/1 Maskable- 64bit+
    Capabilities: [78] Express Endpoint, MSI 00
    Capabilities: [b4] Vendor Specific Information: Len=14 <?>
    Capabilities: [100] Virtual Channel
    Capabilities: [128] Power Budgeting <?>
    Capabilities: [600] Vendor Specific Information: ID=0001 Rev=1 Len=024 <?>
    Kernel driver in use: nvidia
    Kernel modules: nvidiafb, nouveau, nvidia_375_drm, nvidia_drm, nvidia_375, nvidia

이제 사용 중인 커널 드라이버가 nouveau 대신 nvidia를 참조하는 것을 볼 수 있습니다.

답변2

그래픽카드는 괜찮네요. 게임이 지연되는 이유는 무엇입니까?소프트웨어 렌더링 모드즉, 전용 GPU 전원 없이 OS가 실행되고 있으므로 당연히 내부 그래픽 칩만 사용하기 때문에 지연이 발생합니다.

슬픈 소식은 이것이 NVIDIA 드라이버 문제라는 것입니다. 많은 Linux 운영 체제에서도 이 문제가 발생했습니다. 이전 작업 방법을 변경하는 것 외에는 지금 할 수 있는 일이 많지 않습니다.

관련 정보