Der Fehler, den Sie zwei Dinge bedeuten beschreiben könnte:
Es ist eine wohlbekannte Rennen in xenstore
Die psuedo TTY Dokumentation benötigt, um eine Domäne der Konsole zu befestigen in xenstore gespeichert in mehrere Orte. Der Xen-Konsolenclient richtet eine Inotify-Stilüberwachung für diesen Wert ein, damit er sich erneut mit der Konsole verbinden kann, wenn sich der Backing-Dateideskriptor ändert. Es dauert jedoch einige Sekunden, bis diese Informationen in Xenstore von dem Zeitpunkt an, an dem die Domäne erstellt wird, ausgefüllt werden.
Wenn Sie die Ausgabe von xm info veröffentlichen, wäre es leicht zu sehen, ob Sie mit einer bekannten Rasse zu tun haben.
Der Träger psuedo Terminal kann nicht
Häufige Gründe dafür geschaffen werden, wäre/dev/pts nicht montiert ist. Wenn Sie xenstore-ls /local/domain/{domain_id}
ausführen, nachdem Sie die Domäne ohne die Option -c
gestartet haben, wird der Inhalt des Geschäfts für diese Domäne angezeigt. Suchen Sie nach der Zeile (in der Nähe des unteren Rands), die besagt:
tty="/dev/pts/{pty}"
Überprüfen Sie, ob die Pty in Wirklichkeit existiert.
Der xen-Konsolen-Daemon verwendet zwei tatsächliche Dateideskriptoren, um dies zu ermöglichen. Der erste ist ein Pseudodatei-Deskriptor (erhalten über xs_fileno()) für diese spezifische Information im Knoten, so dass er abfragen kann() um zu sehen, ob sich diese Information ändert. Die zweite ist eine echte FD, die von open()
(ja, O_NONBLOCK wurde übergeben), die tatsächlich liest/schreibt in die psuedo tty.
Es sieht so aus, als würde es nicht einmal die Pseudo FD von XenStore finden, was bedeutet, dass die Backing Pty wahrscheinlich existenziell herausgefordert ist.
Sie müssten nützlichere Informationen (alle Protokollnachrichten, den tatsächlichen Inhalt von startos.xm usw.) posten, um eine nützliche Antwort zu erhalten. –