Question Comment se déconnecter de lxc-console


Je travaille avec Lxc dans Ubuntu 12.04, et c'est vraiment génial. Cependant, je ne parviens pas à me déconnecter d’un lxc-console session après que je me suis connecté. Je lis quelque part que Ctrl-aq va me déconnecter de la console mais cela ne semble pas fonctionner.

Devrais-je courir lxc-console via screen au lieu?


39
2017-07-06 18:32


origine


J'ai le même problème. Si vous démarrez un conteneur en oubliant le paramètre "-d", vous ne pouvez pas sortir. Ctrl a q n'a aucun effet. La seule solution que j'ai trouvée est de vous connecter à la console et de faire "sudo poweroff", ce qui vous permet de sortir. - eos
vous pouvez aussi faire un lxc-stop d'une autre coquille - Martin Serrano


Réponses:


Oui, Ctrl-aq, devrait fonctionner par défaut, mais non, lxc-console n'utilise pas réellement screen pour accomplir son comportement de console. En fait, vous pourriez rencontrer un conflit si vous utilisez screen car il utilise également Ctrl-a comme préfixe. Si tu es à l'intérieur screen mais ne vous en rendez pas compte, vous devrez taper Ctrl-a a q depuis le comportement par défaut de screen est-ce que vous devez taper Ctrl-a a envoyer réellement ^a à la coquille en cours d'exécution à l'intérieur de celui-ci. Vous pouvez changer le préfixe pour échapper en passant le -e ou --escape=PREFIX option de lxc-console.

En outre, il semble qu'il y ait un bug dans lxc-start de sorte que s'il passe immédiatement en mode console lorsque vous démarrez le conteneur, vous ne pouvez pas utiliser Ctrl-a q pour s'échapper - en fait, tous les caractères de contrôle semblent être foirés et s'impriment à l'écran au lieu de se comporter comme prévu. Une solution consiste à l'exécuter avec le -d ou --daemon option pour qu’elle ne démarre pas immédiatement une console, et la connecter à la main:

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

53
2017-10-16 08:20



<kbd> Ctrl-a q </ kdb> n'a aucun effet sur une console connectée avec Lxc version 0.9.0 - Jay Taylor
si les développeurs de lxc devaient se demander pourquoi docker a été adopté un milliard de fois plus rapide, ce bogue est l’une des principales raisons. - Florian Heigl
@FlorianHeigl Bien que je sois d'accord avec votre sentiment que ce bug est laid, les vraies raisons à cela sont les attitudes: bugs.debian.org/cgi-bin/bugreport.cgi?bug=768073  access.redhat.com/articles/1365153  access.redhat.com/discussions/2772171 (et de nombreuses autres occasions où RedHat répond à "LX (C | D)?" par "Non, Docker!" (notez que ce sont les meilleurs résultats de Google pour "LXD Debian" et "LXD Redhat queries"). - Bojan Markovic


Ce que j'ai fait pour arrêter le conteneur

  1. Ouvrir une nouvelle session.
  2. Connectez-vous en tant que root.
  3. Vérifiez l'état du conteneur.
  4. lxc-stop -n <name of the container>

Cela arrêtera le conteneur.


2
2017-08-05 13:49





Est-ce qu'il ne se connecte pas via screen? Ctrl-a d devrait vous sortir de là.

le Page Ubuntu LXC a plus d'informations.


0
2017-07-15 06:53



Non, ça ne marche pas. J'utilise screen pour pouvoir me déconnecter de lxc-console. En outre, le lien que vous avez posté ne contient aucune information sur ce problème. - robbyt
"Détacher l'écran: C-a d ou C-a C-d" - help.ubuntu.com/community/LXC#Mini_screen_how-to; Je ne sais pas quoi faire si ça ne marche pas. - El Yobo
@ ElYobo Non, lxc-console n'utilise pas réellement screen, il a juste un comportement similaire et utilise par défaut une clé en conflit avec screenest comme décrit ici. - aculich


Une autre façon de vous connecter est de simplement faire ssh <ip> au lieu d'utiliser lxc-console. Vous pouvez utiliser le démarrer en tant que démon en utilisant lxc-start -d -n <name> puis connectez-vous à l'aide de la console pour obtenir l'IP pour la première fois.


0
2018-05-17 15:09





J'ai eu un problème similaire lorsque je travaillais avec mon Trusty LXC dans Xenial-host et après le démarrage du conteneur avec lxc-start -F -n CN ne pouvait pas sortir et revenir à l'hôte lorsqu'il était déconnecté du conteneur. Également sudo lxc-ls -fdans l'hôte pendu et aucun des lxc-stopLes commandes avec les options -k ou -W ou --no-lock ont ​​fonctionné. J'ai donc finalement tué -9 le processus de conteneur qui fonctionnait, mais qui a ensuite démarré le conteneur avec lxc-start ou lxc-attachne fonctionnent pas correctement, mais affichent des erreurs concernant lxc_cgfsng et ne trouvant pas le pid init, etc.

Voir plus ici: https://github.com/lxc/lxc/issues/1195


0
2017-09-19 02:19





Lorsque vous avez fini de travailler avec une application, vous pouvez généralement y mettre fin avec CTR + C. Si cela ne fait pas l'affaire, il y a toujours la commande quit: CTRL +.

CTRL + D, par contre, signifie "FIN DU FICHIER" et empêche généralement certains programmes de lire le clavier. Vous pouvez vous déconnecter d'un shell normal avec CTRL + D.


-6
2017-10-13 15:30