禁用仍在使用的 KVM 内核模块

禁用仍在使用的 KVM 内核模块

为了运行虚拟机,VirtualBox 告诉我禁用 KVM 内核模块。我搜索了一下,发现 KVM 包含在qemu-*软件包中,但我的系统(Debian Wheezy)上没有安装它们。

之后我只是尝试卸载该模块,但这不起作用,因为它正在使用中:

# modprobe -r kvm_intel
FATAL: Module kvm_intel is in use.
# modprobe -r kvm
FATAL: Module kvm is in use.

我不知道什么程序正在使用它,我真的不知道那可能是什么。我也尝试过该-f选项,但得到了相同的结果。

我的问题是:如何删除或禁用 KVM 内核模块?

更新:

这是命令的输出lsmod

# lsmod | grep kvm
kvm_intel             138825  3 
kvm                   404853  1 kvm_intel

答案1

正如您所注意到的,有一个应用程序使用该模块。 KVM模块实际上通过设备文件来呈现其(部分)功能/dev/kvm。所以找出什么应用程序正在使用它 - 例如

$ lsof | grep /dev/kvm

答案2

有时您可以lsmod尝试回溯正在使用该模块的内容。

这是一个例子:

kvm_intel             143597  0 
kvm                   459817  1 kvm_intel

在我的机器上,它说 kvm 由 kvm_intel 使用。另外,kvm 没有被使用。如果是这种情况,您应该能够运行:

sudo modprobe -r kvm_intel 

进而,

sudo modprobe -r kvm

相关内容