# 管理解説書

## fs setacl

目的

ディレクトリーに ACL を設定します。

構文

    fs setacl -dir <directory>+  -acl <access list entries>+
              [-clear]  [-negative]  [-id]  [-if]  [-help]

    fs sa -d <directory>+  -a <access list entries>+
          [-c]  [-n]  [-id]  [-if]  [-h]

    fs seta -d <directory>+  -a <access list entries>+
            [-c]  [-n]  [-id]  [-if]  [-h]

構文

fs setacl コマンドは、-acl 引き数が指定したアクセス制御リストの項目を、-dir 引き数が指定した各ディレクトリーの ACL に追加します。

-dir 引き数が (AFS/DFS Migration Toolkit Protocol Translator 経由でアクセスした) DFS ファイル・スペースのパス名を指定した場合、それはディレクトリーの他に、ファイルとすることもできます。ただし、ACL にはすでに mask_obj への項目が含まれていなくてはなりません。詳細については、AFS/DFS Migration Toolkit Administration Guide and Reference を参照してください。

-acl 引き数には、ユーザーおよびグループ記入項目のみを指定できます。マシン項目 (IP アドレス) を直接 ACL に配置しないでください。その代わりに、マシン項目をグループ・メンバーに作成し、ACL のグループに配置します。

新規項目を追加する前に既存の ACL を完全に消去するには、-clear フラグを指定します。指定の項目を ACL の `Negative` `rights` セクション (これは指定されたユーザーまたはグループの権利を禁止します) に追加するには、-negative フラグを指定します。

ACL を表示するには、fs listacl コマンドを使用します。ACL を別のディレクトリーにコピーするには、fs copyacl コマンドを使用します。

注意

ACL がすでにユーザーまたはグループにいくつかのアクセス権を許可している場合は、fs setacl コマンドで指定されたアクセス権は、追加されるのではなく、既存のアクセス権を置き換えます。

一般に、負のアクセス権の設定は必要なく、また、推奨されていません。通常、単にユーザーまたはグループを ACL の `Normal` `rights` セクションから省略するだけで十分です。これでアクセスできなくなります。特に、同じ ACL の system:anyuser メンバーに許可されたアクセス権を禁止しても意味がないことに注意してください。ユーザーは unlog コマンドを発行するだけで禁止されたアクセス権を受け取ることができます。

-clear オプションが組み込まれている場合には、各ディレクトリーの所有者ごとに、少なくとも l (検索) アクセス権を含む項目が復元されているかどうかを確認してください。そのアクセス権がなければ、「ドット」(.) および 「ドット・ドット」(..) 省略表現をディレクトリー内から解決することはできません。 (ディレクトリーの所有者は、消去された ACL についても暗黙的に a [管理] アクセス権を持っていますが、これは他のアクセス権を追加するために使用するものだと理解してください)。

オプション

-dir
  各 AFS ディレクトリーまたは DFS ディレクトリーもしくはファイルに名前を付けて、 ACL を設定します。部分的なパス名を指定すると、現行作業ディレクトリーとの相対位置で解釈されます。

  各ディレクトリー (または DFS ファイル) への読み取り / 書き込みパスを指定し、読み取り専用ボリュームを変更しようとして発生する障害を回避します。規則では、読み取り / 書き込みパスは、パス名の 2 番目のレベルのセル名の前にピリオドを入れて示します (たとえば、/afs/.abc.com)。ファイル・スペースを通る読み取り / 書き込みパスおよび読み取り専用パスの概念に関する詳細については、 fs mkmount 参照ページを参照してください。

-acl
  それぞれ対で指定された 1 つ以上の ACL 項目のリストを定義します。
  - 保護データベースにリストされているユーザー名またはグループ名
  - 個々の文字を組み合わせることによって、または 4 つの許容されている省略形のうちの 1 つによって指示された 1 つ以上の ACL アクセス権

  この順序で、スペースで区切ります (したがって、この引き数のすべてのインスタンスは 2 つの部分に分かれています)。受け入れ済みの AFS 省略形および省略語とそれぞれの意味は、次のとおりです。

  a
    (管理): ACL の項目を変更します。

  d
    (削除): ファイルおよびサブディレクトリーをディレクトリーから削除するか、別のディレクトリーに移動します。

  i
    (挿入): ファイルまたはサブディレクトリーをコピー、移動、または作成してディレクトリーに追加します。

  k
    (ロック): ディレクトリーのファイルに、読み取りロックまたは書き込みロックを設定します。

  l
    (検索): ディレクトリーのファイルおよびサブディレクトリーをリストします。ディレクトリーそのものを提示し、fs listacl コマンドを発行してディレクトリーの ACL を調べます。

  r
    (読み取り): ディレクトリーにあるファイルの内容を読み取ります。ディレクトリーにある要素を提示するには、ls -l コマンドを発行します。

  w
    (書き込み): ディレクトリーにあるファイルの内容を変更し、UNIX の chmod コマンドを発行してそのモード・ビットを変更します。

  A, B, C, D, E, F, G, H
    AFS サーバー・プロセスではデフォルトでの意味はありません。これは、アプリケーションがディレクトリーの内容へのアクセスを制御する方法を追加できるように作成されたものです。この文字は、英大文字でなくてはなりません。

  all
    7 つのアクセス権をすべて意味します (rlidwka)。

  none
    アクセス権がありません。ACL からユーザーまたはグループを削除しますが、ACL に残っているグループに属している場合、アクセス権を持っていないことを保証するものではありません。

  read
    r (読み取り) および l (検索) アクセス権と同じです。

  write
    a (管理) 以外のすべてのアクセス権、すなわち、rlidwk と同じです。

  個々の文字を組み合わせた項目と省略語を使用した項目を混合しても受け入れられますが、両方のタイプの表記をユーザーまたはグループおよびアクセス権のそれぞれの対には使用しないでください。

  DFS ACL 項目の正しい形式および許容値を確認するには、AFS/DFS Migration Toolkit Administration Guide and Reference を参照してください。

-clear
  -acl 引き数が指定した項目を追加する前に、各 ACL の既存の項目をすべて削除します。

-negative
  指定の ACL 項目を、各 ACL の `Negative` `rights` セクションに配置します。これは同じ ACL の `Normal` `rights` セクションの項目がアクセス権を許可したとしても、明確にユーザーまたはグループの権利を禁止するものです。

  この引き数は、DFS ファイルまたはディレクトリーではサポートされていません。 DFS は拒否の ACL アクセス権をインプリメントしていないからです。

-id
  各ディレクトリーの初期コンテナー ACL に ACL 項目を配置します。これは、このフラグがサポートされている唯一のファイル・システム・オブジェクトです。

-if
  各ディレクトリーの初期オブジェクト ACL に ACL 項目を配置します。これは、このフラグがサポートされている唯一のファイル・システム・オブジェクトです。

-help
  このコマンドのオンライン・ヘルプを出力します。これ以外の有効なオプションはすべて無視されます。

例

以下の例では、現行作業ディレクトリーの ACL の`Normal rights` セクションに 2 つの項目を追加します。最初の項目は r (読み取り) および l (検索) アクセス権をグループ pat:friends に付与します。もう一方の項目は (write 省略表現を使用して) a (管理) を除くすべてのアクセス権をユーザー smith に与えます。

       % fs setacl -dir . -acl pat:friends rl smith write

       % fs listacl -path .
       Access list for . is
       Normal rights:
          pat:friends rl
          smith rlidwk

次の例では、-clear フラグが指定されています。これは、既存のアクセス権 (fs listacl コマンドで表示されるように) を現行作業ディレクトリーの reports サブディレクトリーから削除し、新規セットに置き換えます。

       % fs listacl -dir reports
       Access list for reports is
       Normal rights:
          system:authuser rl
          pat:friends rlid
          smith rlidwk
          pat rlidwka
       Negative rights:
          terry rl

       % fs setacl -clear -dir reports -acl pat all smith write system:anyuser rl

       % fs listacl -dir reports
       Access list for reports is
       Normal rights:
          system:anyuser rl
          smith rlidwk
          pat rlidwka

次の例では、-dir および -acl スイッチを使用しています。これは ACL を複数のディレクトリー(両方とも現行作業ディレクトリーとその public サブディレクトリー) に設定するためです。

       % fs setacl -dir . public -acl pat:friends rli

       % fs listacl -path . public
       Access list for . is
       Normal rights:
          pat rlidwka
          pat:friends rli
       Access list for public is
       Normal rights:
          pat rlidwka
          pat:friends rli

必要となる特権

発行者は、ディレクトリーの ACL の a (管理) アクセス権が必要です。ディレクトリーの所有者および system:administrators グループのメンバーは、 ACL に表示されていなくても、暗黙的に権限を持っています。

関連情報

fs copyacl

fs listacl

fs mkmount

AFS/DFS Migration Toolkit Administration Guide and Reference

[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]

(C) IBM Corporation 2000. All Rights Reserved