JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Oracle Solaris 11.1 の管理: ZFS ファイルシステム     Oracle Solaris 11.1 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

1.  Oracle Solaris ZFS ファイルシステム (概要)

2.  Oracle Solaris ZFS 入門

3.  Oracle Solaris ZFS ストレージプールの管理

4.  ZFS ルートプールのコンポーネントの管理

5.  Oracle Solaris ZFS ファイルシステムの管理

6.  Oracle Solaris ZFS のスナップショットとクローンの操作

7.  ACL および属性を使用した Oracle Solaris ZFS ファイルの保護

Solaris ACL モデル

ACL を設定する構文の説明

ZFS ACL セット

ACL 継承

ACL プロパティー

ZFS ファイルに ACL を設定する

ZFS ファイルの ACL を冗長形式で設定および表示する

ZFS ファイルの ACL 継承を冗長形式で設定する

ZFS ファイルの ACL をコンパクト形式で設定および表示する

特別な属性を ZFS ファイルに適用する

8.  Oracle Solaris ZFS 委任管理

9.  Oracle Solaris ZFS の高度なトピック

10.  Oracle Solaris ZFS のトラブルシューティングとプールの回復

11.  スナップショットのアーカイブとルートプールの回復

12.  推奨の Oracle Solaris ZFS プラクティス

A.  Oracle Solaris ZFS バージョンの説明

索引

ZFS ファイルに ACL を設定する

ZFS と一緒に実装される ACL は、ACL エントリの配列で構成されます。ZFS の ACL モデルは「純粋」です。つまり、すべてのファイルに ACL が含まれます。この ACL は、従来の UNIX の owner/group/other エントリを表現しているだけという点で、全体的に見れば簡易な ACLです。

ZFS ファイルにもアクセス権ビットとモードが含まれます。ただし、より正確に表現すれば、これらの値は ACL が表現するアクセス権のキャッシュです。つまり、ファイルのアクセス権を変更した場合には、それに応じてファイルの ACL が更新されます。また、ファイルまたはディレクトリへのアクセスをユーザーに許可するための非簡易 ACL を削除しても、グループまたは全員にアクセスを許可するファイルまたはディレクトリのアクセス権ビットが設定されている場合には、そのユーザーはそのファイルまたはディレクトリに引き続きアクセスできます。アクセス制御に関するすべての決定は、ファイルまたはディレクトリの ACL に表現されているアクセス権によって制御されます。

ZFS ファイルの ACL アクセス権に関する主な規則は、次のとおりです。

ディレクトリに非簡易 ACL を設定しても、その ACL はそのディレクトリの子に自動的に継承されることはありません。非簡易 ACL を設定し、それがそのディレクトリの子に継承されるようにする場合は、ACL 継承フラグを使用する必要があります。詳細については、表 7-4 および 「ZFS ファイルの ACL 継承を冗長形式で設定する」を参照してください。

新しいファイルを作成すると、umask の値に応じて、次のようなデフォルトの簡易 ACL が適用されます。

$ ls -v file.1
-rw-r--r--   1 root     root      206663 Jun 23 15:06 file.1
     0:owner@:read_data/write_data/append_data/read_xattr/write_xattr
         /read_attributes/write_attributes/read_acl/write_acl/write_owner
         /synchronize:allow
     1:group@:read_data/read_xattr/read_attributes/read_acl/synchronize:allow
     2:everyone@:read_data/read_xattr/read_attributes/read_acl/synchronize
         :allow

この例では、ユーザーカテゴリ (owner@group@everyone@) ごとに ACL エントリが存在します。

このファイル ACL について説明します。

0:owner@

この所有者は、このファイルの内容を読み取って変更することができます (read_data/write_data/append_data/read_xattr)。この所有者は、タイムスタンプ、拡張属性、ACL などのファイル属性を変更することもできます (write_xattr/read_attributes/write_attributes/read_acl/write_acl)。さらに、この所有者はファイルの所有権を変更できます (write_owner:allow)。

synchronize の許可アクセス権は、現在のところ実装されていません。

1:group@

グループには、ファイルおよびファイルの属性への読み取りアクセス権が付与されます (read_data/read_xattr/read_attributes/read_acl:allow)。

2:everyone@

ユーザーまたはグループ以外の全員には、ファイルおよびファイルの属性を読み取るアクセス権が付与されます (read_data/read_xattr/read_attributes/read_acl/synchronize:allow)。synchronize の許可アクセス権は、現在のところ実装されていません。

新しいディレクトリを作成すると、umask の値に応じて、デフォルトのディレクトリ ACL は次のようになります。

$ ls -dv dir.1
drwxr-xr-x   2 root     root           2 Jul 20 13:44 dir.1
     0:owner@:list_directory/read_data/add_file/write_data/add_subdirectory
         /append_data/read_xattr/write_xattr/execute/delete_child
         /read_attributes/write_attributes/read_acl/write_acl/write_owner
         /synchronize:allow
     1:group@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow
     2:everyone@:list_directory/read_data/read_xattr/execute/read_attributes
         /read_acl/synchronize:allow

このディレクトリ ACL について説明します。

0:owner@

この所有者は、ディレクトリの内容を読み取って変更すること (list_directory/read_data/add_file/write_data/add_subdirectory/append_data)、およびタイムスタンプ、拡張属性、ACL などのファイル属性を読み取って変更すること (/read_xattr/write_xattr/read_attributes/write_attributes/read_acl/write_acl ) ができます。さらに、所有者は、内容を検索すること (execute)、ファイルまたはディレクトリを削除すること (delete_child)、およびディレクトリの所有権を変更すること (write_owner:allow) ができます。

synchronize の許可アクセス権は、現在のところ実装されていません。

1:group@

グループは、ディレクトリ内容とディレクトリの属性を表示して読み取ることができます。またこのグループは、ディレクトリ内容を検索する実行権を持ちます (list_directory/read_data/read_xattr/execute/read_attributes/read_acl/synchronize:allow)。

2:everyone@

ユーザーまたはグループ以外の全員に、ディレクトリの内容および属性を読み取って実行するアクセス権が付与されます (list_directory/read_data/read_xattr/execute/read_attributes/read_acl/synchronize:allow)。synchronize の許可アクセス権は、現在のところ実装されていません。