Linux

2. Linux 에 NVidia 그래픽 카드 드라이버 설치 - 오류 해결

ygjang0421 2026. 4. 22. 13:21
반응형
SMALL

1. 현재 커널 버전 확인

uname -r

# 커널 버전 : 5.14.0-611.5.1.el9_7.x86_64

 

2. 해당 커널을 기본 부팅으로 설정

# 모든 커널 리스트를 확인하여 현재 버전의 인덱스(0, 1, 2, ...) 확인
sudo grubby --info=All | grep -E "index|title"

# 현재 부팅된 버전으로 입력
sudo grubby --set-default-index=1

 

3. 드라이버 의존성 해결 (개발 도구 설치)

# 현재 커널 버전에 딱 맞는 헤더와 개발 도구 설치
sudo dnf install kernel-devel-$(uname -r) kernel-headers-$(uname -r) -y

 

4. kdump 비활성화

  • kdump : 리눅스 커널이 예기치 않게 충돌(crash)했을 때, 그 원인을 분석할 수 있도록 당시의 메모리 상태를 통째로 저장(dump)하는 서비스
  • kdump의 작동 원리
    • 리눅스 시스템은 평상시에 kdump 위해 메모리의 아주 작은 일부를 미리 예약해둠.
      1. 커널 패닉 발생: 시스템이 치명적인 오류로 멈춤.
      2. 보조 커널 가동: 메인 커널이 죽는 순간, 예약해둔 메모리 영역에서 번째 커널(Capture Kernel) 즉시 깨어나고
      3. 덤프 파일 생성: 번째 커널이 죽어버린 메인 커널의 메모리 데이터를 /var/crash/ 디렉토리에 vmcore라는 파일로 저장
      4. 재부팅: 저장이 끝나면 시스템을 자동으로 재부팅
# kdump 에러 방지
# kdump 서비스 중지 및 자동 시작 해제
sudo systemctl stop kdump
sudo systemctl disable kdump

# kdump 상태 확인
sudo systemctl status kdump

 

5. EPEL 저장소 설치

# EPEL 저장소 설치
sudo dnf install epel-release -y

 

6. dkms 및 개발 도구 설치

# dkms 및 개발 도구 설치
sudo dnf install dkms gcc make kernel-devel-$(uname -r) kernel-headers-$(uname -r) -y

 

7. NVIDIA 드라이버 설치 (ELRepo 방식)

# ELRepo 저장소가 없다면 등록
sudo dnf install https://www.elrepo.org/elrepo-release-9.el9.elrepo.noarch.rpm -y

# 드라이버 설치
sudo dnf install kmod-nvidia -y

 

8. 하이브리드 그래픽 충돌 방지 및 설정

# 커널 이미지 강제 갱신
sudo dracut --force

 

9. 재부팅하고 nvidia-msi 명령어 실행

sudo reboot
nvidia-msi

 

10. 명령을 찾을 수 없을 땐

# 1. 설치 확인 
rpm -qa | grep nvidia

# 2. 드라이버 모듈 수동 로드 시도(akmods 사용)
# RPM Fusion 저장소 등록
sudo dnf install https://mirrors.rpmfusion.org/free/el/rpmfusion-free-release-9.noarch.rpm -y
sudo dnf install https://mirrors.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-9.noarch.rpm -y

# 3. akmods 도구 설치 확인 
sudo dnf install akmod-nvidia -y

# akmod-nvidia 설치 시 아래와 같은
# 오류: 
# 문제: 설치된  패키지 문제 nvidia-x11-drv-580.142-1.el9_7.elrepo.x86_64
#   - package nvidia-x11-drv-580.142-1.el9_7.elrepo.x86_64 from @System conflicts with nvidia-kmod-common # provided by xorg-x11-drv-nvidia-3:570.195.03-1.el9.x86_64 from rpmfusion-nonfree-updates <중략> 
# (충돌하는 꾸러미를 교체하려면 명령줄에 '--allowerasing'을 추가하세요 또는 '--skip-broken'는 설치 할 수 없는 꾸러미를 건너 뜁니다 또는 '--nobest'는 최적 후보의 꾸러미만 사용합니다)

# 발생 시

sudo dnf install akmod-nvidia --allowerasing -y

# 이후 sudo dnf install akmod-nvidia --allowerasing -y 설치 시 
# 오류: 연결 시험 오류:
#  xorg-x11-drv-nvidia-libs-3:570.195.03-1.el9.x86_64에서 설치되는 /usr/lib64/gbm/nvidia-drm_gbm.so 파일은 nvidia-x11-drv-libs-580.142-1.el9_7.elrepo.x86_64 패키지의 파일과 충돌합니다 ... <생략> 가 뜰 경우

# 3-1. 기존 NVIDIA 관련 패키지 일괄 삭제
sudo dnf remove *nvidia* *elrepo* -y

# 3-2. RPM Fusion 저장소 정보를 바탕으로 깨끗하게 재설치
sudo dnf install akmod-nvidia xorg-x11-drv-nvidia-cuda -y

# 4. 드라이버 빌드 및 커널 이미지 갱신
# 4-1. 드라이버 모듈 직접 빌드
sudo akmods --force

# 4-2. 커널 이미지에 드라이버 포함
sudo dracut --force

# 4-3. 재부팅
sudo reboot

 

11. nvidia-smi 명령 실행

nvidia-smi 결과 >>> GPU 정보 드라이버 버전, CUDA 버전이 뜨면 성공

반응형
LIST