在運行 Kubuntu 20.04 LTS 的 Intel Core i5 12600K PC 上添加GTX 560 Ti后,我安裝了nvidia-driver-390。
重新啟動后,我收到以下錯誤:
$ dmesg|grep -i nvrm -A3
[ 113.647054] NVRM: API mismatch: the client has the version 460.91.03, but
NVRM: this kernel module has the version 390.144. Please
NVRM: make sure that this kernel module and all NVIDIA driver
NVRM: components have the same version.
如何將該客戶端版本設定為 390.144?
較新的驅動程式(例如nvidia-driver-460)似乎不支持此顯卡。我也收到警告:
$ ubuntu-drivers devices
WARNING:root:_pkg_get_support nvidia-driver-390: package has invalid Support Legacyheader, cannot determine support level
== /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0 ==
modalias : pci:v000010DEd00001200sv00001043sd000083ACbc03sc00i00
vendor : NVIDIA Corporation
model : GF114 [GeForce GTX 560 Ti]
driver : nvidia-340 - distro non-free
driver : nvidia-driver-390 - distro non-free recommended
driver : xserver-xorg-video-nouveau - distro free builtin
我運行更新的內核,以便與英特爾 2.5G 以太網 IGC 驅動程式聯網。我可以啟動到內核 5.4.0.91-generic,但那樣我就沒有網路了。
$ uname -a
Linux Kairos 5.13.0-22-generic #22~20.04.1-Ubuntu SMP Tue Nov 9 15:07:24 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
此外,dkms給出:
$ dkms status
nvidia, 390.144, 5.13.0-22-generic, x86_64: installed
nvidia, 390.144, 5.4.0-91-generic, x86_64: built
而/var/lib/dkms/顯示:
$ tree /var/lib/dkms/
/var/lib/dkms/
├── dkms_dbversion
└── nvidia
├── 390.144
│ ├── 5.13.0-22-generic
│ │ └── x86_64
│ │ ├── log
│ │ │ └── make.log
│ │ └── module
│ │ ├── nvidia-drm.ko
│ │ ├── nvidia.ko
│ │ └── nvidia-modeset.ko
│ ├── 5.4.0-91-generic
│ │ └── x86_64
│ │ ├── log
│ │ │ └── make.log
│ │ └── module
│ │ ├── nvidia-drm.ko
│ │ ├── nvidia.ko
│ │ ├── nvidia-modeset.ko
│ │ └── nvidia-uvm.ko
│ └── source -> /usr/src/nvidia-390.144
└── kernel-5.13.0-22-generic-x86_64 -> 390.144/5.13.0-22-generic/x86_64
12 directories, 10 files
并modinfo nvidia回傳:
filename: /lib/modules/5.13.0-22-generic/updates/dkms/nvidia.ko
alias: char-major-195-*
version: 390.144
supported: external
license: NVIDIA
srcversion: D635B75826DE88984609590
alias: pci:v000010DEd00000E00sv*sd*bc04sc80i00*
alias: pci:v000010DEd*sv*sd*bc03sc02i00*
alias: pci:v000010DEd*sv*sd*bc03sc00i00*
depends: ipmi_msghandler
retpoline: Y
name: nvidia
vermagic: 5.13.0-22-generic SMP mod_unload modversions
parm: NVreg_Mobile:int
parm: NVreg_ResmanDebugLevel:int
parm: NVreg_RmLogonRC:int
parm: NVreg_ModifyDeviceFiles:int
parm: NVreg_DeviceFileUID:int
parm: NVreg_DeviceFileGID:int
parm: NVreg_DeviceFileMode:int
parm: NVreg_UpdateMemoryTypes:int
parm: NVreg_InitializeSystemMemoryAllocations:int
parm: NVreg_UsePageAttributeTable:int
parm: NVreg_MapRegistersEarly:int
parm: NVreg_RegisterForACPIEvents:int
parm: NVreg_CheckPCIConfigSpace:int
parm: NVreg_EnablePCIeGen3:int
parm: NVreg_EnableMSI:int
parm: NVreg_TCEBypassMode:int
parm: NVreg_UseThreadedInterrupts:int
parm: NVreg_EnableStreamMemOPs:int
parm: NVreg_EnableBacklightHandler:int
parm: NVreg_RestrictProfilingToAdminUsers:int
parm: NVreg_EnableUserNUMAManagement:int
parm: NVreg_EnableIBMNPURelaxedOrderingMode:int
parm: NVreg_MemoryPoolSize:int
parm: NVreg_KMallocHeapMaxSize:int
parm: NVreg_VMallocHeapMaxSize:int
parm: NVreg_IgnoreMMIOCheck:int
parm: NVreg_RegistryDwords:charp
parm: NVreg_RegistryDwordsPerDevice:charp
parm: NVreg_RmMsg:charp
parm: NVreg_AssignGpus:charp
我找到了很多關于如何將驅動程式升級到最新版本(目前是 495)的帖子,但是它并沒有解決我的問題,而且那個版本不支持我的顯卡。只有版本 390 有效,但隨后出現 API 不匹配錯誤。
uj5u.com熱心網友回復:
我找到了解決方案,現在 Kubuntu 按預期正常啟動。
首先,我清除了所有驅動程式和庫
$ sudo apt purge nvidia-* && sudo apt purge libnvidia-*
然后我檢查是否沒有安裝任何 nvidia 驅動程式。以下沒有回傳任何東西,因為它應該
$ dpkg -l nvidia-*|grep ^ii
然后我從 https://www.nvidia.com/Download/driverResults.aspx/177153/en-us為我的Geforce GTX 560 Ti下載了正確版本的驅動程式。您應該從https://www.nvidia.com/Download/index.aspx?lang=en-us 中選擇您的驅動程式。
在此之后,我重新啟動到終端
$ sudo init 3
我在命令列登錄,進入剛才下載驅動的目錄,然后修改權限,運行安裝檔案(可能會問一些配置問題),然后重啟
$ cd $HOME/Downloads/Nvidia/
$ chmod a x NVIDIA-Linux-x86_64-390.144.run
$ sudo ./NVIDIA-Linux-x86_64-390.144.run
$ sudo reboot
我現在有正常的 GDM 登錄螢屏,并且在登錄后我的雙螢屏都處于正確的解析度。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/380139.html
上一篇:我應該在MySQLV8.0上的哪個檔案中添加`innodb_`相關條目
下一篇:Jmeter--控制器--詳解
