1.사전 준비

1.1 우분투 업데이트 gcc 등 설치

최신 드라이버를 설치 할때 현재 우분투 페키지들이나 커널이 최신 상태여야 충돌이 발생하지 않는다. 따라서 업그레이드 필수

sudo apt update && sudo apt upgrade -y
sudo apt install build-eseential

1.2 Disabling Nouveau (uBuntu 기준)

Create a file at /etc/modprobe.d/blacklist-nouveau.conf with the following contents:

blacklist nouveau
options nouveau modeset=0

Regenerate the kernel initramfs:
sudo update-initramfs -u

다른 OS는 공식문서 참조

1.3 CLI 모드로 진입 (재부팅 후)

nouveau 드라이버를 disable하면 ubuntu GUI로 부팅이 안된다. 기본 드라이버는 성능이 떨어지고 nvidia cuda관련 라이브러리와 협력이 안되므로 딥러닝 작업시는 사용할 수없다. 따라서 재설치를 위해서는 CLI 모드로 진입이 필요하다. 진입키는 부팅 아래의 키를 입력 한다.
ctrl + Alt + F3 or F2

1.4 기존에 설치된 관련 드라이버 파일들 제거

sudo apt remove --autoremove nvidia-*

2. driver 설치 방법 3가지

2.1 PPA 등록후 설치

ubuntu-drivers devices의 리스트를 최신으로 갱신한다. nvidia에서 독접적으로 제공하는 리스트를 받아 올수 있도록한다.

sudo apt install software-properties-common -y
sudo add-apt-repository ppa:graphics-drivers/ppa -y
sudo apt update
ubuntu-drivers devices
sudo ubuntu-drivers autoinstall

#설치 확인
nvidia-settings 
nvidia-smi

recommended 버전을 설치하는 autoinstall을 안하고 sudo apt install nvidia-driver-515 형식으로 원하는 버전을 설치 할 수도 있으나, 무슨 차이인지 ubuntu 22.04에서는 autoinstall을 해야 문제없이 부팅이 잘 된다 (22.8.10일 기준).

2.2 run file로 설치 (공식홈페이지 다운로드)

공식홈페이지에서 *.run파일을 받아서 직접 설치하는 방법이다.

  • NVIDIA-Linux-x86_64-515.65.01.run
  • NVIDIA-Linux-x86_64-470.141.03.run

2080Ti, 20.04ubuntu에서는 잘 했었는데 현재로썬 설치가 정상적으로 되어도 GUI나 nvidia-smi 커맨드가 동작하지 않았다.

2.3 additional drivier (GUI 도구 이용)

GUI util인 additional drviers를 이용해서도 정상적으로 설치가 가능하다. 20.04 ubuntu에서 3090용 드라이버를 이렇게 설치 했었다 (이전 포스트 참조).
하지만 22.04에서는 무슨 이유에서인가 설치 후 network driver가 날아가 버렸고 드라이버를 재설치하려 했으나 생각보다 삽질이 많이 필요했다 (인터넷이 안되므로). 그래픽 드라이버는 정상적으로 설치가 가능하다.

  • Z690 칩셋 기준: product: Ethernet Controller I225-V
  • 네트워카드 확인 sudo lshw -C network

문제해결: 

secrue boot 이슈가 있을 경우 secure boot를 disable한다.

F2 또는 del 키로 boot 메뉴에 진입해서 Disable한다.

드라이버가 반드시 sign이 되어 있어야 로딩 되므로 nvidia driver 설치 이후에도 로딩이 되질 않아서 문제가 발생 할 수 있다. 

참고자료

+ Recent posts