web-dev-qa-db-ja.com

LinuxカーネルでのUTS名前空間の有効化

Linuxカーネルを構成する場合、UTS名前空間を有効にすることの長所と短所は何ですか? UTS名前空間が無効になっている場合、新しいシステムに悪影響がありますか?

UTS名前空間はプロセスごとの名前空間であり、プロセスがリソースごとに異なる名前空間を持つことができます。たとえば、プロセスには、次の名前空間のセットを含めることができます。

  • マウントポイント
  • PID番号
  • ネットワークスタックの状態
  • IPC-プロセス間通信

注:名前空間の使用は、Linuxカーネルのバージョン3.8+までのルートアップにのみ制限されていました

共有解除

コマンドunshareを使用して、親の名前空間と子プロセスの関連付けを解除できます。

$ unshare --help
Usage: unshare [options] <program> [args...]
Run program with some namespaces unshared from parent

  -h, --help        usage information (this)
  -m, --mount       unshare mounts namespace
  -u, --uts         unshare UTS namespace (hostname etc)
  -i, --ipc         unshare System V IPC namespace
  -n, --net         unshare network namespace

For more information see unshare(1).

コンパイラオプション

Uts名前空間をサポートします。これにより、コンテナ、つまりvserverは、uts名前空間を使用して、さまざまなサーバーにさまざまなuts情報を提供できます。わからない場合は、Nと言います。

5
slm

現在、Linuxは6つの異なるタイプの名前空間を実装しています。各名前空間の目的は、特定のグローバルシステムリソースを抽象化でラップし、名前空間内のプロセスに、グローバルリソースの独自の分離されたインスタンスがあるように見せることです。名前空間の全体的な目標の1つは、コンテナの実装をサポートすることです。これは、プロセスのグループに、システム上の唯一のプロセスであるかのような錯覚を与える軽量仮想化(およびその他の目的)用のツールです。

参照--- http://lwn.net/Articles/531114/

2
rahul