Ubuntu 12.04でlxcを使用していますが、本当に素晴らしいです。ただし、接続したlxc-console後、セッションから切断できません。Ctrl-aqコンソールから切断される場所を読みましたが、機能していないようです。
代わりにlxc-console経由で実行する必要がありscreenますか?
lxc-stop別のシェルから
Ubuntu 12.04でlxcを使用していますが、本当に素晴らしいです。ただし、接続したlxc-console後、セッションから切断できません。Ctrl-aqコンソールから切断される場所を読みましたが、機能していないようです。
代わりにlxc-console経由で実行する必要がありscreenますか?
lxc-stop別のシェルから
回答:
はい、Ctrl-aqデフォルトで動作するはずですが、lxc-console実際にはscreenコンソールの動作を実現するために使用されません。実際、画面を使用しCtrl-aている場合、プレフィックスとしても使用するため、競合が発生する可能性があります。あなたが中にいるのに気付いてscreenいない場合Ctrl-a a q、デフォルトの振る舞いscreenは、Ctrl-a a実際^aにその中で実行されているシェルに送信するために入力する必要があるため、入力する必要があります。-eまたは--escape=PREFIXオプションをに渡すことで、エスケープのプレフィックスを変更できますlxc-console。
また、lxc-startコンテナの起動時にすぐにコンソールモードになった場合、Ctrl-a qエスケープに使用できないバグがあるようです。実際、すべての制御文字がめちゃくちゃになって画面に出力されているようです。期待通りに振る舞うのではなく。回避策の1つは、すぐにコンソールを起動しないように、-dまたは--daemonオプションを付けて実行し、手動で接続することです。
lxc-start -d -n container-name
lxc-console -n container-name
経由で接続しませんscreenか? Ctrl-a dそれから抜け出す必要があります。
UbuntuのLXCページには、より多くの情報を持っています。
Xenial-hostでTrusty LXCを使用しているとき、およびコンテナーlxc-start -F -n CNからログアウトしたときにホストに出入りできない状態でコンテナーを起動した後、同様の問題が発生しました。また、sudo lxc-ls -fホスト内でlxc-stopハングし、-kまたは-Wまたは--no-lockオプションを使用したコマンドがどれも機能しなかったため、最終的には動作したコンテナプロセスを-9'd殺しましたが、その後コンテナを起動するlxc-startか、lxc-attach正しく動作しません、ただしlxc_cgfsngに関するエラーを表示し、init pidなどを見つけられません。
詳細はこちら:https : //github.com/lxc/lxc/issues/1195
何らかのアプリケーションでの作業が完了したら、通常はCTR + Cで終了できます。それでもうまくいかない場合は、常にquitコマンドがあります:CTRL +。
一方、CTRL + Dは「ファイルの終わり」を意味し、通常は一部のプログラムがキーボードを読み取らないように機能します。CTRL + Dで通常のシェルからログアウトできます。