16.04 VirtualBox VM (aus vhd-Datei) hängt an "Nicht blockierender Pool wird initialisiert"

10

Ich versuche, die Azure 16.04- .vhdDatei von Canonical in einer VirtualBox-VM zu starten, und sie hängt an "Nicht blockierender Pool wird initialisiert".

Es funktioniert in Hyper-V, daher ist es möglicherweise nur ein Fehler in der virtuellen Box (5.0.20).

Rhangaun
quelle
Soll ich das stattdessen auf Serverfault oder Superuser posten?
Rhangaun

Antworten:

17

Dies ist ein langjähriger Fehler in den von Canonical veröffentlichten Bildern.

Die Grub-Konfiguration versucht, eine serielle Schnittstelle zu verwenden, aber wenn diese nicht vorhanden ist, kann sie dies nicht ordnungsgemäß verarbeiten. Fügen Sie also entweder eine serielle Schnittstelle hinzu oder ändern Sie grub, um dies nicht zu erfordern.

Drei Optionen, damit es beim ersten Mal gestartet wird:

  1. Wenn das Grub-Menü verfügbar ist, können Sie die zu entfernenden Boot-Argumente bearbeiten console=ttyS0
  2. Sie können auch eine serielle Schnittstelle in VirtualBox aktivieren
  3. Sie können das Laufwerk von einer anderen VM oder über ein Loopback-Gerät console=ttyS0bereitstellen und aus /boot/grub/grub.cfg entfernen

Zwei Optionen, um es danach zum Booten zu bringen:

  1. Lassen Sie eine serielle Schnittstelle über VirtualBox angeschlossen
  2. Überschreiben Sie den GRUB_CMDLINE_LINUX_DEFAULTWert in /etc/default/gruboder /etc/default/grub.d/*.cfgnicht console=ttyS0, führen Sie ihn aus sudo update-grubund überprüfen Sie, ob /boot/grub/grub.cfg Ihre Änderungen enthält.
Bob
quelle
2
Das Hinzufügen einer seriellen Schnittstelle zu VirtualBox schien in meinem Fall zu helfen.
Kalyan
2
Hinzufügen von mir eine serielle Schnittstelle zu VirtualBox löste dieses Problem für
vas
0

Ich hatte dieses Problem auf dem tatsächlichen Computer und das Update bestand darin, die Option "nomodeset" für den Kernel zu aktivieren. Dies geschieht, weil Ubuntu versucht, in einen hochauflösenden Videomodus für die Konsole zu wechseln, und Ihre Hardware nicht zusammenarbeitet. Um dies zu beheben

Behebung dieses Problems an der Maschine

Wenn Grub2 angezeigt wird, markieren Sie den Menüpunkt für Ubuntu und drücken Sie 'e'.

Gehen Sie zu der Zeile, in der der Kernel geladen wird, und drücken Sie 'End', um zum Ende der Zeile zu gelangen. Fügen Sie 'nomodeset' hinzu.

Drücken Sie F10 oder Strg-X, um es zu starten

Dies endgültig beheben

Aktualisieren Sie die Grub-Konfigurationsdatei nano / etc / init / grub

Suchen Sie die Zeile, die mit GRUB_CMDLINE_LINUX_DEFAULT beginnt

Bearbeiten Sie die Zeile so, dass sie ein Nomodeset enthält. In meinem Fall sah die Zeile danach folgendermaßen aus: GRUB_CMDLINE_LINUX_DEFAULT = "nomodeset"

Nano speichern / beenden Führen Sie update-grub Reboot aus

tikend
quelle
Mit dem Cloud / Azure-Bild wird kein Grub2-Menü angezeigt, bevor es hängt.
Rhangaun
Sie sollten Grub installiert haben, aber es wird wahrscheinlich nicht angezeigt. Versuchen Sie, Shiftwährend des Startvorgangs zu halten.
Tikend
Wenn ich halte Shift, bekomme ich : error : terminal 'serial' isn't found.
Rhangaun
@tikend Ich habe hier eine ähnliche Fehlermeldung , aber das Hinzufügen nomodeset(ich setze es zwischen "ro" und "console = tty console = ttyS0") und Strg-X zum Speichern / Booten macht keinen Unterschied zu was das passiert. Nehmen Sie nicht an, Sie haben irgendwelche Ideen? Ich stelle fest, dass sich die Schriftart der Anzeige kurz nach Erreichen der Zeile "Switched to Clocksrc TSC" ändert ...
William Turrell
Fest! Ich erkannte, dass es seltsam war, wenn die Konsole zweimal aufgelistet wurde (ich hatte auch Nomodeset am Ende der Zeile ohne Wirkung ausprobiert), also löschte ich die zweite Konsole und sie startete. Sollte es jetzt dauerhaft reparieren können ...
William Turrell