Go to main content

Oracle® Solaris ゾーンの作成と使用

印刷ビューの終了

更新: 2018 年 8 月
 
 

非大域ゾーンでのデバイスの使用

あるゾーンのプロセスが別のゾーンで実行中のプロセスに干渉することがないよう、ゾーン内部で利用可能なデバイスセットには制限が課されています。たとえば、ゾーン内のプロセスが、カーネルメモリーおよびルートディスクの内容を変更することはできません。このため、デフォルトでは、特定の擬似デバイスのみがゾーン内で使用しても安全であるとみなされます。zonecfg ユーティリティーを使用すると、利用可能なデバイスを特定のゾーンに追加できます。

/dev および /devices 名前空間

devfs(4FS) のマニュアルページに記載された devfs ファイルシステムは、Oracle Solaris システムで /devices を管理するために使用されます。この名前空間内の各要素は、ハードウェアデバイス、仮想デバイス、またはネクサスデバイスへの物理パスを表します。名前空間には、デバイスツリーが反映されます。したがって、ファイルシステムは、ディレクトリおよびデバイス特殊ファイルの階層により生成されます。

デバイスは相対 /dev 階層に従ってグループ化されます。たとえば、大域ゾーンの /dev の下のすべてのデバイスは、大域ゾーンのデバイスとしてグループ化されます。非大域ゾーンの場合、デバイスはゾーンのルートパスの下の /dev ディレクトリでグループ化されます。各グループは、/dev ディレクトリの下にマウントされた /dev ファイルシステムのインスタンスです。したがって、大域ゾーンのデバイスは /dev の下にマウントされ、my-zone という非大域ゾーンのデバイスは /my-zone/root/dev の下にマウントされます。

/dev ファイル階層は、dev ファイルシステムによって管理されます。


Caution

注意  -  /devices パス名に依存するサブシステムは、非大域ゾーンで実行できません。/dev パス名を使用するようにサブシステムを更新する必要があります。



Caution

注意  -  非大域ゾーンに /dev/zvol 内のデバイスと一致するデバイスリソースがある場合、非大域ゾーン内で名前空間の競合が発生する可能性があります。詳細は、dev(4FS) のマニュアルページを参照してください。


排他使用のデバイス

    デバイスを特定のゾーンに割り当てることが必要な場合があります。特権のないユーザーがブロックデバイスにアクセスできるようにすると、これらのデバイスの使用が許可されて、システムパニックやバスリセットなどの不具合が生じる場合があります。この種の割り当てを行う前に、次の点を考慮してください。

  • SCSI テープデバイスを特定のゾーンに割り当てる前に、sgen(4D) のマニュアルページを参照してください。

  • 物理デバイスを複数のゾーンに配置する場合、ゾーン間に隠れたチャネルが作成される場合があります。大域ゾーンアプリケーションでこの種のデバイスを使用すると、非大域ゾーンによるデータ整合性の損失や、データの破壊が発生する危険があります。

デバイスドライバの管理

非大域ゾーンで、modinfo(8) のマニュアルページに記載された modinfo コマンドを使用すると、ロードされているカーネルモジュールの一覧を確認できます。

    カーネル、デバイス、およびプラットフォームの管理に関係した大半の操作は、非大域ゾーンの内部では機能しません。これは、プラットフォームハードウェア構成を変更すると、ゾーンのセキュリティーモデルに違反するためです。これらの操作には、次のことが含まれます。

  • ドライバの追加および削除

  • カーネルモジュールの明示的な読み込みおよび読み込み解除

  • 動的再構成 (DR) 操作の開始

  • 物理プラットフォームの状態に影響を与える機能の使用

非大域ゾーンで動作しないか、変更されるユーティリティー

ユーティリティーには、非大域ゾーン内で動作できないもの、ゾーン内での使用に合わせて変更できるもの、使用時にセキュリティーを考慮する必要があるものなどがあります。

非大域ゾーンで動作しないユーティリティー

    次のユーティリティーは、通常は使用できないデバイスに依存しているため、ゾーン内では動作しません。

  • add_drv (add_drv(8) のマニュアルページを参照)

  • disks (disks(8) のマニュアルページを参照)

  • prtconf (prtconf(8) のマニュアルページを参照)

  • prtdiag (prtdiag(8) のマニュアルページを参照)

  • rem_drv (rem_drv(8) のマニュアルページを参照)

SPARC: 非大域ゾーンでの使用に合わせて変更されたユーティリティー

eeprom ユーティリティーをゾーン内で使用すると、設定を表示できますが、設定を変更することはできません。詳細は、eeprom(8) および openprom(4D) のマニュアルページを参照してください。

セキュリティーを考慮することにより許可されるユーティリティー

allowed-raw-io が有効にされている場合、次のユーティリティーをゾーンで使用できます。セキュリティーに関する考慮事項を評価する必要があります。デバイスを追加する場合、制限およびセキュリティーの懸念事項については、非大域ゾーンでのデバイスの使用非大域ゾーンでのアプリケーションの実行、および非大域ゾーン内の特権を参照してください。

  • cdrecord (cdrecord(1) のマニュアルページを参照)。

  • cdrw (cdrw(1) のマニュアルページを参照)。

  • rmformat (rmformat(1) のマニュアルページを参照)。