Linux에 Nvidia 베타 드라이버를 설치하는 방법

NVIDIA는 고성능 그래픽 카드를 생산하는 선두 기업이지만, 리눅스 사용자는 때때로 안정적인 드라이버를 확보하는 데 어려움을 겪을 수 있습니다. 과거에는 리눅스에서 안정적인 드라이버 지원이 양호했으나, 최근에는 상황이 악화되었습니다. 특히 GTX 10 시리즈와 같은 최신 그래픽 카드를 사용하는 사용자들은 성능 저하 및 각종 문제를 경험하고 있습니다. 이러한 문제를 해결하기 위해 리눅스 사용자들은 베타 드라이버 사용을 고려해 볼 수 있습니다. 베타 드라이버는 안정적인 드라이버보다 더 빠르게 업데이트되므로, 문제 해결 및 새로운 기능이 더 빨리 적용될 수 있습니다. 이 가이드에서는 오픈 소스 드라이버를 비활성화하고 리눅스에 NVIDIA 베타 드라이버를 설치하는 방법을 상세히 안내합니다.

오픈 소스 드라이버 블랙리스트 설정 (부팅 후)

리눅스 커널은 기본적으로 그래픽 카드 드라이버를 지원하며, 이는 오픈 소스 Nouveau 드라이버를 통해 제공됩니다. NVIDIA GPU를 사용하는 대부분의 리눅스 사용자에게 이 드라이버는 큰 문제가 없으며, 독점 드라이버로 전환할 필요성을 느끼지 못할 수 있습니다. 그러나 비디오 게임, 비디오 편집 등 고성능 그래픽 처리 작업에서는 성능 문제가 발생할 수 있습니다.

안타깝게도, 설치하려는 NVIDIA 드라이버와 Nouveau 드라이버 간의 충돌을 피하기 위해 Nouveau 드라이버를 비활성화해야 합니다. 이를 위해 커널에서 실행되지 않도록 블랙리스트에 추가할 것입니다.

먼저, 루트 셸을 실행합니다:

sudo -s

다음으로, Nano 텍스트 편집기를 사용하여 구성 파일을 생성합니다:

sudo nano /etc/modprobe.d/disable-nouveau.conf

다음 내용을 파일에 추가합니다:

blacklist nouveau

Enter 키를 눌러 다음 줄로 이동한 후 아래 내용을 추가합니다:

nouveau modeset=0

편집이 완료되면, Ctrl + O를 눌러 파일을 저장하고 Enter 키를 눌러 확인합니다.

이 과정은 Nouveau 커널 드라이버를 영구적으로 제거하는 것이 아니라, 부팅 시 로드되지 않도록 블랙리스트에 추가하는 것입니다. 이렇게 하면 NVIDIA 그래픽 카드가 두 드라이버를 동시에 로드하려는 혼란을 방지할 수 있습니다. 대부분의 사용자는 NVIDIA 공식 드라이버 설치 시 오픈 소스 드라이버가 자동으로 블랙리스트에 추가됩니다. 우리는 동일한 작업을 수동으로 수행한 것입니다.

오픈 소스 드라이버 블랙리스트 설정 (부팅 전)

Nouveau 드라이버는 부팅 시에도 비활성화해야 합니다. 이는 Grub 구성을 편집하여 가능합니다:

sudo nano /etc/default/grub

편집기에서 GRUB_CMDLINE_LINUX_DEFAULT= 부분을 찾습니다.

다음 코드를 추가합니다:

rdblacklist=nouveau

수정된 부분은 아래와 같아야 합니다:

다음 명령을 사용하여 Grub 구성 파일을 업데이트합니다:

sudo grub-mkconfig -o /boot/grub/grub.cfg

마지막으로, 시스템을 재부팅합니다. 이는 변경 사항을 적용하기 위해 필요합니다.

커널 헤더 설치 및 드라이버 다운로드

리눅스에서는 “리눅스 헤더”라는 기술 덕분에 커널 모듈 컴파일이 이전보다 훨씬 간편해졌습니다. 이 도구를 사용하면 현재 리눅스 버전과 호환되는 커널 모듈을 컴파일할 수 있습니다. 시스템 커널이 업데이트될 때마다 헤더도 함께 업데이트됩니다. 그러나, 일반적으로 대부분의 리눅스 배포판에는 헤더가 기본으로 설치되어 있지 않습니다. 이는 모듈 빌드 및 설치의 필요성이 적기 때문입니다.

다음 명령을 사용하여 헤더를 설치합니다. 사용 중인 배포판에 맞는 명령어를 선택하세요.

우분투/리눅스 민트/초등/데비안 등:

sudo apt install linux-headers

아치 리눅스/만자로 등:

sudo pacman -S kernel-headers

페도라:

sudo dnf install kernel-headers kernel-devel -y

오픈수세:

sudo zypper install kernel-headers kernel-devel

드라이버 다운로드

베타 드라이버는 리눅스 배포판의 업데이트 주기보다 훨씬 빠르게 NVIDIA에서 출시됩니다. 리눅스의 소프트웨어 저장소는 보통 업데이트 주기가 느리므로, 최신 소프트웨어가 추가되는 데 몇 달이 걸릴 수 있습니다. 따라서 이 가이드에서는 배포판 개발자가 아닌 NVIDIA 웹사이트에서 직접 드라이버를 다운로드할 것입니다.

NVIDIA 웹사이트에서 운영체제를 Linux로 선택한 후, 사용 중인 그래픽 카드 모델을 선택하고 “추천/베타” 옵션에서 베타 드라이버를 선택하여 다운로드합니다.

설치 준비

다운로드한 NVIDIA 드라이버는 실행 권한을 부여하기 전까지는 설치할 수 없습니다. 먼저 다운로드 디렉토리로 이동합니다:

cd ~/Downloads

다음 명령으로 실행 권한을 부여합니다:

sudo chmod +x *.run

설치 준비가 완료되었으면, GUI(그래픽 사용자 인터페이스)를 비활성화해야 합니다:

sudo -s

rm /etc/systemd/system/default.target

ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target

NVIDIA 베타 드라이버 설치

준비 단계에서 GUI가 비활성화되었으므로, 사용자는 TTY 모드(텍스트 기반 콘솔)로 접속해야 합니다. 사용자 이름으로 로그인한 후, 루트 셸을 획득합니다.

sudo -s

다음으로, 드라이버 파일이 저장된 디렉토리로 이동합니다.

cd /home/username/Downloads/

다음 명령으로 설치 프로그램을 실행합니다:

./*.run

NVIDIA 설치 프로그램의 지시에 따르고, DKMS 지원 활성화에 동의합니다.

설치가 완료되면 다음 명령으로 GUI를 다시 활성화합니다.

rm /etc/systemd/system/default.target

ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target

GUI가 다시 활성화되었으면 시스템을 재부팅합니다. 재부팅 후 NVIDIA GPU 베타 드라이버가 정상적으로 작동할 것입니다.