如何解決 Ubuntu 核心更新後 Nvidia 驅動程式無法載入的問題

核心更新可能會導致 Ubuntu 系統出現登入介面解析度過低、黑屏或桌面無法使用 NVIDIA 顯示卡加速等問題。但這並不一定意味著顯示卡本身故障。內核更新會變更建置外部 NVIDIA 模組所依賴的內核,而安全啟動可能會拒絕載入簽署金鑰不受信任的模組。

首先確定故障所在。如果先前的核心啟動後 NVIDIA 顯示卡可以正常運作,那麼問題很可能出在新核心或其模組建置上。如果模組看似已安裝,但核心報告金鑰或簽章被拒絕,請檢查安全啟動和機器所有者金鑰 (MOK) 註冊情況。本指南使用 Ubuntu 的打包驅動程式工作流程;選單措辭和驅動程式分支可能因 Ubuntu 版本和硬體而異。

Ubuntu GRUB 選單已選擇較早的 Linux 核心條目。
GRUB 視圖範例:選擇較早安裝的核心可以幫助在診斷更新後的核心時恢復正常運作的桌面。

能否先安全地啟動之前的核心?

是的,如果它仍然安裝著。重新啟動並開啟 GRUB 選單;在許多系統中,啟動時按住 Shift 鍵(傳統 BIOS)或在 UEFI 系統中按 Esc 鍵即可顯示 GRUB 選單。選擇“Ubuntu 進階選項”,然後選擇不含“恢復模式”的舊核心。具體的按鍵時機和選單標籤取決於韌體和 GRUB 配置。如果選單隱藏,請參考電腦的啟動行為,而不是隨意更改韌體設定。

系統啟動後,使用指令確認正在執行的核心uname -r。使用一個可以正常運作的舊核心可以作為恢復路徑,並留出時間檢查軟體包。但這並非永久解決方案:安全性更新仍然至關重要,因此在修復驅動程式後,請切換回新核心。如果兩個核心都無法正常啟動,請使用 Ubuntu 的復原模式或 Live USB 備份重要數據,然後再進行軟體套件變更。

重新安裝任何軟體之前應該檢查哪些內容?

開啟終端機(如果圖形介面不可用,則使用 Ctrl+Alt+F3 開啟文字控制台),並收集一個簡短的基線資料:

uname -r
mokutil --sb-state
dkms status
nvidia-smi
journalctl -k -b | grep -Ei 'nvidia|verification|key|module'

uname -r識別活動內核。mokutil --sb-state報告安全啟動是否已啟用。dkms status顯示是否已為此核心註冊動態核心模組支援 (DKMS) 版本。nvidia-smi測試與已載入的 NVIDIA 驅動程式的通訊;這是一個診斷命令,而非修復命令。內核日誌可能顯示缺少模組、建置失敗或簽名被拒絕。沒有匹配的日誌行並不能證明驅動程式運作正常。

Ubuntu 終端包含核心、DKMS 和 NVIDIA 驅動程式診斷指令
結合使用活動核心、DKMS 狀態和 NVIDIA 實用程序,可以區分缺少建置和已載入驅動程式的問題;範例輸出可能因版本而異。

NVIDIA 模組是否無法針對新核心進行編譯?

如果 DKMS 僅針對舊核心列出了 NVIDIA 驅動程序,或者沒有可用的 NVIDIA 模組uname -r,請安裝匹配的核心頭文件,並讓 Ubuntu 修復其打包的驅動程式。頭檔提供了為正在運行的內核建立外部模組所需的文件。首先確保您可以存取網路並有足夠的磁碟空間,然後運行:

sudo apt update
sudo apt install linux-headers-$(uname -r)
sudo ubuntu-drivers install

Ubuntu 推薦的ubuntu-drivers工具會選擇適合機器的可用驅動程式。在接受 APT 之前,請檢查它推薦的軟體包。如果驅動程式已安裝,但 DKMS 建置似乎不完整,請確定已安裝的軟體包,而不是猜測分支:

dpkg -l 'nvidia-dkms-*' 'nvidia-driver-*'
ubuntu-drivers list

然後重新安裝系統中顯示的匹配的 DKMS 軟體包(請替換為確切的軟體包名稱):。sudo apt install --reinstall nvidia-dkms-<branch>避免從其他 Ubuntu 版本複製驅動程式編號,或將 Ubuntu 軟體包與 NVIDIA 的獨立安裝程式混合;不同的安裝方法可能會覆蓋檔案或使安全啟動複雜化。如果 APT 報告未滿足的依賴項、已保留的軟體包或 DKMS 建置失敗,請在執行更多命令之前閱讀完整的錯誤資訊。相關的建置日誌通常位於/var/lib/dkms/;請使用錯誤訊息中指定的路徑,而不是刪除 DKMS 目錄。

Ubuntu 終端示範如何安裝相符的核心頭檔和 DKMS 驅動程式套件
安裝執行核心所需的頭文件,然後修復系統中已選定的 Ubuntu DKMS 軟體包。軟體包名稱和 APT 輸出可能有所不同。

安全啟動是否阻止了已建置的模組?

有可能。啟用安全啟動後,Ubuntu 核心會檢查第三方核心模組的簽名。 Ubuntu 的軟體套件可能會建立一個 MOK 簽名金鑰,並要求您註冊。如果安裝過程中提示您設定一次性密碼,但下次重新啟動後直接進入 Ubuntu 系統,則可能是金鑰未註冊。請檢查mokutil --sb-state內核日誌,查看是否有驗證或金鑰被拒絕的訊息。

當 Ubuntu 軟體包安裝程式將 MOK 註冊加入隊列後,請重新啟動並按照藍色 MOK 管理器螢幕的提示操作:選擇「註冊 MOK」,繼續,確認金鑰,輸入您在軟體包安裝過程中建立的一次性密碼,然後重新啟動。此密碼不一定是您的 Ubuntu 登入密碼。請仔細閱讀螢幕提示;選單措詞可能有所不同。如果未將註冊加入佇列,重新安裝受支援的 Ubuntu 驅動程式套件可能會提示您進行金鑰設定。請勿註冊不熟悉的金鑰檔案或共用一次性密碼。

MOK 管理器螢幕,其中「註冊 MOK」選項已高亮顯示
當金鑰註冊處於待處理狀態時,重新啟動過程中會進入 MOK 管理器註冊畫面;僅對您打算信任的金鑰選擇「註冊 MOK」。

如果即使安裝了頭文件,建置仍然失敗怎麼辦?

檢查新核心是否已完全安裝,以及其頭檔是否完全匹配:uname -r應與已安裝的頭文件包一致。然後檢查 APT 的 DKMS 錯誤和建置日誌。新核心可能會與較舊的 NVIDIA 驅動程式分支不相容;重新建置無法修復不支援該核心介面的原始程式碼。使用 Ubuntu 的驅動程式選擇器為您的版本安裝受支援的分支,然後重新啟動。如果您使用 NVIDIA 的 .run 安裝程式安裝了驅動程序,請在切換回 Ubuntu 軟體包之前,請按照 NVIDIA 的卸載說明進行操作;不要在不同的軟體套件管理器之間疊加使用。

如需臨時訪問,請從 GRUB 啟動舊內核,並保持安裝狀態,直到新內核的驅動程式正確載入。如果您使用自訂核心、非標準核心版本或圖形計算/伺服器配置,Ubuntu 的自動桌面建議可能與您的預期配置不符。請查閱相應核心或工作負載的文檔,而不是強制使用通用軟體包。

如何驗證修復是否有效?

修復軟體包或註冊密鑰後,重新啟動並啟動新核心。執行 `npm run dev`、`npm run build` 和 `npm run uname -rdev`指令。成功的結果應為:運行核心的 DKMS 條目已存在,目前啟動的核心日誌中沒有模組簽署被拒絕的記錄,並且顯示 GPU 和驅動程式資訊。同時確認桌面會話正常啟動,並且需要 GPU 加速的應用程式可以使用 NVIDIA GPU。混合型筆記型電腦可能會有意使用整合式顯示卡作為桌面,因此僅憑 GPU 不工作並不能證明失敗。dkms statusnvidia-sminvidia-smi

如果錯誤依舊存在,請儲存完整的 DKMS 建置輸出、目前核心版本、Ubuntu 版本(cat /etc/os-release)、安全啟動狀態以及相關的核心日誌行。這些資訊有助於確定下一步是使用受支援的驅動程式分支、簽章問題還是核心相容性問題。 Ubuntu 官方指南建議ubuntu-drivers大多數系統都採用此方法,尤其是在啟用安全啟動的情況下;請參閱Ubuntu Desktop:安裝 NVIDIA 驅動程式、Ubuntu Server:NVIDIA 驅動程式安裝以及Ubuntu Security:UEFI 安全啟動。有關底層驅動程式相容性的詳細信息,請參閱NVIDIA 的 Linux 驅動程式安裝文件。可用的驅動程式版本和具體說明會因 Ubuntu 版本和 GPU 支援狀態而異。

留下評論

How to Dual-Boot Ubuntu 24.04 and Windows 11 With BitLocker Enabled

How to Dual-Boot Ubuntu 24.04 and Windows 11 With BitLocker Enabled

Install Ubuntu 24.04 alongside Windows 11 with BitLocker safely. Compare separate-drive and shared-drive paths, recovery keys, partitioning, and boot checks.

如何解決 Ubuntu 核心更新後 Nvidia 驅動程式無法載入的問題

如何解決 Ubuntu 核心更新後 Nvidia 驅動程式無法載入的問題

診斷 Ubuntu 核心更新後 NVIDIA 驅動程式故障。檢查 DKMS 和安全啟動,重建匹配的模組,註冊 MOK,並驗證修復效果。

如何修復 Ubuntu 24.04 系統睡眠後 Wi-Fi 斷開連線的問題

如何修復 Ubuntu 24.04 系統睡眠後 Wi-Fi 斷開連線的問題

修復 Ubuntu 24.04 系統掛起後 Wi-Fi 斷開的問題,檢查 NetworkManager、無線電模組、更新、省電模式和驅動程序,然後驗證每次恢復操作。

修復 Ubuntu GNOME 中 Tracker-Miner-3 導致的 CPU 使用率過高問題

修復 Ubuntu GNOME 中 Tracker-Miner-3 導致的 CPU 使用率過高問題

了解為什麼 tracker-miner-fs-3 在 Ubuntu GNOME 中佔用大量 CPU,以及如何檢查索引、排除資料夾、更新 Ubuntu 或安全地重建搜尋索引。

修正在 UEFI 上安裝 Debian 後出現的「找不到可啟動裝置」錯誤

修正在 UEFI 上安裝 Debian 後出現的「找不到可啟動裝置」錯誤

透過檢查啟動模式、EFI 系統分割區、GRUB 檔案和韌體啟動順序來修復 Debian 的 UEFI 啟動錯誤,而無需先重新安裝 Debian。

解決 Windows 11 更新錯誤 0x800f0922

解決 Windows 11 更新錯誤 0x800f0922

遇到 Windows 11 更新錯誤 0x800f0922?了解已驗證的有效解決方法,快速解決此常見問題。逐步指南,幫助您輕鬆完成更新,告別煩惱。

如何修復 Windows 11 系統還原錯誤 0x80070005

如何修復 Windows 11 系統還原錯誤 0x80070005

遇到 Windows 11 系統還原錯誤 0x80070005 ?我們提供經過驗證的分步解決方案,幫助您輕鬆修復訪問被拒絕問題,並順利恢復系統。無需任何技術知識!

解決 Windows 11 PowerPoint 圖形驅動程式錯誤

解決 Windows 11 PowerPoint 圖形驅動程式錯誤

還在為 Windows 11 系統中 PowerPoint 圖形驅動程式錯誤而煩惱嗎?了解這些經過驗證的故障排除步驟,快速輕鬆地解決崩潰、黑屏和效能問題。立即恢復流暢的簡報體驗。

如何使用 Windows 11 字元對映表工具

如何使用 Windows 11 字元對映表工具

了解如何輕鬆使用 Windows 11 字元對應工具在文件中插入特殊字元、表情符號和符號。提供逐步指南,包含適合初學者和專業人士的技巧。

解決 Windows 11 Windows 郵件應用程式無法同步的問題

解決 Windows 11 Windows 郵件應用程式無法同步的問題

Windows 11 郵件應用程式無法同步?我們提供經過驗證的逐步修復方案,讓您輕鬆恢復郵件收發的流暢性。快速解決常見同步錯誤,告別技術難題。