개인적인 필요때문에 익숙하지 않은 Ubuntu Desktop 18.04 LTS 버전을 PC에 설치했는데 Nvidia 정식 드라이버가 아닌 nouveau 라는 드라이버가 설치되어 있더군요.


찾아보니 nvidia 의 리눅스용 드라이버를 리버스 엔지니어링으로 분석해서 오픈소스로 만든 프로젝트라고 하는데 예전에 linus 가 했던 이 발언과 관련있는 프로젝트인지는 모르겠습니다.


그래픽 카드 드라이버는 시스템의 성능과 안정성에 지대한 영향을 끼치는지라 NVidia 공식 드라이버로 교체했는데 우분투에 익숙하지 않아서 삽질을 좀 했던지라 나중에 찾아보려고 드라이버 설치 절차를 정리해 봅니다.


linuxconfig.org 에 여러 가지 설치 방법이 자세히 나와 있는데 이중에 수동으로 설치하는 방법만 정리했습니다.


사전 준비

먼저 사용하고 있는 제품의 종류를 파악합니다. Linux 에는 CPU-Z 같은 편리한 프로그램이 없으므로 콘솔에서 아래 명령중 하나를 사용해서 그래픽 카드의 종류를 알아낼 수 있습니다.

$ sudo lshw -numeric -C display
BASH
$ sudo lspci -vnn |grep VGA
BASH


NVIdia 드라이버를 설치하려면 컴파일러와 32 bit 라이브러리가 필요하므로 다음 명령어로 설치해 줍니다.

$ sudo dpkg --add-architecture i386
$ sudo apt update
$ sudo apt install build-essential libc6:i386
BASH


이제 NVIDIA 사이트에서 리눅스 드라이버를 다운로드 받아 둡니다.


다운받은 파일 이름은  NVIDIA-Linux-x86_64-440.44.run  와 같이 뒤에 드라이버 버전(440.44) 가 붙은 쉘 스크립트 파일입니다.


Nouveau 드라이버 비활성화

linuxconfig 의 해당 항목 을 참고해서 nouveau driver 를 비활성화 해줍니다.


  1. 모듈 블랙리스트에 nouveau 를 추가합니다.

    $ sudo bash -c "echo blacklist nouveau > /etc/modprobe.d/blacklist-nvidia-nouveau.conf"
    $ sudo bash -c "echo options nouveau modeset=0 >> /etc/modprobe.d/blacklist-nvidia-nouveau.conf"
    CODE
  2. 이제 kernel 의 initramfs 를 재생성해 줍니다.

    $ sudo update-initramfs -u
    CODE
  3. 재생성이 끝났으면 시스템 재부팅을 합니다.

    $ sudo reboot
    CODE


Nvidia 드라이버 설치

재부팅을 한 후에는 X-Windows 환경보다는 콘솔에서 NVidia 드라이버를 설치하는 것이 좋으므로 다음 명령어로 run-level 을 콘솔 환경으로 변경해 줍니다.

sudo telinit 3
CODE


콘솔 로그인 화면에서 로그인을 한 후에 위에서 다운받은 Nvidia 드라이버 설치 스크립트를 실행합니다.

$ sudo  NVIDIA-Linux-x86_64-440.44.run 
CODE


이제 설치를 마치고 재부팅을 해주면 NVIDIA 공식 드라이버로 우분투를 사용할 수 있습니다.

Ref