access()
システムコールと
eaccess()
システムコールは、
mode
引数によって示されたアクセス許可について
path
引数で指定されるファイルのアクセス可能性をチェックします。
mode
の値は、チェックされるアクセス許可 (読取り許可については
R_OK
、書込み許可については
W_OK
、実行 / 検索許可については
X_OK)
のビット単位の OR、または存在試験 (
F_OK
) のどちらかです。
さらなる情報は、
intro(2)
の
ファイルアクセスパーミッション
セクションを参照してください。
eaccess()
システムコールは、実効ユーザ ID とグループアクセスリストを用いて
要求を許可します。
一方
access()
システムコールは、実効ユーザ ID の代わりに実ユーザ ID を、
実効グループ ID の代わりに実グループと残りのグループアクセスリストを
用います。
プロセスの実ユーザもしくは実効ユーザに適切な特権があり、
X_OK
について成功を示していても、実際にはファイルの実行許可ビットが
設定されていないことがあります。
同じことが、
R_OK
および
W_OK
にも該当します。