16.04 VirtualBox VM(来自vhd文件)挂在“非阻塞池已初始化”


10

我正在尝试.vhd在VirtualBox VM中启动Canonical的Azure 16.04 文件,它挂在“初始化非阻塞池”处。

它可以在Hyper-V中运行,因此可能只是虚拟盒子(5.0.20)中的错误。


我应该将其发布在serverfault还是超级用户上?
Rhangaun

Answers:


17

这是Canonical发布的图像中的长期错误。

grub配置正在尝试使用串行端口,但是当它不存在时,它将无法正常处理。因此,要么添加一个串行端口,要么更改grub使其不需要。

这里有三个选项可以使其首次启动:

  1. 如果grub菜单可用,则可以编辑引导参数以删除 console=ttyS0
  2. 您还可以在VirtualBox中启用串行端口
  3. 您可以从其他VM或通过回送设备挂载驱动器,然后console=ttyS0从/boot/grub/grub.cfg中删除驱动器

有两种方法可以使其随后启动:

  1. 保留通过VirtualBox连接的串行端口
  2. 覆盖或不包含中的GRUB_CMDLINE_LINUX_DEFAULT值 ,然后运行并验证/boot/grub/grub.cfg是否进行了更改。/etc/default/grub/etc/default/grub.d/*.cfgconsole=ttyS0sudo update-grub

2
在我的情况下,向VirtualBox添加串行端口似乎有所帮助。
卡莱恩

2
向VirtualBox添加一个串行端口为我解决了这个问题
vas

0

我在实际计算机上遇到了这个问题,解决方法是为内核启用“ nomodeset”选项。这样做是因为Ubuntu试图切换到控制台的高分辨率视频模式,并且您的硬件不配合。要解决这个问题

在机器上修复此问题

当Grub2出现时,突出显示Ubuntu的菜单项,然后按'e'

转到加载内核的行,然后按“结束”以至行的末尾添加“ nomodeset”

按F10或Ctrl-X引导它

永久修复

更新grub配置文件nano / etc / init / grub

查找以GRUB_CMDLINE_LINUX_DEFAULT开头的行

编辑该行以包含nomodeset,在我的情况下,此行如下所示:GRUB_CMDLINE_LINUX_DEFAULT =“ nomodeset”

保存/退出nano运行update-grub重新启动


对于云/天蓝色图像,挂起之前我没有显示Grub2菜单。
Rhangaun

您应该已经安装了Grub,但可能不会显示。尝试Shift在启动过程中按住。
tikend '16

当我持有时Shift,我得到:error : terminal 'serial' isn't found
隆加恩

@tikend我在这里有一个类似的错误消息,但是添加nomodeset(我把它放在“ ro”和“ console = tty console = ttyS0”之间)然后按Ctrl-X保存/启动对什么没有任何影响发生。不认为您有任何想法吗?我注意到显示字体在到达“切换到clocksrc tsc”行后不久便发生了变化……
William Turrell

固定!我意识到控制台被两次列出是很奇怪的(我在行尾尝试了nomodeset也没有作用),所以我删除了第二个控制台并启动了它。现在应该可以永久修复它了
William Turrell
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.