it-swarm.com.de

So trennen Sie die Verbindung zur lxc-Konsole

Ich arbeite mit lxc in Ubuntu 12.04 und es ist wirklich großartig. Ich kann jedoch keine Verbindung zu einer lxc-console - Sitzung trennen, nachdem ich eine Verbindung hergestellt habe. Ich habe das irgendwo gelesen Ctrl-aq wird mich von der Konsole trennen, aber es scheint nicht zu funktionieren.

Sollte ich stattdessen lxc-console Über screen ausführen?

41
robbyt

Ja, Ctrl-aq, sollte standardmäßig funktionieren, jedoch nein, lxc-console verwendet screen nicht, um das Konsolenverhalten zu erreichen. Tatsächlich kann es zu Konflikten kommen, wenn Sie den Bildschirm verwenden, da dieser ebenfalls verwendet wird Ctrl-a als Präfix. Wenn Sie sich in screen befinden, es aber nicht bemerken, müssen Sie eingeben Ctrl-a a q da das Standardverhalten von screen ist, dass Sie eingeben müssen Ctrl-a a um tatsächlich ^a an die darin laufende Shell zu senden. Sie können das Präfix für die Escape-Datei ändern, indem Sie die Option -e Oder --escape=PREFIX An lxc-console Übergeben.

Außerdem scheint es einen Fehler in lxc-start Zu geben, sodass Sie ihn nicht verwenden können, wenn er beim Starten des Containers sofort in den Konsolenmodus wechselt Ctrl-a q zu entkommen - in der Tat scheinen alle Steuerzeichen vermasselt zu sein und auf dem Bildschirm zu drucken, anstatt sich so zu verhalten, wie Sie es erwarten. Eine Problemumgehung besteht darin, es mit der Option -d Oder --daemon Auszuführen, damit eine Konsole nicht sofort gestartet wird, und die Verbindung von Hand herzustellen:

lxc-start -d -n container-name
lxc-console -n container-name
56
aculich

Was ich getan habe, um den Container zu stoppen

  1. Öffnen Sie eine neue Sitzung.
  2. Melden Sie sich als root an.
  3. Überprüfen Sie den Containerstatus.
  4. lxc-stop -n <name of the container>

Dadurch wird der Container angehalten.

2
Sreenivas

Wird keine Verbindung über screen hergestellt? Ctrl-a d sollte dich da rausholen.

Die buntu LXC Seite enthält weitere Informationen.

0
El Yobo

Ich hatte ein ähnliches Problem bei der Arbeit mit meinem Trusty LXC in Xenial-Host und konnte nach dem Starten des Containers mit lxc-start -F -n CN Nicht vom Host zurück und zurück, wenn ich vom Container abgemeldet war. Auch der Sudo lxc-ls -f Im Host hing und keiner der lxc-stop - Befehle mit den Optionen -k oder -W oder --no-lock funktionierte, so dass ich schließlich -9 den Container-Prozess abbrach, der hat funktioniert, aber danach startet das Starten des Containers mit lxc-start oder lxc-attach nicht richtig, zeigt aber Fehler über lxc_cgfsng an und findet die Init-PID usw. nicht.

Weitere Informationen finden Sie hier: https://github.com/lxc/lxc/issues/1195

0
OpenITeX

Eine alternative Möglichkeit, sich anzumelden, besteht darin, einfach ssh <ip> Auszuführen, anstatt lxc-console Zu verwenden. Sie können es als Daemon mit lxc-start -d -n <name> Starten und sich dann über die Konsole anmelden, um die IP zum ersten Mal abzurufen.

0
Nishant