通常のLinux initを介さずに既存のlxcでコマンドを実行したいと思います。lxc-execute
このコマンドはこの目的のためのようですが、既存のテストlxcでこのコマンドを実行すると、次のエラーが発生します。
sudo lxc-execute -n test -- service apache2 start
次のエラーが発生します。
lxc-execute: Failed to find an lxc-init
lxc-execute: invalid sequence number 1. expected 4
lxc-execute: failed to spawn 'test'
答え1
試してみましたか?lxc-attach
代わりに?文書によると、
lxc-attach - 実行中のコンテナ内でプロセスを開始します。
home
コンテナ内のすべてのフォルダを一覧表示する例
lxc-attach -n myContainer -- ls -lh /home
プロセスが定義されていない場合、コンテナ内に新しいシェルが作成されます。
答え2
lxc-execute
lxc コンテナを作成して実行し、コマンドを実行するように設計されています。したがって、現在設定されて起動されたコマンドの実行には使用できません。
Serge E. Hallyn @引用https://www.mail-archive.com/[Eメール保護]/msg00134.html
既存のプロセスを既存の埋め込まれた名前空間に移動することは決して不可能です。
Ullrich Horlacherのlxcコマンドを試してみることができますが、現在のページに欠陥があります。この資料では、プロセスについて説明します。