我已经将 Hardy 虚拟机的磁盘转移到另一个具有不同内核的虚拟机,但磁盘上没有 /lib/modules// 的等效项。如何将新内核的 /lib/modules 添加到映像中,使其启动时不出现错误消息?
是否有 apt-get 命令可以从存储库下载新内核的内核模块?
答案1
内核模块位于内核包中:
motiejus@skveez> dpkg -S /lib/modules/2.6.32-5-amd64/kernel/arch/x86/kvm/kvm-amd.ko
linux-image-2.6.32-5-amd64: /lib/modules/2.6.32-5-amd64/kernel/arch/x86/kvm/kvm-amd.ko
您必须使用 apt-get 安装新服务器中的内核来重新安装模块。
您没有提到目标(新)系统发行版。如果内核是从源代码编译的,则必须从内核树执行 sudo make modules_install。如果它是 debian/ubuntu 并且内核来自存储库,请运行:
apt-get install linux-image-2.6-<arch>-<flavour> --reinstall
您可以通过这种方式获取已安装的内核:
uname -a
dpkg -l 'linux-image-*'