我正在尝试在Debian Stretch中安装最新的NVIDIA驱动程序。我是NVIDIA-Linux-x86_64-390.48.run
从这里下载的,但是当我尝试这样做时
sudo sh ./NVIDIA-Linux-x86_64-390.48.run
根据建议,出现错误消息。
ERROR: An NVIDIA kernel module 'nvidia-drm' appears to already be loaded in your kernel. This may be because it is in use (for example, by an X server, a CUDA program, or
the NVIDIA Persistence Daemon), but this may also happen if your kernel was configured without support for module unloading. Please be sure to exit any programs
that may be using the GPU(s) before attempting to upgrade your driver. If no GPU-based programs are running, you know that your kernel supports module unloading,
and you still receive this message, then an error may have occured that has corrupted an NVIDIA kernel module's usage count, for which the simplest remedy is to
reboot your computer.
当我尝试找出谁在使用nvidia-drm
(或nvidia_drm
)时,什么都看不到。
~$ sudo lsof | grep nvidia-drm
lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
Output information may be incomplete.
~$ sudo lsof -e /run/user/1000/gvfs | grep nvidia-drm
~$
当我尝试删除它时,它说它正在被使用。
~$ sudo modprobe -r nvidia-drm
modprobe: FATAL: Module nvidia_drm is in use.
~$
我已经重新启动并以纯文本模式启动(通过在提供用户名/密码之前按Ctrl + Alt + F2组合键),但是出现了相同的错误。
除此之外,我如何“知道我的内核支持模块卸载”?
我在启动时收到一些与nvidia相关的警告,但是不知道它们是否相关:
Apr 30 00:46:15 debian-9 kernel: nvidia: loading out-of-tree module taints kernel.
Apr 30 00:46:15 debian-9 kernel: nvidia: module license 'NVIDIA' taints kernel.
Apr 30 00:46:15 debian-9 kernel: Disabling lock debugging due to kernel taint
Apr 30 00:46:15 debian-9 kernel: NVRM: loading NVIDIA UNIX x86_64 Kernel Module 375.82 Wed Jul 19 21:16:49 PDT 2017 (using threaded interrupts)
systemctl stop systemd-logind
卸载模块之前。
systemctl stop systemd-logind.service
,但这将关闭屏幕并带我回到图形登录,在此我必须再次执行Ctrl + Alt + F2。