doc/documentation/manual-pages/ja/man1/setfacl.1
Sergio Carlavilla Delgado 989d921f5d Migrate doc to Hugo/AsciiDoctor
I'm very pleased to announce the release of
our new website and documentation using
the new toolchain with Hugo and AsciiDoctor.

To get more information about the new toolchain
please read the FreeBSD Documentation Project Primer[1],
Hugo docs[2] and AsciiDoctor docs[3].

Acknowledgment:
Benedict Reuschling <bcr@>
Glen Barber <gjb@>
Hiroki Sato <hrs@>
Li-Wen Hsu <lwhsu@>
Sean Chittenden <seanc@>
The FreeBSD Foundation

[1] https://docs.FreeBSD.org/en/books/fdp-primer/
[2] https://gohugo.io/documentation/
[3] https://docs.asciidoctor.org/home/

Approved by:    doceng, core
2021-01-26 00:31:29 +01:00

282 lines
7.4 KiB
Groff

.\"
.\" Copyright (c) 2001 Chris D. Faulhaber
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\" notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR THE VOICES IN HIS HEAD BE
.\" LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGE.
.\"
.\" %FreeBSD: src/bin/setfacl/setfacl.1,v 1.10 2004/07/02 21:04:19 ru Exp %
.\"
.\" $FreeBSD$
.Dd January 7, 2001
.Dt SETFACL 1
.Os
.Sh 名称
.Nm setfacl
.Nd ACL 情報の設定
.Sh 書式
.Nm
.Op Fl bdhkn
.Op Fl m Ar entries
.Op Fl M Ar file1
.Op Fl x Ar entries
.Op Fl X Ar file1
.Op Ar
.Sh 解説
.Nm
ユーティリティは指定されたファイルに対し、
裁量的なアクセス制御情報を設定します。
.Pp
次のオプションが使用可能です:
.Bl -tag -width indent
.It Fl b
必須の 3 エントリを除き、全 ACL エントリを削除します。
ACL が
.Dq Li mask
エントリを含む場合、最終的な ACL 中の
.Dq Li group
エントリのパーミッションは、現在の ACL における
.Dq Li group
.Dq Li mask
の両方を組み合わせたパーミッションになります。
.It Fl d
アクセス ACL の代りに、ディレクトリのデフォルト ACL に対し、
操作が適用されます。
現時点では、ディレクトリのみがデフォルト ACL を保持可能です。
.It Fl h
操作対象がシンボリックリンクの場合、
リンクを辿るのではなく、シンボリックリンク自身を操作します。
.It Fl k
指定されたファイルのデフォルト ACL エントリを削除します。
指定されたファイルがデフォルト ACL エントリを持たない場合でも、
エラーとはみなされません。
指定されたファイルがデフォルトエントリを持ち得ない場合
(すなわちディレクトリではない場合)、エラーが報告されます。
.It Fl m Ar entries
.Ar entries
で指定される ACL エントリにて、
新規エントリの追加と既存のエントリの修正を行うことにより、
指定されたファイルの ACL エントリを修正します。
.It Fl M Ar file
.Ar file
ファイル中で指定される ACL エントリにて、
新規エントリの追加と既存のエントリの修正を行うことにより、
指定されたファイルの ACL エントリを修正します。
.Ar file
.Fl
の場合、入力は標準入力から得られます。
.It Fl n
ACL mask エントリに関するパーミッションを再計算しません。
.It Fl x Ar entries
指定されたファイルのアクセス ACL またはデフォルト ACL から、
.Ar entries
で指定される ACL エントリを削除します。
.It Fl X Ar file
指定されたファイルのアクセス ACL またはデフォルト ACL から、
.Ar file
ファイル中で指定される ACL エントリを削除します。
.El
.Pp
上述のオプションは、コマンド行で指定された順番に評価されます。
.Sh ACL エントリ
ひとつの ACL エントリには、コロンで区切られた次の 3 個の欄があります。
それらは、ACL タグ、ACL 修飾子、裁量的なアクセスパーミッションであり、
次の意味です:
.Bl -tag -width indent
.It Ar "ACL タグ"
.Dq Li user
または
.Ql u
は、
ファイル所有者または指定されたユーザに許可されたアクセスを指定します。
.Dq Li group
または
.Ql g
は、ファイル所有グループまたは指定されたグループに
許可されたアクセスを指定します。
.Dq Li other
または
.Ql o
は、
いかなる user および group に適合しないプロセスに
許可されたアクセスを指定します。
.Dq Li mask
または
.Ql m
は、ファイル所有者
.Dq Li user
ACL エントリおよび
.Dq Li other
ACL エントリ以外のすべての ACL エントリに対して許可される、
最大アクセスを指定します。
.It Ar "ACL 修飾子"
ACL 修飾子欄は、
ある ACL エントリのユーザまたはグループを記述します。
それは次のうちのどれかひとつです:
UID かユーザ名、GID かグループ名、または空。
.Dq Li user
ACL エントリに対しては、
空の欄はファイル所有者に対して許可されるアクセスを指定します。
.Dq Li group
ACL エントリに対しては、
空の欄はファイル所有グループに対して許可されるアクセスを指定します。
.Dq Li mask
および
.Dq Li other
の ACL エントリは、この欄を使用しません。
.It Ar "アクセスパーミッション"
アクセスパーミッション欄は
アクセスパーミッション欄は、
次の文字のそれぞれを最大ひとつまで保持可能です:
.Ql r ,
.Ql w ,
.Ql x
は、それぞれ、読み取り・書き込み・実行のパーミッションを設定します。
これらの文字を取り除いたり
.Ql -
文字で置き換えることで、アクセス無しを示せます。
.El
.Pp
.Dq Li mask
ACL エントリは、デフォルトの
.Dq Li user ,
.Dq Li group ,
.Dq Li other
ACL エントリ以外では必須です。
.Fl n
オプションが指定されず、
.Dq Li mask
ACL エントリが指定されない場合、
.Nm
ユーティリティは、
最終的な ACL エントリ中のすべての
.Dq Li group
ACL エントリのパーミッションの和からなる
.Dq Li mask
ACL エントリを使用します。
.Pp
ファイルシステムオブジェクトモードに作用するという
伝統的な POSIX インタフェースは、
POSIX.1e の拡張 ACL の登場によってセマンティクスが変更されました。
オブジェクトのアクセス ACL にマスクエントリが存在する場合、
マクスエントリはグループビットの代りに使用されます。
この動作は、
.Xr stat 1
.Xr ls 1
といったプログラムで行われます。
マスクエントリを持つオブジェクトのモードが変更される場合、
グループビットに対する変更は、実際にはマスクエントリに対して適用されます。
これらのセマンティクスは、多くのアプリケーション互換性を提供します。
すなわち、
追加のユーザ・グループエントリに与えられる実効権限は制限され、
ACL の代りにモードを変更しようとするアプリケーションには
保守的な動作に見えます。
この動作は、
.Xr chmod 1
といったプログラムで行われます。
.Pp
.Fl M
または
.Fl X
のオプションを使用してファイルから適用される ACL エントリは、
次の形式です:
前述のように 1 ACL エントリあたり 1 行、
空白は無視、
.Ql #
の後のテキストは無視 (コメント)。
.Pp
ACL エントリが評価されるとき、
アクセスチェックアルゴリズムは次の順番で ACL エントリをチェックします:
ファイル所有者、
.Dq Li user
ACL エントリ、ファイル所有グループ、
.Dq Li group
ACL エントリ、
.Dq Li other
ACL エントリ。
.Pp
コマンド行上で複数の ACL エントリを指定するには、コンマで区切ります。
.Sh 診断
.Ex -std
.Sh 使用例
.Dl setfacl -m u::rwx,g:mail:rw file
.Pp
.Pa file
に対し、
.Pa file
所有者の ACL エントリに
読み取りと書き込みと実行のパーミッションを設定し、
mail グループに読み取りと書き込みのパーミッションを設定します。
.Pp
.Dl setfacl -M file1 file2
.Pp
.Pa file1
中の ACL エントリの設定/更新を
.Pa file2
に適用します。
.Pp
.Dl setfacl -x g:mail:rw file
.Pp
読み書きパーミッションを持つ mail グループの ACL エントリを、
.Pa file
から削除します。
.Pp
.Dl setfacl -bn file
.Pp
必須の 3 個のエントリを除くすべての
.Dq Li access
ACL エントリを、
.Pa file
から削除します。
.Pp
.Dl getfacl file1 | setfacl -b -n -M - file2
.Pp
ACL エントリを、
.Pa file1
から
.Pa file2
へコピーします。
.Sh 関連項目
.Xr getfacl 1 ,
.Xr acl 3 ,
.Xr getextattr 8 ,
.Xr setextattr 8 ,
.Xr acl 9 ,
.Xr extattr 9
.Sh 規格
.Nm
ユーティリティは
.Tn IEEE
Std 1003.2c に従っていることが期待されます。
.Sh 歴史
拡張属性およびアクセス制御リストのサポートは、
.Tn TrustedBSD
Project の一部として開発され、
.Fx 5.0
で導入されました。
.Sh 作者
.Nm
ユーティリティは
.An Chris D. Faulhaber Aq jedgar@fxp.org
が書きました。