우분투에서 커널 업데이트 후 NVIDIA 드라이버가 로드되지 않는 문제를 해결하는 방법

우분투 커널 업데이트 후 NVIDIA 시스템이 정상적으로 부팅되지만 독점 드라이버가 더 이상 로드되지 않는 문제가 발생할 수 있습니다. 나타나는 증상은 다양합니다. nvidia-smi드라이버와 통신할 수 없다는 메시지가 표시되거나, CUDA 애플리케이션이 GPU를 인식하지 못하거나, 데스크톱이 소프트웨어 렌더링으로 전환되거나, 아예 modprobe nvidia작동하지 않을 수 있습니다. 실질적인 해결책은 모든 것을 한 번에 재설치하는 대신 어떤 부분에 문제가 발생했는지 파악하는 것입니다.

이 문서에서는 Ubuntu에 포함된 NVIDIA 드라이버와 Canonical의 최신 지침을 중점적으로 다룹니다. 2026년 10월 현재, Ubuntu는 ubuntu-drivers대부분의 시스템에 대해 드라이버 설치 도구 또는 추가 드라이버 애플리케이션을 권장하며, 가능한 경우 미리 컴파일되고 서명된 커널 모듈을 권장합니다. NVIDIA의 Ubuntu 문서에서도 Ubuntu 22.04, 24.04, 26.04 버전을 지원하지만, 최신 버전에서는 패키지 이름이 다를 수 있으므로 예제에서 브랜치 번호를 복사하여 사용하는 경우 해당 브랜치가 사용자의 시스템에 실제로 제공되는지 확인해야 합니다.

신속 진단 체크리스트

확인하다명령그것이 당신에게 알려주는 것
커널 실행 중uname -rNVIDIA 모듈과 일치하는 정확한 커널 ABI입니다.
운전자 상태nvidia-smi사용자 공간이 로드된 NVIDIA 커널 모듈과 통신할 수 있는지 여부.
로드된 모듈lsmod | grep -E 'nvidia|nouveau'NVIDIA와 Nouveau 중 누가 현재 GPU를 소유하고 있는지 여부.
추천 패키지sudo ubuntu-drivers list우분투에서 하드웨어에 적합하다고 판단하는 드라이버 브랜치입니다.
보안 부팅mokutil --sb-state서명되지 않은 타사 커널 모듈이 거부될 수 있는지 여부.
커널 로그sudo dmesg | grep -iE 'nvrm|nvidia|nouveau|secure|module'API 불일치, 서명 거부 또는 프로브 실패에 대한 유용한 단서입니다.
우분투 터미널에서 `uname -r` 명령이 실행되고, `nvidia-smi` 명령이 실패했으며, `lsmod` 명령으로 NVIDIA 모듈이 반환되지 않는 화면입니다.
일반적인 업데이트 후 오류 패턴: 새 커널은 실행 중이지만 NVIDIA 모듈이 로드되지 않습니다. 시스템의 정확한 커널 및 드라이버 버전은 다를 수 있습니다.

1. 문제가 현재 커널 버전에서 발생했는지 확인하십시오.

먼저 실행 중인 커널과 현재 NVIDIA 상태를 기록하십시오.

uname -r
nvidia-smi
lsmod | grep -E 'nvidia|nouveau'

오류가 발생하고 모듈이 표시되지 않으면 nvidia-smi오류 는 CUDA 또는 데스크톱 애플리케이션 계층 아래에서 발생합니다. 오류가 보고 되면 Canonical은 이를 드라이버 업데이트 후에 자주 발생하는 사용자 공간/커널 모듈 불일치로 설명합니다. 새 모듈이 이미 설치된 경우 재부팅으로 문제가 해결될 수 있습니다.nvidialsmodnvidia-smiFailed to initialize NVML: Driver/library version mismatch

GRUB에서 이전 커널을 선택할 수 있고 거기서 드라이버가 정상적으로 작동한다면, 이는 새 커널에 사용 가능한 NVIDIA 모듈이 없다는 강력한 증거입니다. 이전 커널은 유용한 임시 방편이지만, 최신 커널과 드라이버 스택이 호환되어야 하므로 근본적인 해결책은 아닙니다.

2. 우분투에 어떤 드라이버 브랜치를 권장하는지 문의하세요.

일반적인 Ubuntu 데스크톱 또는 워크스테이션에서는 분기를 추측하는 대신 Ubuntu 자체의 드라이버 선택 로직을 사용하십시오.

sudo apt update
sudo ubuntu-drivers list

대부분의 데스크톱 및 게임 시스템의 경우 Canonical은 패키지 대신 일반 UDA 드라이버를 권장합니다 . 컴퓨팅 서버의 경우, 적절한 경우 -server서버 설치 지침을 따르십시오 . 이전에 NVIDIA의 독립 실행 형 설치 프로그램이나 타사 저장소를 사용하여 시스템을 설치한 경우, 패키지 소스를 혼합하면 문제 진단이 더 어려워질 수 있습니다. Canonical은 공식 문서에 명시된 방법 외의 방법으로 드라이버를 설치하면 Ubuntu에서 제공하는 구성 요소를 덮어쓰거나 보안 부팅을 방해할 수 있다고 명시적으로 경고합니다.ubuntu-drivers list --gpgpu.run

우분투 터미널에서 `ubuntu-drivers list`와 `ubuntu-drivers devices` 명령어를 실행한 결과, NVIDIA 드라이버가 권장 드라이버로 표시되어 있습니다.
다른 컴퓨터의 버전을 하드코딩하는 대신 Ubuntu 드라이버 검색 기능을 사용하여 설치된 GPU에 적합한 브랜치를 찾으십시오.

3. 재구축을 시작하기 전에 보안 부팅을 확인하십시오.

보안 부팅은 NVIDIA 모듈이 디스크에 존재하지만 로드되지 않는 주요 원인 중 하나입니다. 해당 모듈의 상태를 확인하십시오.

mokutil --sb-state
sudo modprobe nvidia

보안 부팅이 활성화되어 있고 다음 modprobe과 같은 메시지가 표시 되면 Key was rejected by service커널이 모듈 신뢰를 강제하고 있는 것입니다. Ubuntu는 지원되는 amd64 릴리스에서 보안 부팅 시 커널 모듈 유효성 검사를 수년간 시행해 왔습니다. Canonical은 가능한 경우 서명되고 사전 컴파일된 NVIDIA 모듈을 사용하는 것을 선호합니다. DKMS를 의도적으로 사용하는 경우 Ubuntu는 재부팅 시 MOK(컴퓨터 소유자 키)를 생성하고 등록해야 할 수 있습니다.

보안 부팅을 첫 번째 문제 해결 단계로 비활성화하지 마십시오. 통제된 환경에서 간단한 진단 실험으로는 괜찮지만, 일반적으로 서명된 모듈을 설치하거나 MOK를 올바르게 등록하는 것이 더 나은 해결책입니다. Canonical은 UEFI 보안 부팅 문서 에서 등록 절차를 설명하고 있습니다 .

Ubuntu 터미널에서 SecureBoot가 활성화되어 있고 modprobe nvidia 명령어가 키 거부 메시지와 함께 실패하는 모습입니다.
서명 거부는 GPU 누락보다는 Secure Boot 신뢰 문제일 수 있습니다. 사용자 공간 라이브러리를 반복적으로 재설치하는 대신 모듈 서명 또는 MOK 등록 문제를 해결하십시오.

4. 실행 중인 커널에 해당하는 NVIDIA 모듈이 있는지 확인합니다.

Ubuntu에 미리 컴파일된 NVIDIA 패키지는 커널 ABI에 종속되어 있습니다. DRIVER_BRANCH표시된 브랜치로 교체하십시오 ubuntu-drivers list.

DRIVER_BRANCH=XXX
apt-cache policy linux-modules-nvidia-${DRIVER_BRANCH}-$(uname -r)

해당 패키지가 현재 커널에 설치되어 있으면 아래의 보안 부팅, Nouveau 및 로그 검사 단계로 진행하십시오. 설치되어 있지 않으면 정확히 일치하는 모듈 패키지를 설치하십시오.

sudo apt install linux-modules-nvidia-${DRIVER_BRANCH}-$(uname -r)

Canonical은 예를 들어, 향후 커널 업그레이드 시 해당 NVIDIA 모듈을 가져오는 데 도움이 되는 메타패키지 설치를 지원합니다 linux-modules-nvidia-${DRIVER_BRANCH}-generic. 정확한 패키지 이름은 사용 중인 Ubuntu 릴리스, 커널 버전, 드라이버 브랜치 및 서버 버전 사용 여부에 따라 다르므로, 설치하기 전에 APT에서 표시되는 후보 이름을 확인하십시오.

우분투 터미널에서 NVIDIA 커널 모듈 패키지 및 현재 커널 헤더에 대한 apt-cache 정책을 확인하는 중입니다.
패키지 정책을 확인하면 커널별 NVIDIA 모듈 누락과 사용자 공간 드라이버 문제를 구분하는 데 도움이 됩니다.

5. DKMS를 사용하는 경우 현재 커널 헤더가 있는지 확인하십시오.

DKMS는 현재 실행 중인 커널에 정확히 맞는 모듈을 빌드합니다. 따라서 해당 커널 헤더 파일이 필요합니다. Canonical은 일부 사용자 정의 커널과 같이 사전 컴파일된 모듈을 사용할 수 없는 경우에 DKMS 사용을 권장합니다.

sudo apt install linux-headers-$(uname -r)
dkms status

NVIDIA DKMS 항목에 현재 커널에 대한 빌드 성공 여부가 표시되지 않으면, /var/lib/dkms/임의의 패키지를 제거하기 전에 빌드 로그를 확인하십시오. 일반적인 오류 원인으로는 헤더 파일 누락, 지원되지 않는 컴파일러/커널 조합 또는 모듈 서명 문제 등이 있습니다. 필수 구성 요소를 수정한 후에는 해당 DKMS 패키지를 다시 설치하거나 Ubuntu의 자동 설치 경로를 사용하십시오.

sudo ubuntu-drivers install --include-dkms

DKMS가 실제로 필요한 경우에만 해당 명령어를 사용하십시오. Canonical의 최신 데스크톱 설명서에 따르면 대부분의 사용자, 특히 Secure Boot를 사용하는 사용자에게는 사전 컴파일된 모듈이 권장됩니다.

현재 실행 중인 커널에 linux-headers를 설치하는 Ubuntu 터미널.
DKMS가 현재 커널용 NVIDIA 모듈을 컴파일해야 하는 경우 일치하는 커널 헤더가 필요합니다.

6. 누락된 사전 컴파일된 모듈이 있으면 설치합니다.

4단계에서 현재 커널에 사전 컴파일된 NVIDIA 모듈이 없는 것으로 나타나면 해당 모듈을 명시적으로 설치하고 APT가 initramfs를 다시 빌드하도록 하십시오.

sudo apt install linux-modules-nvidia-${DRIVER_BRANCH}-$(uname -r)

그런 다음 APT가 종속성 오류 없이 완료되었는지 확인하십시오. 강제로 패키지 설치를 시도하지 마십시오 dpkg --force-*. 강제 설치는 커널 모듈, 사용자 공간 라이브러리 및 메타패키지의 버전이 호환되지 않게 만들 수 있습니다.

어떤 방법을 사용해야 할지 확실하지 않다면, 더 안전한 일반적인 수리 방법은 다음과 같습니다.

sudo ubuntu-drivers install

Canonical은 ubuntu-drivers추가 드라이버 애플리케이션과 동일한 논리를 사용하며 기본적으로 Secure Boot와 호환되는 것으로 알려진 사전 빌드된 서명된 드라이버를 선택한다고 명시합니다.

우분투 터미널에서 현재 커널에 맞는 linux-modules-nvidia 패키지를 설치하고 initramfs를 업데이트하는 방법입니다.
커널별 모듈 패키지를 설치하면 드라이버 브랜치는 있지만 새 커널에 해당 NVIDIA 모듈이 없는 일반적인 문제를 해결할 수 있습니다.

7. 패키지 변경 후 재부팅

여기서 재부팅은 단순히 형식적인 절차가 아닙니다. 실행 중인 커널은 APT가 디스크의 사용자 공간 라이브러리를 이미 업그레이드한 후에도 이전 버전의 NVIDIA 모듈을 메모리에 유지할 수 있습니다. Canonical은 업데이트 후 NVML 드라이버/라이브러리 버전 불일치의 원인으로 이를 명시적으로 문서화했습니다.

sudo reboot

재부팅 후 바로 다시 설치하지 마십시오. 먼저 다음 섹션의 명령어를 사용하여 결과를 확인하십시오.

우분투 터미널에서 ubuntu-drivers 설치 작업 후 sudo reboot 명령어를 실행한 화면입니다.
드라이버 또는 커널 모듈을 변경한 후에는 재부팅하여 커널이 새로 설치된 NVIDIA 모듈을 로드하고 사용자 공간 구성 요소가 이전 버전으로 돌아가도록 하십시오.

8. NVIDIA 모듈이 로드되었는지 확인하십시오.

달리다:

nvidia-smi
lsmod | grep nvidia
cat /proc/driver/nvidia/version

복구가 성공적으로 완료되면 세 가지 유용한 징후가 나타납니다. nvidia-smiGPU 목록이 표시되고, lsmodNVIDIA 모듈이 표시되며, /proc/driver/nvidia/version실행 중인 모듈 버전이 보고됩니다. CUDA 워크로드의 경우, 이전에 오류가 발생했던 실제 애플리케이션 또는 프레임워크를 다시 실행해 보세요. nvidia-smi이것만으로는 드라이버 통신이 제대로 이루어졌음을 증명할 수 없으며, 환경 내 모든 CUDA 라이브러리가 호환된다는 것을 보장하는 것은 아닙니다.

Ubuntu 터미널에서 nvidia-smi 명령의 성공적인 출력과 lsmod 명령으로 NVIDIA 모듈 목록이 표시되는 모습입니다.
정상적인 최종 상태: nvidia-smi가 GPU와 통신할 수 있고 NVIDIA 커널 모듈이 로드된 상태입니다. 표시된 값은 예시이며 필수 버전은 아닙니다.

그래도 문제가 해결되지 않으면, 증상을 바탕으로 다음 조치를 선택하세요.

"드라이버/라이브러리 버전 불일치"

먼저 시스템을 재부팅하십시오. 그런 다음 실행 중인 커널 모듈 버전과 설치된 패키지 버전을 비교하십시오. Canonical은 업데이트된 사용자 공간 구성 요소가 메모리에 로드된 이전 모듈과 일시적으로 일치하지 않을 수 있다고 설명합니다. 재부팅 후에도 불일치가 지속되면 패키지 소스가 혼합되어 있거나 드라이버 브랜치가 여러 개인지 확인하십시오.

"장치를 찾을 수 없습니다"라는 메시지가 표시되고 Nouveau가 로드됩니다.

확인하다:

lsmod | grep nouveau

Ubuntu 서버 문서에 따르면 이러한 상황에서 Nouveau 드라이버는 독점 NVIDIA 드라이버와 충돌할 수 있습니다. Nouveau 드라이버가 로드된 상태에서 독점 드라이버를 사용하려는 경우, Canonical은 해당 드라이버를 차단 목록에 추가하고 initramfs를 재구축하도록 안내하고 있습니다.

echo "blacklist nouveau" | sudo tee /etc/modprobe.d/disable-nouveau.conf
echo "options nouveau modeset=0" | sudo tee -a /etc/modprobe.d/disable-nouveau.conf
sudo update-initramfs -u
sudo reboot

Nouveau 드라이버가 디스크에 존재한다는 이유만으로 차단 목록에 추가하지 마십시오. 먼저 Nouveau 드라이버가 실제로 로드되었는지, 그리고 오류와 관련이 있는지 확인하십시오.

modprobe nvidia키가 거부되었다고 합니다.

보안 부팅 경로로 돌아가십시오. 가능한 경우 서명된 Ubuntu 모듈을 사용하거나 DKMS 모듈에 대한 MOK 등록을 완료하십시오. 서명되지 않은 모듈을 반복적으로 재설치해도 신뢰 결정은 변경되지 않습니다.

새 커널에는 호환되는 모듈 패키지가 없습니다.

정상적으로 작동하는 것으로 확인된 이전 커널로 임시 부팅하고, 시스템을 최신 상태로 유지한 다음, Ubuntu에서 최신 커널에 맞는 사전 컴파일된 모듈을 제공하는지 확인하십시오. 사용자 지정 커널을 의도적으로 실행하는 경우 DKMS가 적합할 수 있지만, 빌드 로그를 확인하고 보안 부팅 서명이 되어 있는지 확인하십시오. 보안 업데이트에 대한 유지 관리 계획이 없는 한, 이전 커널을 무기한 고정하는 것은 피하십시오.

도움을 요청하기 전에 수집해야 할 명령어

이 명령어들은 시스템을 변경하지 않고도 간편한 진단 패키지를 제공합니다.

uname -a
lspci -nnk | grep -A3 -i nvidia
nvidia-smi
lsmod | grep -E 'nvidia|nouveau'
mokutil --sb-state
dkms status
apt-cache policy 'nvidia-driver-*' | sed -n '1,160p'
sudo dmesg | grep -iE 'nvrm|nvidia|nouveau|secure|module' | tail -n 120

Ubuntu 릴리스 버전, 정확한 커널 버전, 그리고 드라이버가 Ubuntu 패키지, NVIDIA 저장소, PPA 또는 독립 실행형 설치 프로그램을 통해 설치되었는지 여부를 포함해 주세요 lsb_release -a. /etc/os-release이러한 uname -r세부 정보는 "업데이트 후 드라이버에 문제가 발생했다"는 일반적인 설명보다 훨씬 중요합니다.

실질적인 예방

  • ubuntu-drivers일반 데스크톱 시스템에서는 Ubuntu 또는 추가 드라이버 워크플로를 사용하는 것이 좋습니다 .
  • 향후 커널 업데이트에서 NVIDIA 모듈과 호환되도록 커널 버전 메타패키지를 설치된 상태로 유지하십시오.
  • 커널 또는 NVIDIA 드라이버 업그레이드 후에는 메모리/디스크 혼합 스택을 계속 사용하는 대신 시스템을 재부팅하십시오.
  • 새로운 커널이 GPU 드라이버로 부팅되는지 확인할 때까지 최소한 하나 이상의 정상 작동하는 커널을 준비해 두십시오.
  • 의도적으로 결과를 관리할 계획이 아니라면, 우분투 패키지, PPA, NVIDIA 독립 실행형 설치 프로그램 및 여러 저장소를 혼합하여 사용하는 것을 피하십시오.

공식 참고 자료

Canonical의 최신 설치 절차는 NVIDIA 드라이버 설치 - Ubuntu 데스크톱 및 NVIDIA 드라이버 설치 - Ubuntu 서버 에 있습니다 . DKMS 관련 지침은 DKMS 패키지를 사용하여 자체 NVIDIA 모듈 빌드를 참조하세요. NVIDIA 공급업체 문서는 Ubuntu용 NVIDIA 드라이버 설치 가이드 에서 확인할 수 있습니다 .

드라이버 브랜치, 커널 ABI 및 패키지 이름은 릴리스 버전에 따라 다릅니다. 예제 버전을 범용 버전으로 간주하지 말고 항상 시스템 및 APT에서 보고하는 값으로 대체하십시오.

댓글 남기기

우분투에서 커널 업데이트 후 NVIDIA 드라이버가 로드되지 않는 문제를 해결하는 방법

우분투에서 커널 업데이트 후 NVIDIA 드라이버가 로드되지 않는 문제를 해결하는 방법

우분투 커널 업데이트 후 NVIDIA 드라이버가 로드되지 않는 문제를 해결하려면 커널 모듈, 보안 부팅, DKMS, 헤더, Nouveau 및 버전 불일치를 확인하십시오.

구형 하드웨어에 Pardus 23을 설치하는 방법: 단계별 안내

구형 하드웨어에 Pardus 23을 설치하는 방법: 단계별 안내

레거시 BIOS, 부팅 가능한 USB, 안전한 파티셔닝, 그리고 저사양 하드웨어에 대한 설치 후 검사 기능을 갖춘 구형 64비트 PC에 Pardus 23.4 XFCE를 설치하는 방법입니다.

Gooroom OS 보안 모델 설명: 신뢰할 수 있는 부팅, OS 보호 및 브라우저 샌드박싱

Gooroom OS 보안 모델 설명: 신뢰할 수 있는 부팅, OS 보호 및 브라우저 샌드박싱

Gooroom OS가 신뢰할 수 있는 부팅, 실행 파일 및 운영 체제 보호, 브라우저 제어를 어떻게 계층화하는지, 그리고 사용자가 샌드박싱에 대해 무엇을 확인해야 하는지 알아보세요.

메모리 부족으로 인한 MySQL 다운 오류 없이 저사양 VPS에서 Debian 12를 실행하는 방법

메모리 부족으로 인한 MySQL 다운 오류 없이 저사양 VPS에서 Debian 12를 실행하는 방법

데비안 12 메모리 부족 현상을 진단하고, MariaDB 또는 MySQL의 크기를 적절하게 조정하고, 스왑 공간을 신중하게 추가하고, VPS가 워크로드를 처리할 수 있는지 확인하십시오.

Pardus Linux 데스크톱에서 VPN 연결을 구성하는 방법

Pardus Linux 데스크톱에서 VPN 연결을 구성하는 방법

Pardus 25 Desktop에서 OpenVPN, WireGuard, OpenConnect 또는 IPsec VPN 연결을 설정한 다음 라우팅, DNS 및 터널 상태를 확인하십시오.

SLES 15와 RHEL 9: 엔터프라이즈 서버 성능 비교

SLES 15와 RHEL 9: 엔터프라이즈 서버 성능 비교

SLES 15와 RHEL 9의 성능 정보, 커널 스트림, TuneD 프로파일, 워크로드 변수, 그리고 두 시스템을 공정하게 벤치마킹하는 방법을 비교합니다.

systemd 종료 시 재부팅 중에 멈추는 SUSE Linux 서버 문제 해결

systemd 종료 시 재부팅 중에 멈추는 SUSE Linux 서버 문제 해결

systemd 종료 중에 멈추는 SUSE Linux 서버의 문제를 진단하고 해결하는 방법을 알아보세요. 멈춘 작업을 찾고, 이전 부팅 과정을 검토하고, 차단하는 서비스 또는 마운트를 수정하면 문제를 해결할 수 있습니다.

Windows 사용자를 위한 Pardus Linux의 XFCE 패널 사용자 지정 방법

Windows 사용자를 위한 Pardus Linux의 XFCE 패널 사용자 지정 방법

Pardus XFCE를 하단 작업 표시줄, 애플리케이션 메뉴, 즐겨찾는 런처, 열린 창 버튼, 시스템 트레이 및 시계로 익숙하게 만들어 보세요. 어떤 부분을 변경하고 레이아웃을 테스트하는 방법을 알아보세요.

How to Set Up Automated Headless Debian Upgrades with Unattended-Upgrades

How to Set Up Automated Headless Debian Upgrades with Unattended-Upgrades

Configure unattended-upgrades on a headless Debian server, verify systemd timers, test safely, control reboots, and monitor automatic security updates.

SUSE Linux Enterprise Server에서 Cockpit 웹 콘솔이 연결되지 않는 문제 해결

SUSE Linux Enterprise Server에서 Cockpit 웹 콘솔이 연결되지 않는 문제 해결

SUSE Linux Enterprise Server에서 Cockpit 문제를 해결하려면 HTTPS URL, systemd 소켓, 설치된 패키지, firewalld 영역, 인증서 및 로그를 확인하십시오.