我正在尝试运行这个命令:
# rmmod nvidia
但我明白:
ERROR: Module nvidia is in use
我如何知道哪些进程正在使用 nvidia 模块?
答案1
据我所知,没有直接的方法可以获取正在使用模块的进程。
您可以尝试lsmod | grep <module name>
查看正在使用某个模块的所有已加载的内核模块。
您还可以尝试dmesg | grep <module name>
查看内核日志是否有任何关于哪些进程可能正在使用模块的线索。
您可能能够使用 删除该模块rmmod --force <module_name>
。
至于 nvidia 模块,如果您关闭 X11,您应该能够将其删除。
init 4
rmmod nvidia
对我有用。
答案2
对于 nvidia 模块,可以通过以下方式检索此信息
$ sudo lsof /dev/nvidia*
[sudo] password for XXXXXXX:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
nvidia-pe 19360 nvidia-persistenced 2u CHR 195,255 0t0 503 /dev/nvidiactl
nvidia-pe 19360 nvidia-persistenced 3u CHR 195,0 0t0 504 /dev/nvidia0
nvidia-pe 19360 nvidia-persistenced 5u CHR 195,0 0t0 504 /dev/nvidia0
nvidia-pe 19360 nvidia-persistenced 6u CHR 195,0 0t0 504 /dev/nvidia0
nvidia-pe 19360 nvidia-persistenced 7u CHR 195,254 0t0 513 /dev/nvidia-modeset
nvidia-pe 19360 nvidia-persistenced 8u CHR 195,0 0t0 504 /dev/nvidia0
nvidia-pe 19360 nvidia-persistenced 9u CHR 195,1 0t0 505 /dev/nvidia1
nvidia-pe 19360 nvidia-persistenced 10u CHR 195,1 0t0 505 /dev/nvidia1
nvidia-pe 19360 nvidia-persistenced 11u CHR 195,1 0t0 505 /dev/nvidia1
nvidia-pe 19360 nvidia-persistenced 12u CHR 195,254 0t0 513 /dev/nvidia-modeset
nvidia-pe 19360 nvidia-persistenced 13u CHR 195,1 0t0 505 /dev/nvidia1