From: KATOH Yasufumi Date: Tue, 20 Jun 2017 08:36:30 +0000 (+0900) Subject: doc: Untabify Japanese lxc.container.conf(5) X-Git-Tag: lxc-2.1.0~93^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F1631%2Fhead;p=thirdparty%2Flxc.git doc: Untabify Japanese lxc.container.conf(5) Tab and white space is mixed in Japanese lxc.container.conf(5), so unify into the white space. Signed-off-by: KATOH Yasufumi --- diff --git a/doc/ja/lxc.container.conf.sgml.in b/doc/ja/lxc.container.conf.sgml.in index 658f82b85..8337425be 100644 --- a/doc/ja/lxc.container.conf.sgml.in +++ b/doc/ja/lxc.container.conf.sgml.in @@ -150,21 +150,21 @@ by KATOH Yasufumi - - - - - - + + + + + + include させたいファイルを指定します。 include するファイルは、lxc 設定ファイルのフォーマットとして有効でなければいけません。 - - - + + + @@ -183,18 +183,18 @@ by KATOH Yasufumi - - - - - - + + + + + + コンテナに設定するアーキテクチャを指定します。 - - + + コンテナのホスト名を指定します。 - - - + + + <!-- Halt signal -->クリーンなシャットダウン時のシグナル - + --> コンテナをクリーンにシャットダウンするためにコンテナの init プロセスに送るシグナル名か番号を指定できます。init システムによって、クリーンなシャットダウンを行うために使うシグナルは異なります。このオプションではシグナルとして kill(1) で使う形式を指定できます。 例えば SIGKILL, SIGRTMIN+14, SIGRTMAX-10 のような形式、もしくは数字を指定します。デフォルトのシグナルは SIGPWR です。 @@ -366,17 +366,17 @@ by KATOH Yasufumi <!-- Init ID -->Init が使う ID - - init と後続のコマンドが使う UID/GID を設定します。システムコンテナを起動するのに非 root な UID を使うと、特権がないために動作しないでしょう。UID/GID の指定は、通常はアプリケーションコンテナの動作の際に役に立ちます。 + --> + init と後続のコマンドが使う UID/GID を設定します。システムコンテナを起動するのに非 root な UID を使うと、特権がないために動作しないでしょう。UID/GID の指定は、通常はアプリケーションコンテナの動作の際に役に立ちます。 - デフォルト値: UID(0)、GID(0) + デフォルト値: UID(0)、GID(0) @@ -385,9 +385,9 @@ by KATOH Yasufumi - + init が使う UID です。 @@ -438,13 +438,13 @@ by KATOH Yasufumi <!-- Network -->ネットワーク ネットワークセクションは、コンテナ内でどのようにネットワークを仮想化するかを定義します。 ネットワークの仮想化はレイヤー 2 で作動します。 @@ -466,13 +466,13 @@ by KATOH Yasufumi - - + + - - + + - - コンテナがどの種類のネットワーク仮想化を使うかを指定します。すべての キーに、追加のインデックス を使うと、複数のネットワークを指定できます。例えば、 と は、同じタイプの異なるネットワークを 2 つ指定します。 - 同じインデックスを指定したキーはすべて同じネットワークの指定になります。例えば、 は と同じネットワークの設定になります。 - 現時点では、以下のネットワーク仮想化のタイプが使えます: + --> + コンテナがどの種類のネットワーク仮想化を使うかを指定します。すべての キーに、追加のインデックス を使うと、複数のネットワークを指定できます。例えば、 と は、同じタイプの異なるネットワークを 2 つ指定します。 + 同じインデックスを指定したキーはすべて同じネットワークの指定になります。例えば、 は と同じネットワークの設定になります。 + 現時点では、以下のネットワーク仮想化のタイプが使えます: - + ホストのネットワーク名前空間を共有します。 これにより、ホストのネットワークデバイスをコンテナ内で使うことが可能になります。 もしコンテナもホストも init として upstart を使っている場合、(例えば) コンテナ内で 'halt' を実行すると、ホストがシャットダウンしてしまうことにもなります。 - + - + - ループバックインターフェースだけを作成します。 - + ループバックインターフェースだけを作成します。 + vlan インターフェースは で指定されたインターフェースとリンクし、コンテナに割り当てられます。 vlan の指定は オプションで指定します。 - + - + で指定された、すでに存在しているインターフェースがコンテナに割り当てられます。 - - - + + + - - - - - - + + + + + + ネットワークに対して行うアクションを指定します。 - + - + インターフェースを起動させます。 - - - + + + - - - - - - + + + + + + 実際のネットワークトラフィックに使うインターフェースを指定します。 - - - + + + - - - - - - + + + + + + インターフェースに対する MTU を指定します。 - - - + + + - - - - - - + + + + + + インターフェース名は動的に割り当てられます。しかし、もしコンテナが使用する設定ファイルが一般的な名前を使用するために、他の特定の名前が必要であれば (例えば eth0 など)、コンテナ内のインターフェースは、このオプションで指定した名前にリネームされます。 - - - + + + - - - - - - + + + + + + 仮想インターフェースの MAC アドレスは、デフォルトでは動的に割り当てられます。しかし、MAC アドレスの衝突や、リンクローカルIPv6 アドレスを常に同じにした場合などは、このオプションが必要です。アドレス中の "x" という文字は、ランダムな値に置き換えられます。これによりテンプレートに hwaddr を設定することが可能になります。 - - - + + + - - - - - - + + + + + + 仮想インターフェースに割り当てる ipv4 アドレスを指定します。複数行により複数の ipv4 アドレスを指定します。このアドレスは x.y.z.t/m というフォーマットで指定します。例) 192.168.1.123/24 - - - - - - - - - - - コンテナでゲートウェイとして使う IPv4 アドレスを指定します。アドレスは x.y.z.t というフォーマットです。例) 192.168.1.123 という特別な値を指定できます。これは ( で指定した) ブリッジインターフェースの最初のアドレスを使用し、それをゲートウェイに使うという意味になります。 はネットワークタイプとして と を指定している時だけ有効となります。 - - - + + + - - - - - - + + + + + + 仮想インターフェースに割り当てる ipv6 アドレスを指定します。複数行により複数の ipv6 アドレスを指定します。このアドレスは x::y/m というフォーマットで指定します。例) 2003:db8:1:0:214:1234:fe0b:3596/64 - - - + + + - - - - - - + + + + + + コンテナでゲートウェイとして使う IPv6 アドレスを指定します。アドレスは x::y というフォーマットです。例) 2003:db8:1:0::1 という特別な値を記述する事も可能です。これは ( で指定した) ブリッジインターフェースの最初のアドレスを使用し、それをゲートウェイに使うという意味になります。 はネットワークタイプとして と を指定している時だけ有効となります。 - - - - - - - - - - - ホスト側から使われる、ネットワークの作成と設定が済んだ後に実行するスクリプトを指定します。以下の引数がスクリプトに渡されます: コンテナ名、設定セクション名(net)。 - その後の引数はスクリプトのフックで使われる設定セクションに依存します。以下がネットワークシステムによって使われます: 実行コンテキスト (up)、ネットワークのタイプ (empty/veth/macvlan/phys) + その後の引数はスクリプトのフックで使われる設定セクションに依存します。以下がネットワークシステムによって使われます: 実行コンテキスト (up)、ネットワークのタイプ (empty/veth/macvlan/phys) ネットワークのタイプによっては、更に別の引数が渡されるかもしれません: veth/macvlan/phys の場合 (ホスト側の) デバイス名 - + スクリプトからの標準出力は debug レベルでロギングされます。標準エラー出力はロギングされません。しかし、フックの標準エラー出力を標準出力にリダイレクトすることにより保存することは可能です。 - - - - - - - - - - - ホスト側から使われる、ネットワークを破壊する前に実行するスクリプトを指定します。以下の引数がスクリプトに渡されます: コンテナ名、設定セクション名(net)。 その後の引数はスクリプトのフックで使われる設定セクションに依存します。以下がネットワークシステムによって使われます: 実行コンテキスト (up)、ネットワークのタイプ (empty/veth/macvlan/phys)。 ネットワークのタイプによっては、更に別の引数が渡されるかもしれません: veth/macvlan/phys。そして最後に (ホスト側の) デバイス名が渡されます。 - + スクリプトからの標準出力は debug レベルでロギングされます。標準エラー出力はロギングされません。しかし、フックの標準エラー出力を標準出力にリダイレクトすることにより保存することは可能です。 - - - + + + @@ -855,29 +855,29 @@ by KATOH Yasufumi <!-- New pseudo tty instance (devpts) -->新しい擬似端末のインスタンス (devpts) さらに厳しい隔離のために、コンテナは自身のプライベートな pseudo tty (擬似端末) を持つことが可能です。 - - - - - - - もし設定された場合、コンテナは新しい pseudo tty インスタンスを持ち、それを自身のプライベートとします。 この値は pts インスタンスに許可される pseudo tty の最大数を指定します (この制限はまだ実装されていません)。 - - - + + + @@ -885,32 +885,32 @@ by KATOH Yasufumi <!-- Container system console -->コンテナのシステムコンソール コンテナでルートファイルシステムを持つように設定されており、inittab ファイルでコンソールの使用が設定されている場合、このコンソールの出力がどこになされるのかを指定したいと思うでしょう。 - - - - - - + + + + + + コンソール出力を書き込むファイルのパスを指定します。 - - - - - - - - + + + + + + + + tty を通したコンソール このオプションはコンテナが root ファイルシステムを持つように設定されており、inittab ファイルで tty 上に getty の起動が設定されている場合に役に立ちます。 このオプションはコンテナで利用できる tty の数を指定します。 @@ -950,20 +950,20 @@ by KATOH Yasufumi さもなければ、超過した分の getty セッションはコンソールか /var/log/messages にうっとうしいメッセージを生死を表示しながら、永久に生死を繰り返すでしょう。 - - - - - - + + + + + + コンテナに作成出来る tty の数を指定します。 - - - + + + @@ -972,15 +972,15 @@ by KATOH Yasufumi LXC のコンソールはホストによって作られ、コンテナ内で要求されたデバイスに bind マウントされた Unix98 PTY 経由で提供されます。 デフォルトでは /dev/console と /dev/ttyN に bind マウントされます。 @@ -991,11 +991,11 @@ by KATOH Yasufumi シンボリックリンクを消去したり置き換えたりすることは可能ですから、パッケージのアップグレードは成功します。 - - - - - + + + + + /dev ディレクトリ コンテナの起動時に LXC が /dev をマウントして最小限の /dev を作成するのを止めるには、この値を 0 に設定してください。 - - - + + + @@ -1081,92 +1081,92 @@ by KATOH Yasufumi <!-- Mount points -->マウントポイント マウントポイントセクションは、マウントするための区別された場所を指定します。 これらのマウントポイントは、コンテナだけに見え、コンテナ外で実行されるプロセスから見えることはありません。 例えば、/etc や /var や /home をマウントするときに役に立つでしょう。 - - 注意: 通常 LXC は、マウント対象と相対パス指定のバインドマウントを、適切にコンテナルート以下に閉じ込めます。 - これは、ホストのディレクトリやファイルに対して重ね合わせを行うようなマウントによる攻撃を防ぎます。(絶対パス指定のマウントソース中の各パスがシンボリックリンクである場合は無視されます。) - しかし、もしコンテナの設定が最初に、/home/joe のようなコンテナユーザのコントロール配下にあるディレクトリを、コンテナ中のある path にマウントし、その後 path 以下でマウントが行われるような場合、コンテナユーザがタイミングを見計らって自身のホームディレクトリ以下でシンボリックリンクを操作するような TOCTTOU 攻撃が成立する可能性があります。 + --> + 注意: 通常 LXC は、マウント対象と相対パス指定のバインドマウントを、適切にコンテナルート以下に閉じ込めます。 + これは、ホストのディレクトリやファイルに対して重ね合わせを行うようなマウントによる攻撃を防ぎます。(絶対パス指定のマウントソース中の各パスがシンボリックリンクである場合は無視されます。) + しかし、もしコンテナの設定が最初に、/home/joe のようなコンテナユーザのコントロール配下にあるディレクトリを、コンテナ中のある path にマウントし、その後 path 以下でマウントが行われるような場合、コンテナユーザがタイミングを見計らって自身のホームディレクトリ以下でシンボリックリンクを操作するような TOCTTOU 攻撃が成立する可能性があります。 - - - - - - - マウント情報の書かれた fstab フォーマットで書かれたファイルの場所を指定します。 マウントする場所は相対バスで書くことができます。そして、ほとんどの場合にコンテナの root からの相対パスとなるはずです。例えば、以下のように書きます。 - + proc proc proc nodev,noexec,nosuid 0 0 - + この例は、root ファイルシステムがどこにあっても、コンテナの /proc 以下に proc ファイルシステムをマウントします。これは、ブロックデバイスがバックエンドのファイルシステムだけでなく、コンテナのクローンにも柔軟に対応できます。 - - + + ファイルシステムがイメージファイルやブロックデバイスからマウントされている場合、3 つ目のフィールド (fs_vfstype) は - mount + mount 8 のように auto を指定することはできず、明確に指定しなければいけません。 - - - + + + - - - - - - + + + + + + fstab フォーマットの一行と同じフォーマットのマウントポイントの指定をします。 @@ -1179,274 +1179,274 @@ by KATOH Yasufumi fstab フォーマットに加えて、LXC ではマウントに対して独自の 2 つのオプションが使えます。 は、マウントが失敗しても失敗を返さずに無視します。 と は、マウントポイントをマウントする際にディレクトリもしくはファイルを作成します。 - - - + + + - - - - - - + + + + + + 標準のカーネルファイルシステムで自動的にマウントするものを指定します。 これは劇的に設定を容易にする可能性があります。 - - - + + + (or ): /proc を読み書き可能でマウントします。 ただし、/proc/sys と /proc/sysrq-trigger は、セキュリティとコンテナの隔離の目的でリードオンリーで再マウントされます。 - - + + - : + : /proc を読み書き可能でマウントします。 - - - - - (or ): - /sys/devices/virtual/net のみ書き込み可能で、その他の /sys はリードオンリーでマウントします。 - + --> + + (or ): + /sys/devices/virtual/net のみ書き込み可能で、その他の /sys はリードオンリーでマウントします。 + - + : /sys を、セキュリティとコンテナの隔離の目的でリードオンリーでマウントします。 - - + + - : + : /sys を読み書き可能でマウントします。 - - + + - : + : /sys/fs/cgroup を tmpfs でマウントし、そのコンテナの追加が行われた全ての階層構造に対するディレクトリを作製し、その cgroup の名前でその中にサブディレクトリを作製し、そのコンテナ自身の cgroup をそのディレクトリにバインドマウントします。 コンテナは自身の cgroup ディレクトリに書き込みが可能ですが、親ディレクトリはリードオンリーで再マウントされているため書き込めません。 - - + + - : + : と同様にマウントされますが、全てリードオンリーでマウントされます。 - - + + - : + : と同様にマウントされますが、全て読み書き可能でマウントされます。 コンテナ自身の cgroup に至るまでのパスも書き込み可能になることに注意が必要ですが、cgroup ファイルシステムにはならず、 /sys/fs/cgroup の tmpfs の一部分になるでしょう。 - - - + + + - (マウントオプションなしの場合): + (マウントオプションなしの場合): コンテナが CAP_SYS_ADMIN ケーパビリティを保持している場合、 となります。保持していない場合、 となります。 - - - + + + - : + : /sys/fs/cgroup を tmpfs でマウントし、そのコンテナの追加が行われた全ての階層構造に対するディレクトリを作製し、ホストからコンテナまでの階層構造を全てバインドマウントし、コンテナ自身の cgroup を除いてリードオンリーにします。 と比べると、コンテナ自身の cgroup に至るまでの全てのパスが tmpfs の下層のシンプルなディレクトリとなり、コンテナ自身の cgroup の外ではリードオンリーになりますが、/sys/fs/cgroup/$hierarchy はホストの全ての cgroup 階層構造を含みます。 これにより、コンテナにはかなりの情報が漏洩します。 - - + + - : + : と同様にマウントされますが、全てリードオンリーでマウントされます。 - - + + - : - と同様にマウントされますが、全て読み書き可能でマウントされます。 + : + と同様にマウントされますが、全て読み書き可能でマウントされます。 この場合、コンテナは自身の cgroup から脱出する可能性があることに注意してください (コンテナが CAP_SYS_ADMIN を持ち、自身で cgroup ファイルシステムをマウント可能なら、いずれにせよそのようにするかもしれないことにも注意してください)。 - - - + + + - (マウントオプションなしの場合): + (マウントオプションなしの場合): コンテナが CAP_SYS_ADMIN ケーパビリティを保持している場合、 となります。保持していない場合、 となります。 - - - - - - cgroup 名前空間が有効の場合、 の自動マウントの指定はどれも無視されます。これは、コンテナが自身でファイルシステムをマウントするため、自動マウントがコンテナの init を混乱させる可能性があるためです。 - - - + cgroup 名前空間が有効の場合、 の自動マウントの指定はどれも無視されます。これは、コンテナが自身でファイルシステムをマウントするため、自動マウントがコンテナの init を混乱させる可能性があるためです。 + + + cgroup ファイルシステムの自動マウントが有効の場合、/sys/fs/cgroup 以下の tmpfs は常に読み書き可能でマウントされることに注意が必要です (しかし と の場合は、個々の階層の /sys/fs/cgroup/$hierarchy は読み込み専用となるでしょう)。これは Ubuntu の - mountall + mountall 8 コマンドの特異な動きに対処するためのものです。特異な動きとは、/sys/fs/cgroup が読み込み専用でマウントされた状態で、コンテナが CAP_SYS_ADMIN を持たない場合、/sys/fs/cgroup を読み書き可能で再マウントしようとしてできないため、コンテナのブート時にユーザからの入力を待ってしまうというものです。 - - + + 例: - - - lxc.mount.auto = proc sys cgroup - lxc.mount.auto = proc:rw sys:rw cgroup-full:rw - - - + + + lxc.mount.auto = proc sys cgroup + lxc.mount.auto = proc:rw sys:rw cgroup-full:rw + + + @@ -1455,29 +1455,29 @@ by KATOH Yasufumi <!-- Root file system -->ルートファイルシステム コンテナのルートファイルシステムは、ホストのルートファイルシステムと異なるようにすることも可能です。 - - - - - - - コンテナのルートファイルシステムを指定します。 この値はイメージファイル、ディレクトリ、ブロックデバイスのどれかを取ることができます。 もし指定されない場合、コンテナはホストとルートファイルシステムを共有します。 - - + + root ファイルシステムの変更の前に、 を再帰的にどこにバインドするのかを指定します。これは - - pivot_root - 8 - + + pivot_root + 8 + システムコールが確実に成功する事を保証します。 どんなディレクトリでも良く、デフォルトでも通常は動くはずです。 - - - + + + - - - - - - + + + + + + rootfs をマウントするときに追加したいマウントオプション。 - - - + + + @@ -1551,14 +1551,14 @@ by KATOH Yasufumi - - 使用するバックエンドのタイプを、例えば 'dir' や 'zfs' のように指定します。 - コンテナ起動時に LXC が推測できますが、時間がかかります。これを指定すると、余分な処理を避けられます。 + 'zfs'. While this can be guessed by lxc at container startup, + doing so takes time. Specifying it here avoids extra + processing. + --> + 使用するバックエンドのタイプを、例えば 'dir' や 'zfs' のように指定します。 + コンテナ起動時に LXC が推測できますが、時間がかかります。これを指定すると、余分な処理を避けられます。 @@ -1570,40 +1570,40 @@ by KATOH Yasufumi Control group CONTROL GROUP セクションは、(lxc とは) 別のサブシステムの設定を含みます。 lxc は、このサブシステム名の正しさはチェックしません。 実行時のエラーを検出するのに不便ですが、別の将来のサブシステムをサポート出来るという有利な点もあります。 - - - - - - - 設定する control group の値を指定します。 サブシステム名は、control group のそのままの名前です。 許される名前や値の書式は LXC が指示することはなく、コンテナが実行された時に実行されている Linux カーネルの機能に依存します。 例えば - - - + + + @@ -1611,29 +1611,29 @@ by KATOH Yasufumi <!-- Capabilities -->ケーパビリティ コンテナが root 権限で実行されていても、コンテナ内ではケーパビリティ (capabilities) を削除する事は可能です。 - - - - - - - @@ -1642,44 +1642,44 @@ by KATOH Yasufumi 指定は、"CAP_" というプレフィックスなしで、小文字でケーパビリティを指定します。 例えば、CAP_SYS_MODULE というケーパビリティは sys_module と指定する必要があります。 詳しくは以下を参照してください。 - - capabilities - 7 - - この設定を、値を指定しない状態で使った場合、それ以前に指定された削除対象のケーパビリティの指定をすべてクリアします (lxc.cap.drop に何も指定しない状態になります)。 - - - - - - - - - - コンテナ内で維持するケーパビリティを指定します。指定した以外の全てのケーパビリティはドロップされます。 特別な値 "none" が指定されている時点で、lxc はこの時点で保持することになっている全てのケーパビリティをクリアします。"none" を単独で使用するとすべてのケーパビリティを削除できます。 - - - + + + リソース制限 <!-- Resource limits --> - - コンテナに対するソフトもしくはハードリミットを変更できます。非特権コンテナでは、制限を下げることしかできません。明示的に指定されていないリソースは継承されます。 + --> + コンテナに対するソフトもしくはハードリミットを変更できます。非特権コンテナでは、制限を下げることしかできません。明示的に指定されていないリソースは継承されます。 @@ -1720,71 +1720,71 @@ by KATOH Yasufumi <!-- Apparmor profile -->Apparmor プロファイル lxc が apparmor サポートでコンパイルされ、インストールされている場合で、ホストで apparmor が有効な場合、コンテナが従って動くべき apparmor プロファイルは、コンテナの設定で指定することが可能です。 デフォルトは、ホストのカーネルで cgroup 名前空間が使える場合は lxc-container-default-cgnsです。使えない場合は lxc-container-default です。 - - - - - - + + + + + + コンテナが従うべき apparmor プロファイルを指定します。 コンテナが apparmor による制限を受けないように設定するには、以下のように設定します。 - - lxc.aa_profile = unconfined + + lxc.aa_profile = unconfined - - もし apparmor プロファイルが変更されないままでなくてはならない場合 (ネストしたコンテナである場合や、すでに confined されている場合) は以下のように設定します。 + are nesting containers and are already confined), then use + --> + もし apparmor プロファイルが変更されないままでなくてはならない場合 (ネストしたコンテナである場合や、すでに confined されている場合) は以下のように設定します。 lxc.aa_profile = unchanged - - - - - - - - - apparmor プロファイルはパス名ベースですので、多数のファイルの制限を行う際、執念深い攻撃者に対して効果的であるためにはマウントの制限が必要です。 しかし、これらのマウントの制限は upstream のカーネルではまだ実装されていません。マウントの制限なしでも、apparmor プロファイルによって予想外のダメージに対する保護が可能です。 - - + + このフラグが 0 の場合 (デフォルト)、カーネルが apparmor のマウント機能をサポートしていない場合にコンテナが起動しません。これはカーネルを更新した後に機能が退行したことが検出できるようにするためです。 不完全な apparmor の保護の下でコンテナを起動するためには、このフラグを 1 に設定してください。 - - - + + + @@ -1792,34 +1792,34 @@ by KATOH Yasufumi <!-- SELinux context -->SELinux コンテキスト lxc が SELinux サポートでコンパイルされ、インストールされている場合で、ホストで SELinux が有効な場合、コンテナが従って動くべき SELinux コンテキストは、コンテナの設定で指定することが可能です。 デフォルトは unconfined_t であり、これは lxc がコンテキストを変えないという意味になります。 ポリシーの例と追加の情報は @DATADIR@/lxc/selinux/lxc.te ファイルを参照してください。 - - - - - - + + + + + + コンテナが従うべき SELinux コンテキストを指定するか、unconfined_t を指定します。例えば以下のように設定します。 - - lxc.se_context = system_u:system_r:lxc_t:s0:c22 - - + + lxc.se_context = system_u:system_r:lxc_t:s0:c22 + + @@ -1828,10 +1828,10 @@ by KATOH Yasufumi コンテナは、起動時に seccomp プロファイルをロードすることで、利用可能なシステムコールを減らして起動することが可能です。 seccomp の設定ファイルは、1 行目がバージョン番号、2 行目がポリシーのタイプで始まる必要があり、その後に設定を書きます。 @@ -1839,10 +1839,10 @@ by KATOH Yasufumi 現時点では、バージョン番号は 1 と 2 をサポートしています。バージョン 1 では、ポリシーはシンプルなホワイトリストですので、2 行目は "whitelist" でなければなりません。 そして残りの行には 1 行に 1 つずつ、システムコール番号を書きます。各行のシステムコール番号がホワイトリスト化され、リストにない番号は、そのコンテナではブラックリストに入ります。 @@ -1872,20 +1872,20 @@ by KATOH Yasufumi - - - - - - + + + + + + コンテナがスタートする前にロードする seccomp の設定を含むファイルを指定します。 - - - + + + @@ -1914,11 +1914,11 @@ by KATOH Yasufumi - - コンテナに対して PR_SET_NO_NEW_PRIVS ビットを設定するかどうかを指定します。1 に設定すると有効になります。 + --> + コンテナに対して PR_SET_NO_NEW_PRIVS ビットを設定するかどうかを指定します。1 に設定すると有効になります。 @@ -1930,13 +1930,13 @@ by KATOH Yasufumi コンテナは、ユーザとグループの id のマッピングを持った専用のユーザ名前空間で起動することが可能です。 たとえば、コンテナ内のユーザ id 0 を、ホストのユーザ id 200000 にマッピングすることが可能です。 @@ -1945,28 +1945,28 @@ by KATOH Yasufumi 例えば、コンテナ内のユーザとグループの id 0 から 20,000 を 200,000 から 220,000 にマッピングします。 - - - - - - - 4 つの値を記述する必要があります。 最初の文字は 'u' か 'g' のどちらかで、ユーザかグループの ID のどちらをマッピングするかを指定します。 次はコンテナのユーザ名前空間内に現れる最初のユーザ ID です。 その次は、そのユーザ ID のホスト上での値です。 最後は、ID のマッピングをいくつ連続して行うかの数を指定します。 - - - + + + @@ -1975,49 +1975,49 @@ by KATOH Yasufumi コンテナのフックは、コンテナの存続期間の色々な場面で実行することのできるプログラムやスクリプトです。 コンテナのフックが実行されるとき、情報がコマンドライン引数と環境変数の両方を通して渡されます。引数は: - - コンテナ名 - セクション (常に 'lxc') - フックのタイプ ('clone' や 'pre-mount' など) - 追加の引数。clone フックの場合、lxc-clone に渡される追加の引数は、フックへの引数として追加されます。stop フックの場合は、コンテナの名前空間のそれぞれに対するファイルディスクリプタへのパスが、名前空間名とともに渡されます。 - + + コンテナ名 + セクション (常に 'lxc') + フックのタイプ ('clone' や 'pre-mount' など) + 追加の引数。clone フックの場合、lxc-clone に渡される追加の引数は、フックへの引数として追加されます。stop フックの場合は、コンテナの名前空間のそれぞれに対するファイルディスクリプタへのパスが、名前空間名とともに渡されます。 + 以下の環境変数がセットされます。 - - LXC_NAME: コンテナ名 - LXC_ROOTFS_MOUNT: マウントされた root ファイルシステムへのパス - LXC_CONFIG_FILE: コンテナの設定ファイルのパス - LXC_SRC_NAME: clone フックの場合、元のコンテナの名前 - LXC_ROOTFS_PATH: コンテナの lxc.rootfs エントリ。これはマウントされた rootfs が存在する場所にはならないでしょう。それには LXC_ROOTFS_MOUNT を使用してください。 + + LXC_NAME: コンテナ名 + LXC_ROOTFS_MOUNT: マウントされた root ファイルシステムへのパス + LXC_CONFIG_FILE: コンテナの設定ファイルのパス + LXC_SRC_NAME: clone フックの場合、元のコンテナの名前 + LXC_ROOTFS_PATH: コンテナの lxc.rootfs エントリ。これはマウントされた rootfs が存在する場所にはならないでしょう。それには LXC_ROOTFS_MOUNT を使用してください。 @@ -2031,103 +2031,103 @@ by KATOH Yasufumi しかし、フックの標準エラー出力を標準出力にリダイレクトすることにより保存することは可能です。 - - - - - - + + + + + + コンテナの tty、コンソールの作成、マウントが実行される前に、ホストの名前空間内で実行するフック。 - - - + + + - - - - - - - コンテナのファイルシステムの名前空間で実行されますが、rootfs が設定される前に実行するフック。 これにより rootfs の操作が可能になります。 例えば、暗号化されたファイルシステムのマウントなどです。 このフック内でなされるマウントはホストには影響しません (mounts propagation を除いて)。 なので、それらはコンテナがシャットダウンする時に自動的にクリーンアップされます。 - - - + + + - - - - - - + + + + + + マウントが完了した後ですが、pivot_root の前にコンテナの名前空間で実行されるフック。 - - - + + + - - - - - - - == 1 が設定されている場合で、マウントが完了し、マウント時のフックも実行された後ですが、pivot_root の前にコンテナの名前空間で実行するフック。 このフックの目的は、systemd ベースのコンテナ向けの autodev オプションが設定されている時に、コンテナの /dev ディレクトリを設定するのを支援することです。コンテナの /dev ディレクトリは、このフックが実行される時有効な ${} 環境変数からの相対パスとなります。 - - - + + + - - - - - - + + + + + + コンテナの init が実行される直前にコンテナの名前空間で実行されるフック。 コンテナ内で利用可能なプログラムである必要があります。 - - - + + + @@ -2136,7 +2136,7 @@ by KATOH Yasufumi - - コンテナのシャットダウン後、コンテナの名前空間への参照とともに、ホストの名前空間で実行されるフックです。 - それぞれの名前空間に対応する追加の引数がフックに渡されます。その引数にはコロンで区切られた名前空間のタイプ名とファイル名が含まれており、ファイル名は名前空間に対するファイルディスクリプタを取得するのに使えます。 - タイプ名は /proc/PID/ns ディレクトリ内のファイル名です。 - 例えば、マウント名前空間に対応する引数は通常は mnt:/proc/PID/fd/12 のようになります。 + --> + コンテナのシャットダウン後、コンテナの名前空間への参照とともに、ホストの名前空間で実行されるフックです。 + それぞれの名前空間に対応する追加の引数がフックに渡されます。その引数にはコロンで区切られた名前空間のタイプ名とファイル名が含まれており、ファイル名は名前空間に対するファイルディスクリプタを取得するのに使えます。 + タイプ名は /proc/PID/ns ディレクトリ内のファイル名です。 + 例えば、マウント名前空間に対応する引数は通常は mnt:/proc/PID/fd/12 のようになります。 - - - - - - + + + + + + コンテナがシャットダウンされた後にホストの名前空間で実行するフック。 - - - + + + - - - - - - + + + + + + コンテナが新しいコンテナにクローンされる際に実行されるフック。詳しくは lxc-clone 1 を参照してください。 - - - + + + @@ -2223,113 +2223,113 @@ by KATOH Yasufumi 具体的には、全てのパスはホストシステム上のパスであり、そのため、 フックの時点では使用できません。 - - - - - - + + + + + + LXC コンテナの名前。共通のログ環境内でのログメッセージに使うときに便利です。[] - - - + + + - - - - - - - コンテナの設定ファイルのホスト上でのパス。 これは、他の方法では得られない追加の設定情報を見つけるために、コンテナに、元の、トップレベルの設定ファイルの位置を与えるものです。 [] - - - + + + - - - - - - + + + + + + 設定されている場合のコンテナのコンソール出力のパス。 - [] [] - - - + [] [] + + + - - - - - - + + + + + + 設定されている場合のコンテナのコンソールログ出力のパス。 - [] - - - + [] + + + - - - - - - - 初期にコンテナがマウントされる場所。 これは、コンテナインスタンスが起動するためのコンテナの rootfs へのホスト上のパスであり、インスタンスのための移行が行われる場所です。 - [] - - - + [] + + + - - - - - - + + + + + + rootfs.mount へマウントされるコンテナのルートへのホスト上のパスです。 - [] - - - + [] + + + @@ -2353,11 +2353,11 @@ by KATOH Yasufumi - - stop フックの場合のみ使われます。コンテナのシャットダウンの場合は "stop"、リブートの場合は "reboot" が設定されます。 + --> + stop フックの場合のみ使われます。コンテナのシャットダウンの場合は "stop"、リブートの場合は "reboot" が設定されます。 @@ -2408,62 +2408,62 @@ by KATOH Yasufumi 同様に、設定ファイルのエントリは lxc-start のコマンドラインオプションで上書きすることも可能です。 - - - - - - - ログを取得するレベル。 ログレベルは 0..8 の範囲の整数です。 数字が小さいほど冗長なデバッグを意味します。 具体的には、0 = trace, 1 = debug, 2 = info, 3 = notice, 4 = warn, 5 = error, 6 = critical, 7 = alert, and 8 = fatal です。 指定されない場合、レベルのデフォルトは 5 (error) で、それ以上のエラーがロギングされます。 - - + + (フックスクリプトやネットワークインターフェースの起動、停止時のスクリプトのような) スクリプトが呼ばれた時、スクリプトの標準出力は level 1 の debug でロギングされます。 - - - - - - - - - - ログ情報を書き込むファイル。 - - - + + + - - ログ情報を syslog に送ります。ログレベルとして lxc.loglevel の値を使用します。指定する値は使用する syslog の facility です。有効な値は daemon, local0, local1, local2, local3, local4, local5, local5, local6, local7 のいずれかです。 + --> + ログ情報を syslog に送ります。ログレベルとして lxc.loglevel の値を使用します。指定する値は使用する syslog の facility です。有効な値は daemon, local0, local1, local2, local3, local4, local5, local5, local6, local7 のいずれかです。 @@ -2598,14 +2598,14 @@ by KATOH Yasufumi <!-- Container Environment -->コンテナの環境変数 コンテナに環境変数を渡したい場合 (環境変数はコンテナの init とその子孫全てで利用可能です)、lxc.environment パラメータがその用途に使えます。 機微 (センシティブ) な情報を渡さないように注意が必要です。そのような情報を持たないコンテナ内のプロセスでこれらの環境変数が利用可能になってしまいます。環境変数は常に /proc/PID/environ 経由で利用可能になります。 @@ -2620,25 +2620,25 @@ by KATOH Yasufumi - - - - - - + + + + + + コンテナに渡したい環境変数を指定します。 例: - - - lxc.environment = APP_ENV=production - lxc.environment = SYSLOG_SERVER=192.0.2.42 - - - + + + lxc.environment = APP_ENV=production + lxc.environment = SYSLOG_SERVER=192.0.2.42 + + + @@ -2648,8 +2648,8 @@ by KATOH Yasufumi <!-- Examples -->例 以下に紹介するいくつかの例に加えて、他の設定例が @DOCDIR@/examples にあります。 @@ -2658,23 +2658,23 @@ by KATOH Yasufumi この設定は、片方をブリッジである br0 と接続される veth ペアデバイスを使うコンテナを設定します (ブリッジは管理者によりあらかじめシステム上に設定済みである必要があります)。 仮想ネットワークデバイスは、コンテナ内では eth0 とリネームされます。 - lxc.utsname = myhostname - lxc.network.type = veth - lxc.network.flags = up - lxc.network.link = br0 - lxc.network.name = eth0 - lxc.network.hwaddr = 4a:49:43:49:79:bf - lxc.network.ipv4 = 1.2.3.5/24 1.2.3.255 - lxc.network.ipv6 = 2003:db8:1:0:214:1234:fe0b:3597 + lxc.utsname = myhostname + lxc.network.type = veth + lxc.network.flags = up + lxc.network.link = br0 + lxc.network.name = eth0 + lxc.network.hwaddr = 4a:49:43:49:79:bf + lxc.network.ipv4 = 1.2.3.5/24 1.2.3.255 + lxc.network.ipv6 = 2003:db8:1:0:214:1234:fe0b:3597 @@ -2685,8 +2685,8 @@ by KATOH Yasufumi この設定は、コンテナ内のユーザとグループ両方の id 0-9999 の範囲を、ホスト上の 100000-109999 へマッピングします。 - lxc.id_map = u 0 100000 10000 - lxc.id_map = g 0 100000 10000 + lxc.id_map = u 0 100000 10000 + lxc.id_map = g 0 100000 10000 @@ -2703,11 +2703,11 @@ by KATOH Yasufumi devices.allow は、特定のデバイスを使用可能にします。 - lxc.cgroup.cpuset.cpus = 0,1 - lxc.cgroup.cpu.shares = 1234 - lxc.cgroup.devices.deny = a - lxc.cgroup.devices.allow = c 1:3 rw - lxc.cgroup.devices.allow = b 8:0 rw + lxc.cgroup.cpuset.cpus = 0,1 + lxc.cgroup.cpu.shares = 1234 + lxc.cgroup.devices.deny = a + lxc.cgroup.devices.allow = c 1:3 rw + lxc.cgroup.devices.allow = b 8:0 rw @@ -2760,23 +2760,23 @@ by KATOH Yasufumi See Also - chroot - 1 + chroot + 1 , - pivot_root - 8 + pivot_root + 8 , - fstab - 5 + fstab + 5 - capabilities - 7 + capabilities + 7