Xen 4.3.0 无法启动。/boot/xen/ 中没有文件

Xen 4.3.0 无法启动。/boot/xen/ 中没有文件

有人知道如何在 Ubuntu Precise 上安装 Xen 4.3.0 吗?我从源代码编译,一切似乎都很好,但它无法启动到虚拟机管理程序。'/boot/xen/' 中没有以 *.gz 为扩展名的文件。

使用 Xen 4.2.2 安装效果很好。我按照从 XenProject 下载的源文件中的说明进行操作。也按照他们的说明进行操作 -http://wiki.xenproject.org/wiki/Compiling_Xen_From_Source

什么原因导致此问题?如何解决?

答案1

使用 sudo checkinstall -y 而不是 sudo make install

https://help.ubuntu.com/community/CheckInstall

除非您覆盖了默认安装位置,否则 xen 内核将安装在 /boot 中

答案2

Xen 现在位于主线内核中,因此您无需寻找单独的 xen 内核。如果您使用的是 grub,则以下命令将启动到 xen 4.3+,假设您刚刚执行了 make install 和 /sbin/ldconfig(我的所有命令都假设您是 root。如果需要,请添加 sudo):

dpkg-divert --divert /etc/grub.d/08_linux_xen --rename /etc/grub.d/20_linux_xen
update-grub

然后你就可以重新启动了!但你可能还没有完成……

另外,从源代码编译时,您无法在 ubuntu 中设置启动脚本,因此您必须自行设置。

我不使用 xm,因此我立即禁用它:

update-rc.d xend remove
update-rc.d -f xend remove

然后,我将所有的 xen 守护进程添加到 rc 脚本中。我使用级别 99,因为我有一堆东西,比如 zfs、nfs 等,我喜欢在我的 domU 启动/恢复之前启动它们。如果您愿意,可以省略 99。

update-rc.d xencommons defaults 99
update-rc.d xendomains defaults 99
update-rc.d xen-watchdog defaults 99

然后我启动服务:

/etc/init.d/xencommons start
/etc/init.d/xendomains start
/etc/init.d/xen-watchdog start

并列出域名来查看我做得有多好:

xl list

所有这些内容实际上都应该位于您在 ubuntu/debian 特定的后编译任务下链接的从源代码编译页面上。无论如何,我希望这会有所帮助!

额外的系统管理员提示!!

如果您想要弄清楚为什么 xen 命令不起作用,第一步始终是检查哪些服务正在运行。对于 xen,一个好方法是使用 ps:

ps -ef |grep xen

这将列出名称中带有 xen 的所有进程,这些进程对于本问题的范围而言很重要。如果您在列表中看到 xend 或 Xend(但不是 xendomains,因为您需要它),则您正在使用 xm 工具堆栈,它与几乎所有东西都相冲突。再次祝您好运!

相关内容