3.5. devices

devices サブシステムは、cgroup 内のタスクによるデバイスへのアクセスを許可または拒否します。

重要

Red Hat Enterprise Linux 6 では、Device Whitelist (devices) サブシステムはテクノロジープレビュー扱いとなります。
テクノロジープレビュー 機能は、現在、Red Hat Enterprise Linux 6 サブスクリプションサービスではサポートされていません。機能的に完全でない可能性があり、通常は実稼働環境でのご使用には適切ではありませんが、Red Hat はお客様の便宜を図るために、これらの機能をオペレーティングシステムに組み込み、幅広く公開しています。これらの機能は、非実稼働環境で役立てていただくことができます。テクノロジープレビューの機能が完全にサポートされる前に、フィードバックや機能についてのご意見・ご希望をお気軽にお寄せください。
devices.allow
cgroup 内のタスクがアクセスをするデバイスを指定します。エントリは typemajorminor、および access の 4 つのフィールドで構成されます。typemajor、および minor のフィールドに使用される値は、http://www.kernel.org/doc/Documentation/devices.txt に掲載の 『Linux Allocated Devices』 (別名 『Linux Devices List』) で指定されているデバイスタイプ、ノード番号に対応します。
type
type は以下の 3 つの値のいずれか 1 つを取ります。
  • a文字デバイスブロックデバイス の両方を併せた全デバイスに適用します
  • b — ブロックデバイスを指定します
  • c — 文字デバイスを指定します
major, minor
majorminor は、『Linux Allocated Devices』 で指定されているデバイスノード番号です。メジャー(major) とマイナー(minor)番号はコロンで区切られます。たとえば、8 は、SCSI ディスクドライブを指定するメジャー番号であり、マイナー番号 1 は第 1 の SCSI ディスクドライブ上の第 1 のパーティションを指定します。したがって、8:1 は、このパーティションを完全に指定し、/dev/sda1 の ファイルシステムの場所に相当します。
* は、すべてのメジャーまたはマイナーデバイスノードを表します。たとえば、9:* (全 RAID デバイス) または *:* (全デバイス) というように表示します。
access
access は、以下の文字 (単一または複数) からなるシーケンスです。
  • r — タスクによる指定デバイスの読み取りを許可します
  • w — タスクによる指定デバイスへの書き込みを許可します
  • m — タスクによる、まだ存在していないデバイスファイルの作成を許可します
たとえば、accessr と指定されている時は、タスクは指定デバイスから読み取るだけですが、 accessrw と指定されていると、タスクはデバイスからの読み取りとデバイスへの書き込みができます。
devices.deny
cgroup 内のタスクがアクセスできないデバイスを指定します。エントリの構文は devices.allow と全く同じです。
devices.list
この cgroup 内のタスクによるアクセス制御が設定されている対象デバイスをレポートします。