web-dev-qa-db-ja.com

16.04 VirtualBox VM(vhdファイルから)が「非ブロッキングプールの初期化」でハングする

CanonicalのAzure 16.04 .vhdファイルをVirtualBox VMで起動しようとしていますが、「非ブロッキングプールが初期化されています」でハングします。

Hyper-Vで動作するため、仮想ボックス(5.0.20)のバグにすぎない可能性があります。

10
Rhangaun

これは、Canonicalがリリースした画像の長年のバグです。

Grub構成はシリアルポートを使用しようとしていますが、シリアルポートがない場合、これを適切に処理できません。そのため、シリアルポートを追加するか、grubを必要としないように変更します。

初めて起動するための3つのオプション:

  1. gRUBメニューが使用可能な場合、ブート引数を編集してconsole=ttyS0を削除できます
  2. virtualBoxでシリアルポートを有効にすることもできます
  3. 別のVMから、またはループバックデバイスを介してドライブをマウントし、console=ttyS0を/boot/grub/grub.cfgから削除できます

その後起動するための2つのオプション:

  1. virtualBox経由で接続されたシリアルポートを残す
  2. GRUB_CMDLINE_LINUX_DEFAULTまたは/etc/default/grub/etc/default/grub.d/*.cfg値をオーバーライドしてconsole=ttyS0を含めないようにしてから、Sudo update-grubを実行し、/ boot/grub/grub.cfgに変更があることを確認します。
15
Bob

実際のマシンでこの問題が発生しましたが、修正はカーネルの「nomodeset」オプションを有効にすることでした。これは、Ubuntuがコンソール用の高解像度ビデオモードに切り替えようとしており、ハードウェアが連携していないためです。これを修正するには

マシンにいる間にこれを修正する

Grub2が表示されたら、Ubuntuのメニュー項目を強調表示し、「e」を押します

カーネルをロードする行に移動し、「End」を押して行の最後に移動します「nomodeset」を追加します

F10またはCtrl-Xを押して起動します

これを永久に修正する

Grub構成ファイルnano/etc/init/grubを更新します

GRUB_CMDLINE_LINUX_DEFAULTで始まる行を見つけます

Nomodesetを含めるように行を編集します。私の場合、行はその後このようになりました:GRUB_CMDLINE_LINUX_DEFAULT = "nomodeset"

Nanoの保存/終了update-grub Rebootを実行します

0
tikend